| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
| |
Problem: Failure of mapping not checked for.
Solution: Check return value of ins_typebuf(). (closes vim/vim#10299)
https://github.com/vim/vim/commit/12e21e387b5bbc928097abf1c189b7dc665838fc
|
|
|
|
|
|
|
| |
Problem: A key may be simplified to NUL.
Solution: Use K_ZERO instead. Use macros instead of hard coded values.
(closes vim/vim#10290)
https://github.com/vim/vim/commit/17c95d9608370559441bb73941ba6d9a4b6b26bd
|
|
|
|
|
|
| |
Problem: Fix for unmapping simplified key not fully tested.
Solution: Add a test case. (closes vim/vim#10292)
https://github.com/vim/vim/commit/abeb09b2c53054513812d1e56716e2a5abe8f354
|
|
|
|
|
|
| |
Problem: Typo in variable name. (Gabriel Dupras)
Solution: Rename the variable.
https://github.com/vim/vim/commit/87f74106f96737e7b8ceaafe1a131aa718077de6
|
|
|
|
|
|
| |
Problem: Expression is evaluated multiple times.
Solution: Evaluate expression once and store the result. (closes vim/vim#10278)
https://github.com/vim/vim/commit/23d5770ef5e2f5c6d20d123303b81327045e5a1e
|
|
|
|
|
|
| |
Problem: Unmapping simplified keys also deletes other mapping.
Solution: Only unmap a mapping with m_simplified set. (closes vim/vim#10270)
https://github.com/vim/vim/commit/a4e3332650021921068ef12923b4501c5b9918cb
|
|
|
|
|
|
|
|
|
|
| |
Problem: When there is a partially matching map and modifyOtherKeys is
active a full map may not work.
Solution: Only simplify modifiers when there is no matching mapping.
(closes vim/vim#8792)
https://github.com/vim/vim/commit/196c3850dbe95247f7aa1b0000a5cae625a99ef2
Omit test as it sends terminal codes. Use a Lua test instead.
|
|
|
|
|
|
| |
Problem: Check for signed overflow might not work everywhere.
Solution: Limit to 32 bit int. (closes vim/vim#9043, closes vim/vim#9067)
https://github.com/vim/vim/commit/0d5a12ea041c112b06b1aafde38846ae4cff8f4c
|
|
|
|
|
|
|
|
|
| |
Problem: Merging modifier for modifyOtherKeys is done twice.
Solution: Remove the merging done in vgetc().
https://github.com/vim/vim/commit/673fc3e23f09095d17f0095c4323958041b2d0d2
Omit ex_getln.c change as it was removed in patch 8.2.2084, so
no_reduce_keys is still not needed in Nvim.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Mapping with partly modifyOtherKeys code does not work.
Solution: If there is no mapping with a separate modifier include the
modifier in the key and then try mapping again. (closes vim/vim#6200)
https://github.com/vim/vim/commit/975a880a1389e8ce6dea8d66a7c109140b2f94ec
Cherry-pick applicable part of put_string_in_typebuf().
Revert related changes from 10a5825.
Use KEYLEN_PART_KEY for incomplete modifier sequence.
Omit test as it sends terminal codes. Use a Lua test instead.
|
| |
|
|
|
|
|
|
| |
Problem: Can't distinguish <M-a> from accented "a" in the GUI.
Solution: Use another way to make mapping <C-bslash> work. (closes vim/vim#6163)
https://github.com/vim/vim/commit/f4ae6b245a54f11dd967d06b80f30e5abf55fb82
|
|
|
|
|
|
|
|
|
| |
Problem: Dropping modifier when putting a character back in typeahead.
Solution: Add modifier to ins_char_typebuf(). (closes vim/vim#6158)
https://github.com/vim/vim/commit/b42c0d54279b1fdb79652db0c84171e213458809
Vim's test doesn't seem to work properly as the hit-enter prompt seems
to be delayed. Add a Lua screen test.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This marks the following Vim patches as ported:
vim-patch:8.1.2333: with modifyOtherKeys CTRL-^ doesn't work
Problem: With modifyOtherKeys CTRL-^ doesn't work.
Solution: Handle the exception.
https://github.com/vim/vim/commit/828ffd596394f714270a01a55fc3f949a8bd9b35
vim-patch:8.1.2350: other text for CTRL-V in Insert mode with modifyOtherKeys
Problem: Other text for CTRL-V in Insert mode with modifyOtherKeys.
Solution: Convert the Escape sequence back to key as if modifyOtherKeys is
not set, and use CTRL-SHIFT-V to get the Escape sequence itself.
(closes vim/vim#5254)
https://github.com/vim/vim/commit/fc4ea2a72d36de1196a3ce17352e72f8fe90f4bb
vim-patch:8.2.2084: CTRL-V U doesn't work to enter a Unicode character
Problem: CTRL-V U doesn't work to enter a Unicode character when
modifyOtherKeys is effective. (Ken Takata)
Solution: Add a flag to get_literal() for the shift key. (closes vim/vim#7413)
https://github.com/vim/vim/commit/0684e36a7ee0743f2889698fb8e0e14f7acae423
Omit getcmdkeycmd() change as it depends on Vim patch 8.2.2062, which
may introduce a potential breakage.
|
|
|
|
|
|
| |
Problem: Some mappings are listed twice.
Solution: Skip mappings duplicated for modifyOtherKeys. (closes vim/vim#5064)
https://github.com/vim/vim/commit/fafb4b18cd4aa5897537f53003b31bb83d7362df
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot map <C-H> when modifyOtherKeys is enabled.
Solution: Add the <C-H> mapping twice, both with modifier and as 0x08. Use
only the first one when modifyOtherKeys has been detected.
https://github.com/vim/vim/commit/459fd785e4a8d044147a3f83a5fca8748528aa84
Add REPTERM_NO_SPECIAL instead of REPTERM_SPECIAL because the meaning of
"special" is different between Vim and Nvim.
Omit seenModifyOtherKeys as Nvim supports attaching multiple UIs.
Omit tests as they send terminal codes.
Keep the behavior of API functions.
|
|
|
|
| |
This will allow the compilers that support the pure attribute to make
further optimizations.
|
|
|
|
|
|
| |
Problem: When a recording is ended with a mapped key that key is also
recorded.
Solution: Remember the previous last_recorded_len. (closes vim/vim#10122)
https://github.com/vim/vim/commit/81b46a6ccd818609e1ca8cd410e26a58428c30ba
|
|
|
|
|
| |
Problem: With modifyOtherKeys CTRL-^ doesn't work.
Solution: Handle the exception.
https://github.com/vim/vim/commit/828ffd596394f714270a01a55fc3f949a8bd9b35
|
| |
|
|
|
|
| |
vim-patch:8.2.4705
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
vim-patch:8.2.4692: no test for what 8.2.4691 fixes
Problem: No test for what 8.2.4691 fixes.
Solution: Add a test. Use a more generic sotlution. (closes vim/vim#10090)
https://github.com/vim/vim/commit/0f68e6c07aaf62c034a242f183b93c1bb44e7f93
Test cannot be used because it must use test_setmouse(). Use a Lua test.
Reverted patches:
vim-patch:8.2.4691: solution for <Cmd> in a mapping causes trouble
Problem: Solution for <Cmd> in a mapping causes trouble.
Solution: Use another solution: put back CTRL-O after reading the <Cmd>
sequence.
https://github.com/vim/vim/commit/ca9d8d2cb9fc6b9240f2a74ccd36f9d966488294
vim-patch:8.2.4689: using <Cmd> in a mapping does not work for mouse keys
Problem: Using <Cmd> in a mapping does not work for mouse keys in Insert
mode. (Sergey Vlasov)
Solution: When reading the <Cmd> argument do not use the stuff buffer.
(closes vim/vim#10080)
https://github.com/vim/vim/commit/d0fb2d804183c2786578b4c32ba5b92938f93d0e
|
|\
| |
| | |
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
|
| | |
|
| | |
|