| Commit message (Collapse) | Author | Age |
... | |
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
vim-patch:8.1.{1184,1379}
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Problem: Filechanged test hangs.
Solution: Do not check 'autoread'.
https://github.com/vim/vim/commit/8239c62067c8d40720560496b25a82662126f2a2
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Problem: Undo file left behind after running test.
Solution: Delete the undo file. (Dominique Pelle, closes vim/vim#4279)
https://github.com/vim/vim/commit/137c14bb4f18198ed38659dcfbdfd749115c7ab5
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
I can't port patch 8.1.0820.
Attempt failed in https://github.com/neovim/neovim/pull/12948.
test_filechanged.vim is required for later patches.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Problem: Solution filter files are not recognized.
Solution: Add pattern *.slnf and use json. (Doug Kearns)
https://github.com/vim/vim/commit/70a120b72b2b48800f881725c58241cd170893f8
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | | |
vim-patch:8.2.{3850,3855}
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Problem: Illegal memory access when displaying a blob.
Solution: Append a NUL at the end. (Yegappan Lakshmanan, closes vim/vim#9372)
https://github.com/vim/vim/commit/bc404bfb32cf2bef34050d2aeae0ea72ccf980cc
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Problem: Illegal memory access when displaying a partial.
Solution: Terminate the string with a NUL. (closes vim/vim#9371)
https://github.com/vim/vim/commit/2de5371a755abd287dab6ff544924715a76d4abe
|
| | | | | | | |
|
| | | | | | | |
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
vim-patch:8.1.0040: warnings from 64-bit compiler
|
| |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Problem: Warnings from 64-bit compiler.
Solution: Add type casts. (Mike Williams)
https://github.com/vim/vim/commit/e31e256ba1769a3a3ed7840d5cc9a01ab058b8bc
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Problem: go.mod files are not recognized.
Solution: Check for the file name. (closes vim/vim#9380)
https://github.com/vim/vim/commit/82b3b4c6cf2973fe767f8e2311482af0bd95267e
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Truncate double-width character at the end of popup menu correctly
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
This is initialized to `col_off`, while in Vim this variable `col` that
is used in the same places is initialized to `pum_col`. This can cause
confusion in patch porting, and it caused Vim patch 8.2.1995 to be
ported incorrectly. (I reverted the incorrect part in the last commit
though.) Rename it to `grid_col` to make it clear that it is different
from Vim's `col` variable.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Nvim already resizes grid to the required width, so there is no need to
truncate the text in pum_redraw(). What's more, truncation is currently
done incorrectly because Vim patch 8.2.1995 was ported incorrectly.
This nearly reverts the truncation part of Vim patch 8.2.1995, but not
the part that reduces unnecessary calls to pum_redraw(). The original PR
https://github.com/vim/vim/pull/7306 didn't explain much about which
part of it actually reduces redraws.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Unlike the code above, this truncates the character in the same grid.
This is mainly for the pum scrollbar in the next commit.
|
| | |_|/ / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The `c = '>';` is useless here, because it is not used later.
`u8c` should also need to be set to '>', and `u8cc` needs to be cleared.
|
|/ / / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Empty string values for these options aren't actually allowed, but
check_opt_strings allows empty string options.
It so happens that 'scl' handles empty string like "auto", but empty 'fdc'
causes glitchiness (win_fdccol_count returns an incorrect value).
Just disallow empty string values for these options completely.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Problem: Cannot highlight the number column for a sign.
Solution: Add the "numhl" argument. (James McCoy, closes vim/vim#9381)
https://github.com/vim/vim/commit/a80aad717464760a5a50ac2201ce35b24a0cf7a5
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
For special options such as 'undolevels' and 'scrolloff', this sets the
local value to the special "unset" value (e.g. -12345 for 'undolevels').
|
| |_|_|_|/
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
xmalloc() always retuns a valid pointer.
Calling os_chdir() with the same directory as the current one doesn't do
anything other than wasting time.
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
chore(): suppress -Wunused-but-set-variable warns
|
| | | | | |
|
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Closes https://github.com/neovim/neovim/issues/16625 https://github.com/neovim/neovim/issues/12923
The first defined CursorMoved autocommand will immediately
fire if the cursor has previously moved upon definition
of the autocommand.
Plugins add dummy autocommands such as:
```lua
autocmd CursorMoved * execute ''
```
to avoid this behavior.
Instead, when defining a new CursorHold autocommand, force
update the last cursor position.
See https://github.com/vim/vim/issues/2053
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
If the LUAC_PRG environment variable is defined, but empty, compilation
would still be attempted but would be malformed. This results in garbage
bytes being included.
Fix this by checking that LUAC_PRG is both defined *and* non-empty.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Dep3patch files are not recognized.
Solution: Recognize dep3patch files by their location and content. (James
McCoy, closes vim/vim#9367)
https://github.com/vim/vim/commit/647ab4cede4dbf412d24748f8e0a64d1cb9239f4
|
| | | | |
|
|\ \ \ \
| |/ / /
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
test(old) fix Test_ex_mode_count_overflow
test(old) change usage of Q to gQ
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
docs(reg_recorded): add links to relevant docs
docs(Recording): update docs to match implementation
docs(Q) update references of Q to be gQ
docs(autocmd) add description about state of reg_record{ing,ed} for RecordingLeave
docs(vim_diff) add Recording{Enter,Leave} to features
docs(index) removed duplicate gQ
docs(options) removed line about gQ erroring in visual mode
Update runtime/doc/vim_diff.txt
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
docs(vim_diff) removed double mention of Q
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
feat(eval): add reg_recorded()
This function is used the get the last recorded register.
style(Recording): rename handler to match suggestions
fix(RecordingLeave): send autocommand earlier
This makes the autocommand fire just before setting reg_recorded to
reg_recording, this way we clearly show that we are actually just before
actually quitting the recording mode.
|
|\ \ \ \
| |/ / /
|/| | | |
vim-patch:8.2.3825: various comments could be improved
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Various comments could be improved.
Solution: Improve the comments.
https://github.com/vim/vim/commit/52797bae1710621926c03a2611c40a692c96fb44
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
The Lua modules that make up vim.lua are embedded as raw source files into the
nvim binary. These sources are loaded by the Lua runtime on startuptime. We can
pre-compile these sources into Lua bytecode before embedding them into the
binary, which minimizes the size of the binary and improves startuptime.
|
|\ \ \
| | | |
| | | | |
fix: add forkpty for SunOS variants
|
| | | |
| | | |
| | | |
| | | |
| | | | |
forkpty is missing on Solaris < 11 and Illumos, provide fallback implementation
for non Solaris 11 users.
|
|\ \ \ \
| | | | |
| | | | | |
fix(screenpos, float): add top and left border adjustment
|
| | | | | |
|
|\ \ \ \ \ |
|
| | | | | | |
|
| | |_|_|/
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* str_utf_start/end both cast the offset into the utf string
to a char_u, a pointer + long is well-defined and the cast is
unnecessary. This previously resulted in issues for offsets greater than
256.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
refresh_scrollback assumes pending scrollback rows exist only if the
terminal window height decreased (or the screen was full).
However, after accumulating scrollback, it's possible in some cases for
the terminal height to increase before refresh_scrollback is called via
invalidation (especially when the terminal buffer isn't initially
displayed in a window before nvim_open_term), which may crash.
As we'll have enough room for some scrollback rows, just append them to
the top of the buffer until it fills the window, then continue with the
previous logic for any remaining scrollback rows if necessary.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Problem: .csx files and .sln files are not recognized.
Solution: Add filetype patterns. (Doug Kearns)
https://github.com/vim/vim/commit/cfabad9bcf45650dee1f1f41ec4047f82a12f323
|
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When filling a quickfix/loclist from a string-typed VimL variable, the
complexity is O(N^2) in the number of lines in the variable.
The problem is caused by using `xstrlcpy(3)` to copy the characters from
the current position up to the next newline into the quickfix/loclist
buffer in a loop.
strlcpy(3) returns the length of `src`, so by necessity it has to
compute `strlen(src)`. This means scanning the full rest of the typval
on every iteration while only copying a small fraction (up to the next
'\n').
This is not a problem whenever the srclen-to-copylen ratio is close to
1, which it usually is. But not in this case. Since we already
calculated exactly how many bytes we want to copy, we should be using
memcpy(3).
This problem is not present in Vim, as it uses `vim_strncpy`, a
`strncpy(3)`-alike, which stops at either `\0` or `n`, whichever comes
first.
The quickfix/loclist window can be filled using a:
1. File (used by commands like :grep/:make/... to source directly
from their errorfile)
2. Buffer (used by :cbuffer and its variants)
3. Typval
a. String (used by :cexpr and its variants)
b. List of strings (used by setqflist(), setloclist(), :cepxr and its
variants)
This commit optimizes case (3a), especially when the typval is a long
string.
The pathological path is triggered by (e.g.) :grep enhancements as found
in https://gist.github.com/romainl/56f0c28ef953ffc157f36cc495947ab3:
function! Grep(...)
return system(join([&grepprg] + a:000), ' '))
endfunction
:cgetexpr Grep('foo')
It would've been better for Neovim to use `systemlist` here, before this
commit.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: i3config files are not recognized.
Solution: Add patterns to match i3config files. (Quentin Hibon,
closes vim/vim#7969)
https://github.com/vim/vim/commit/8176be159859deb9cf6455565bd7b24b3dcf17b9
|
|\ \ \ \
| |_|_|/
|/| | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
vim-patch:8.2.3777: spell file write error not checked
|