| Commit message (Collapse) | Author | Age |
|
|
|
|
|
| |
Problem: Not enough test coverage for the spell file handling.
Solution: Add spell file tests. (Yegappan Lakshmanan, closes vim/vim#6728)
https://github.com/vim/vim/commit/fc2a47ffc425777704b329c9edbe21163bedf63c
|
|
|
|
|
|
|
| |
Problem: Errors in spell file not tested.
Solution: Add test for spell file errors. (Yegappan Lakshmanan,
closes vim/vim#6721)
https://github.com/vim/vim/commit/c0f8823ee4ca629db5446ba0a935f68d4a4fb193
|
| |
|
|
|
|
|
|
|
|
|
| |
value (#19215)
vim-patch:9.0.0031: <mods> of user command does not have correct verbose value
Problem: <mods> of user command does not have correct verbose value.
Solution: Use the value from the command modifier. (closes vim/vim#10651)
https://github.com/vim/vim/commit/9359e8a6d99fe2abfcbb9603339f1740d8870cc6
|
|\
| |
| | |
vim-patch:9.0.{0024,0030}
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Matchfuzzy test depends on path of current directory.
Solution: Use fnamemodify() to remove the path. (Robin Becker,
closes vim/vim#10650)
https://github.com/vim/vim/commit/22e7e867e224596bd758260e4278ce6239c35ba5
|
|/
|
|
|
|
| |
Problem: May access part of typeahead buf that isn't filled.
Solution: Check length of typeahead.
https://github.com/vim/vim/commit/af043e12d9e5869c597de40b9a2517ae97ac72e7
|
|
|
|
|
|
|
|
|
| |
Disable -Wsuggest compile flags by default.
Although the flags are useful to see what the compiler thinks we can
improve on, it adds a lot of noise to the build output. That makes it
harder to spot actual issues that may be flagged.
Closes https://github.com/neovim/neovim/issues/19160
|
|\
| |
| | |
fix(lua): don't leak memory on error
|
| | |
|
|\ \
| | |
| | | |
feat(api): add `unsilent` to command APIs
|
| | | |
|
|/ /
| |
| |
| |
| |
| | |
Problem: Vim9: command modifiers do not work.
Solution: Make most command modifiers work.
https://github.com/vim/vim/commit/02194d2bd54eacd0b7b9a017a3fe1702ecb80971
|
| |
| |
| |
| | |
Previous checks make sure the index is not out of bounds. Therefore jmp
is never NULL.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In the rare case that exit_event is called from process_close_handles,
it stalls waiting for the process to exit (the routine is currently
underway to do just that). This causes `job_spec.lua` to sometimes
stall.
REJECTED IDEAS:
==============================================================
1. Currently `exit_event` is placed on `main_loop.fast_events`. Would the problem
be solved by using `main_loop.events` instead?
- A: Maybe, but it will cause other problems, such as queuing exit_event()
during "Press Enter..." prompt which may result in the event not being
processed, leading to another stall.
2. Can we avoid the timer?
- A: Using a timer is just the easiest way to queue a delayed event without
causing an infinite loop in the queue currently being processed.
3. Can we avoid the new `exit_need_delay` global...
1. by using `process_is_tearing_down` instead?
- A: Can't use `process_is_tearing_down` because its semantics are different.
2. by checking a similar condition as `process_teardown`? https://github.com/neovim/neovim/blob/f50135a32e11c535e1dc3a8e9460c5b4e640ee86/src/nvim/event/process.c#L141-L142
```
if (!process_is_tearing_down || (kl_empty(main_loop.children) && multiqueue_empty(main_loop.events))) {
uv_timer_start(&main_loop.exit_delay_timer, exit_delay_cb, 0, 0);
return;
}
```
- A: Tried but it did not work (other stalls occurred). Maybe
exit_event() is called from a source other than
process_close_handles() and is delayed, the delayed exit_event() will
be executed before main_loop.events is processed, resulting in an
infinite loop.
|
|\ \
| | |
| | | |
refactor: replace char_u
|
|/ /
| |
| |
| | |
Work on https://github.com/neovim/neovim/issues/459
|
| |
| |
| |
| |
| |
| | |
* refactor(fold): update comment formatting
* refactor(fold): use post-increment/decrement
* refactor(fold): reduce scope of local variables
* refactor(fold): use booleans
|
| |
| |
| |
| | |
Update runtime files
https://github.com/vim/vim/commit/0d878b95d8f9ece2fdba81050f5caba224540f9c
|
|\ \
| | |
| | | |
vim-patch:8.2.{0261,0316}: insufficient test coverage
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: ex_getln.c code has insufficient test coverage.
Solution: Add more tests. Fix a problem. (Yegappan Lakshmanan, closes vim/vim#5693)
https://github.com/vim/vim/commit/8d588ccee57390aa01c2395fc599bbe6506ee13a
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Problem: Some code not covered by tests.
Solution: Add test cases. (Yegappan Lakshmanan, closes vim/vim#5645)
https://github.com/vim/vim/commit/f0cee1971f5258ce61f8a4e6a04d35c1e625bb01
Cherry-pick Test_bunload_with_offset() from patch 8.2.0243
|
|\ \
| | |
| | | |
vim-patch:9.0.{0017,0021,0022}: invalid memory access
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Spell test fails.
Solution: Expect new error is given.
https://github.com/vim/vim/commit/95afae6d1760b2efcc4968dbd3784799d24e9fdf
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Invalid memory access when adding word with a control character to
the internal spell word list.
Solution: Disallow adding a word with control characters or a trailing
slash.
https://github.com/vim/vim/commit/5e59ea54c0c37c2f84770f068d95280069828774
|
| |/
| |
| |
| |
| |
| | |
Problem: Accessing memory beyond the end of the line.
Solution: Stop Visual mode when closing a window.
https://github.com/vim/vim/commit/3d51ce18ab1be4f9f6061568a4e7fabf00b21794
|
|/ |
|
|
|
| |
This will ensure less verbose output and faster linting.
|
|
|
|
|
|
|
|
| |
(#19187)
Problem: With EXITFREE defined terminal menus are not cleared.
Solution: Also clear terminal menus. Remove condition that is always true.
(closes vim/vim#10641)
https://github.com/vim/vim/commit/79ae152697ed0dfa578cfac305d05021dec2a6bc
|
|
|
| |
Co-authored-by: marvim <marvim@users.noreply.github.com>
|
|
|
|
|
| |
Problem: Signature files not detected properly.
Solution: Add a function to better detect signature files. (Doug Kearns)
https://github.com/vim/vim/commit/cdbfc6dbab1d63aa56af316d6b13e37939e7f7a8
|
|\
| |
| | |
vim-patch:8.2.0049: command line completion not fully tested
|
| | |
|
|/
|
|
|
|
|
| |
Problem: Command line completion not fully tested.
Solution: Add more test cases. Make help sorting stable. (Dominique Pelle,
closes vim/vim#5402)
https://github.com/vim/vim/commit/297610ba4b110c918ffe60c45eb4a1d6ea2daae5
|
|\
| |
| | |
vim-patch:8.0.{1558,1570,1574,1588},8.1.{0487,0695,1274}: menu features
|
| |
| |
| |
| | |
Add tests both with and without ext_multigrid.
|
| |
| |
| |
| |
| |
| | |
Problem: After :unmenu can still execute the menu with :emenu.
Solution: Do not execute a menu that was disabled for the specified mode.
https://github.com/vim/vim/commit/ce79353ace9e21238f13655089363cd23cbb6b32
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Internal error when using :popup.
Solution: When a menu only exists in Terminal mode give an error. (Naruhiko
Nishino, closes vim/vim#3765)
https://github.com/vim/vim/commit/f42b45d719e03218735b3c2845a74dca9c0efd60
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: No menus specifically for the terminal window.
Solution: Add :tlmenu. (Yee Cheng Chin, closes vim/vim#3439) Add a menu test.
https://github.com/vim/vim/commit/4c5d815256099b50eca2ec5bf8f9aaa67a890211
ADDR_OHTER comes from patch 8.1.1241, which has already been ported.
|
| |
| |
| |
| |
| |
| | |
Problem: Popup menu hangs after typing CTRL-C.
Solution: Make CTRL-C exit the loop. (Ozaki Kiichi, closes vim/vim#2697)
https://github.com/vim/vim/commit/52f18a112a073c39187cd93f26115d1e2bfd29ce
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Show cursor in wrong place when using popup menu. (Wei Zhang)
Solution: Force updating the cursor position. Fix skipping over unused
entries.
https://github.com/vim/vim/commit/987723e084660290270b3c3d943eb13bd828d5da
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Can't use :popup for a menu in the terminal. (Wei Zhang)
Solution: Make :popup work in the terminal. Also fix that entries were
included that don't work in the current state.
https://github.com/vim/vim/commit/29a2c08d792e4458a0af8371f5341394829fce29
|
|/
|
|
|
|
| |
Problem: No right-click menu in a terminal.
Solution: Implement the right click menu for the terminal.
https://github.com/vim/vim/commit/aef8c3da2ba59285b7cfde559ae21cdce6ba6919
|
|
|
|
|
|
|
|
|
|
|
|
| |
Continue of #16251
Fix #18953
Fix #18960
Fix #18958
Fix #18955
Fix #18970
Fix #18983
Fix #18995
Fix #19112
|
|
|
| |
These were not updated in #18895.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
** Refactor
Previously most functions used to "get" a mark returned a position,
changed the line number and sometimes changed even the current buffer.
Now functions return a {x}fmark_T making calling context aware whether
the mark is in another buffer without arcane casting. A new function is
provided for switching to the mark buffer and returning a flag style
Enum to convey what happen in the movement. If the cursor changed, line,
columns, if it changed buffer, etc.
The function to get named mark was split into multiple functions.
- mark_get() -> fmark_T
- mark_get_global() -> xfmark_T
- mark_get_local() -> fmark_T
- mark_get_motion() -> fmark_T
- mark_get_visual() -> fmark_T
Functions that manage the changelist and jumplist were also modified to
return mark types.
- get_jumplist -> fmark_T
- get_changelist -> fmark_T
The refactor is also seen mainly on normal.c, where all the mark
movement has been siphoned through one function nv_gomark, while the
other functions handle getting the mark and setting their movement
flags. To handle whether context marks should be left, etc.
** Mark View
While doing the refactor the concept of a mark view was also
implemented:
The view of a mark currently implemented as the number of lines between
the mark position on creation and the window topline. This allows for
moving not only back to the position of a mark but having the window
look similar to when the mark was defined. This is done by carrying and
extra element in the fmark_T struct, which can be extended later to also
restore horizontal shift.
*** User space features
1. There's a new option, jumpoptions+=view enables the mark view restoring
automatically when using the jumplist, changelist, alternate-file and
mark motions. <C-O> <C-I> g; g, <C-^> '[mark] `[mark]
** Limitations
- The view information is not saved in shada.
- Calls to get_mark should copy the value in the pointer since we are
using pos_to_mark() to wrap and provide a homogeneous interfaces. This
was also a limitation in the previous state of things.
|
|
|
| |
refactor(uncrustify): change config to better align with neovim style
|
|
|
|
|
| |
Problem: Reading beyond the end of the line with put command.
Solution: Adjust the end mark position.
https://github.com/vim/vim/commit/d25f003342aca9889067f2e839963dfeccf1fe05
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The general idea is that add_glob_targets creates a "touch file", a
dummy file that acts as a dependency in order to check which files are
outdated since the last time the target was run.
Remove RunUncrustify.cmake as it's no longer necessary. It was initially
introduced to silence its noisy output. The per-file targets will
suppress the noisy output from uncrustify, except for the very first
run.
Also remove DefCmdTarget.cmake since add_glob_target already
incorporates its functionality.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
- Since c57f6b28d71d #8519, sockets are created in ~/.local/… but XDG
spec says: "XDG_RUNTIME_DIR: Must be on the local filesystem", which
implies that XDG_STATE_DIR is potentially non-local.
- Not easy to inspect Nvim-created temp files (for debugging etc).
Solution:
- Store sockets in stdpath('run') ($XDG_RUNTIME_DIR).
- Establish "/tmp/nvim.user/" as the tempdir root shared by all Nvims.
- Make ok() actually useful.
- Introduce assert_nolog().
closes #3517
closes #17093
|