| Commit message (Collapse) | Author | Age |
|\
| |
| | |
vim-patch:8.2.{4639,4402}: missing parenthesis may cause unexpected problems
|
| |
| |
| |
| |
| |
| | |
Problem: Missing parenthesis may cause unexpected problems.
Solution: Add more parenthesis is macros.
https://github.com/vim/vim/commit/ae6f1d8b14c2f63811ee83ef14e32086fb3e9b83
|
|/ |
|
|
|
|
|
| |
When using :normal in Ex mode, the editor is no longer in Cmdline mode,
but the exmode_active flag is still set, causing the wrong character to
be spammed in Insert mode, leading to a hang.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Recursive use of getcmdline() still not protected.
Solution: Instead of saving the command buffer when making a call which may
cause recursiveness, save the buffer when actually being called
recursively.
https://github.com/vim/vim/commit/438d176e35c16d56ff3bb7a80300197ce5a30c4f
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Clear ccline earlier in save_cmdline() if ccline is in use so that
ccline.prev_ccline can be assigned.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Prefer to declare variables with correct type instead of explicit casts
wherever possible.
|
|
|
|
|
|
| |
Problem: Using <Plug> with "noremap" does not work.
Solution: Always remap <Plug>. (closes vim/vim#9879, closes vim/vim#9789)
https://github.com/vim/vim/commit/1fc34225acbee5ddca2b9ec3f82b3014d385b7f8
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`:verbose` didn't work properly with lua configs (For example:
options or keymaps are set from lua, just say that they were set
from lua, doesn't say where they were set at.
This fixes that issue. Now `:verbose` will provide filename and line no
when option/keymap is set from lua.
Changes:
- compiles lua/vim/keymap.lua as vim/keymap.lua
- When souring a lua file current_sctx.sc_sid is set to SID_LUA
- Moved finding scripts SID out of `do_source()` to `get_current_script_id()`.
So it can be reused for lua files.
- Added new function `nlua_get_sctx` that extracts current lua scripts
name and line no with debug library. And creates a sctx for it.
NOTE: This function ignores C functions and blacklist which
currently contains only vim/_meta.lua so vim.o/opt wrappers aren't
targeted.
- Added function `nlua_set_sctx` that changes provided sctx to current
lua scripts sctx if a lua file is being executed.
- Added tests in tests/functional/lua/verbose_spec.lua
- add primary support for additional types (:autocmd, :function, :syntax) to lua verbose
Note: These can't yet be directly set from lua but once that's possible
:verbose should work for them hopefully :D
- add :verbose support for nvim_exec & nvim_command within lua
Currently auto commands/commands/functions ... can only be defined
by nvim_exec/nvim_command this adds support for them. Means if those
Are defined within lua with vim.cmd/nvim_exec :verbose will show their
location . Though note it'll show the line no on which nvim_exec call was made.
|
|\
| |
| | |
feat: ignore nore on <Plug> maps
|
| | |
|
|\ \
| |/
|/| |
vim-patch:8.1.2336,8.2.{4338,4401}: mapping cursor and redrawing patches
|
| |
| |
| |
| |
| |
| | |
Problem: Map listing does not clear the rest of the command line.
Solution: Call msg_clear_eos(). (closes vim/vim#5623, closes vim/vim#5962)
https://github.com/vim/vim/commit/d288eaad846f0e07e0141226f97d858dcf96cb78
|
| |
| |
| |
| |
| |
| |
| | |
Problem: An error from an expression mapping messes up the display.
Solution: When the expression results in an empty string return K_IGNORE.
In cmdline mode redraw the command line. (closes vim/vim#9726)
https://github.com/vim/vim/commit/74a0a5b26d0180f3ea89e9495dff6a26f0df23cb
|
| |
| |
| |
| |
| |
| | |
Problem: When an expr mapping moves the cursor it is not restored.
Solution: Position the cursor after an expr mapping. (closes vim/vim#5256)
https://github.com/vim/vim/commit/4ebe0e62d097d68c5312f9c32714fb41a4c947a3
|
|\ \
| |/
|/| |
vim-patch:8.1.{1846,1955},8.2.0156
|
| |
| |
| |
| |
| |
| | |
Problem: Various typos in source files and tests.
Solution: Fix the typos. (Emir Sari, closes vim/vim#5532)
https://github.com/vim/vim/commit/4b96df5a017a04141c4e901b1fc5704a3ca48099
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: MS-Windows: cannot use the mouse in the console with VIMDLL.
Solution: use add_char2buf() instead of fix_input_buffer(). (closes vim/vim#9784,
closes vim/vim#9769)
https://github.com/vim/vim/commit/646bb7247ad6051aca223a2b04b008f682cdb57f
N/A patches for version.c:
vim-patch:8.2.4392: MS-Windows with VIMDLL: Escaping CSI is wrong
Problem: MS-Windows with VIMDLL: Escaping CSI is wrong.
Solution: Put back #ifdef. (Ken Takata, closes vim/vim#9769)
https://github.com/vim/vim/commit/64d95cfc56406858a05032c6a134f1e08fe2ca78
vim-patch:8.2.4394: UTF8 select mode test fails on MS-Windows
Problem: UTF8 select mode test fails on MS-Windows.
Solution: Revert the #ifdef change.
https://github.com/vim/vim/commit/9fdde7992ab4c21517f447ca3d651b9ff4a770e8
|
| | |
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
|
|
| |
Problem: When using feedkeys() abbreviations may be blocked.
Solution: Reset tb_no_abbr_cnt when running out of characters.
(closes vim/vim#9448)
https://github.com/vim/vim/commit/b37a65e4bf08c4eec4fa5b81a5efc3945fca44de
|
|\
| |
| | |
refactor: allocate an empty string as unused orig_rhs for Lua mappings
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Problem: Accessing freed memory.
Solution: Set the bh_curr pointer to NULL.
https://github.com/vim/vim/commit/166788c657f4b1090a31ea37a023b1f2c78790c8
|
| |
| |
| |
| |
| |
| | |
Problem: Invalid check for NULL pointer.
Solution: Remove the check.
https://github.com/vim/vim/commit/37cf413e3e768b76c975e4a7081472d75d649c72
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Crash when recording and using Select mode.
Solution: When deleting the last recorded character check there is something
to delete.
https://github.com/vim/vim/commit/a4bc2dd7cccf5a4a9f78b58b6f35a45d17164323
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: First char typed in Select mode can be wrong.
Solution: Escape special bytes in the input buffer. (closes vim/vim#9469)
https://github.com/vim/vim/commit/6cac77016b1636e04073e8348b7cee02259ef928
The `buf` should already be large enough, but I'll change its size
anyway in case future patches change the meaning of `MB_MAXBYTES` macro.
`fix_input_buffer()` cannot be used here because of the `using_script()`
check, and there is already equivalent code in its place.
|
|/
|
|
|
|
|
|
| |
Problem: When recording a change in Select mode the first typed character
appears twice.
Solution: When putting the character back into typeahead remove it from
recorded characters. (closes vim/vim#9462)
https://github.com/vim/vim/commit/c88e977862ba6477a3b5b28706c45f96069a3073
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Behavioral changes:
1. Added support for lua function in keymaps in
--------------------------------------------
- nvim_set_keymap
Can set lua function as keymap rhs like following:
```lua
vim.api.nvim_{buf_}set_keymap('n', '<leader>lr', '', {callback = vim.lsp.buf.references})
```
Note: lua function can only be set from lua . If api function being
called from viml or over rpc this option isn't available.
- nvim_{buf_}get_keymap
When called from lua, lua function is returned is `callback` key .
But in other cases callback contains number of the function ref.
- :umap, nvim_del_keymap & nvim_buf_del_keymap clears lua keymaps correctly.
- :map commands for displaing rhs .
For lua keymaps rhs is displayed as <Lua function ref_no>
Note: lua keymap cannot be set through viml command / functions.
- mapargs()
When dict is false it returns string in `<Lua function ref_no>`
format (same format as :map commands).
When dict is true it returns ref_no number in `callback` key.
- mapcheck()
returns string in `<Lua function ref_no>` format (same format as :map commands).
2. Added support for keymap description
---------------------------------------
- nvim_{buf_}set_keymap: added `desc` option in opts table .
```lua
vim.api.nvim_set_keymap('n', '<leader>w', '<cmd>w<cr>', {desc='Save current file'})
```
- nvim_{buf_}get_keymap: contains `desc` in returned list.
- commands like `:nmap <leader>w` will show description in a new line below rhs.
- `maparg()` return dict contains `desc`.
|
|
|
|
|
|
|
|
|
| |
* vim-patch:8.2.3914: various spelling mistakes in comments
Problem: Various spelling mistakes in comments.
Solution: Fix the mistakes. (Dominique Pellé, closes vim/vim#9416)
https://github.com/vim/vim/commit/af4a61a85d6e8cacc35324f266934bc463a21673
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
|
|
|
|
|
| |
Problem: Various comments could be improved.
Solution: Improve the comments.
https://github.com/vim/vim/commit/52797bae1710621926c03a2611c40a692c96fb44
|
|
|
|
|
| |
Possibly dialog code is messages.c could be moved here as well.
misc1.c is now empty, so delete it.
|
| |
|
|
|
|
|
|
| |
Problem: Warning for unused variable in tiny version. (Tony Mechelynck)
Solution: Move inside #ifdef. Reformat code.
https://github.com/vim/vim/commit/eda35f7127c6ac51573eda808687f6369c31ee2d
|
|
|
|
|
|
| |
Problem: The vgetorpeek() function is too long.
Solution: Split off the part that handles mappings, with fix.
https://github.com/vim/vim/commit/edd680f3649c47d7ed5818e356e7c47f874f5cf8
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* sp_enum_after_assign = force
* sp_brace_typedef = force
* nl_do_brace = remove
* sp_do_brace_open = force
* sp_brace_close_while = force
* sp_before_semi = remove
* sp_before_semi_for = remove
* sp_before_semi_for_empty = remove
* sp_between_semi_for_empty = remove
* sp_after_semi_for_empty = remove
* sp_before_square = remove
* sp_before_squares = remove
* sp_inside_square = remove
* sp_inside_fparens = remove
* sp_inside_fparen = remove
* sp_inside_tparen = remove
* sp_after_tparen_close = remove
* sp_return_paren = force
* pos_bool = lead
* sp_pp_concat = remove
* sp_pp_stringify = remove
* fixup: disable formatting for the INIT section
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Problem: Argument for message functions is inconsistent.
Solution: Make first argument to msg() "char *".
https://github.com/vim/vim/commit/32526b3c1846025f0e655f41efd4e5428da16b6c
|
|
|
|
|
|
|
|
|
| |
Problem: Giving error messages is not flexible.
Solution: Add semsg(). Change argument from "char_u *" to "char *", also
for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes
vim/vim#3302) Also make emsg() accept a "char *" argument. Get rid of
an enormous number of type casts.
https://github.com/vim/vim/commit/f9e3e09fdc93be9f0d47afbc6c7df1188c2a5a0d
|