| Commit message (Collapse) | Author | Age |
... | |
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
|
|
| |
Problem: "P" in Visual mode still changes some registers.
Solution: Make "P" in Visual mode not change any register. (Shougo
Matsushita, closes vim/vim#10349)
https://github.com/vim/vim/commit/509142ab7a9db32114b6d0949722b9133c9c22f2
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add space around arithmetic operators '+' and '-'.
Remove space between back-to-back parentheses, i.e. ')(' vs. ') ('.
Remove space between '((' or '))' of control statements.
Add space between ')' and '{' of control statements.
Remove space between function name and '(' on function declaration.
Collapse empty blocks between '{' and '}'.
Remove newline at the end of the file.
Remove newline between 'enum' and '{'.
Remove newline between '}' and ')' in a function invocation.
Remove newline between '}' and 'while' of 'do' statement.
|
| |
|
|
|
|
|
|
|
|
|
| |
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: A mapping using <LeftDrag> does not start Select mode.
Solution: When checking for starting select mode with the mouse also do this
when there is typeahead. (closes vim/vim#10249)
https://github.com/vim/vim/commit/53ef5731480d8b5aa74137a09b3b164b436ed76b
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Co-authored-by: Elias Alves Moura <eliamoura.alves@gmail.com>
Co-authored-by: venkatesh <shariharanvenkatesh@gmail.com>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Co-authored-by: Vikas Raj <24727447+numToStr@users.noreply.github.com>
Co-authored-by: Steve Vermeulen <sfvermeulen@gmail.com>
Co-authored-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com>
Co-authored-by: rwxd <rwxd@pm.me>
Co-authored-by: casswedson <58050969+casswedson@users.noreply.github.com>
|
|
|
|
|
|
|
|
| |
(#18090)
Problem: Accessing freed memory after WinScrolled autocmd event.
Solution: Check the window pointer is still valid. (closes vim/vim#10156)
Remove the argument from may_trigger_winscrolled().
https://github.com/vim/vim/commit/d58862d18f091d3c14fa3647e724ef7eea1ecefa
|
|
|
|
|
|
|
|
| |
Problem: Plugins cannot track text scrolling.
Solution: Add the WinScrolled event. (closes vim/vim#10102)
https://github.com/vim/vim/commit/0937182d49fa8db50cec42785f22f1031760a0bd
Skip User event in autocmd.txt, not needed unless #10689 is reverted.
|
|
|
|
|
|
|
|
|
| |
Problem: The ModeChanged autocmd event is inefficient.
Solution: Avoid allocating memory. (closes vim/vim#10134) Rename
trigger_modechanged() to may_trigger_modechanged().
https://github.com/vim/vim/commit/2bf52dd065495cbf28e28792f2c2d50d44546d9f
Make v:event readonly for ModeChanged.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Problem: Missing parenthesis may cause unexpected problems.
Solution: Add more parenthesis is macros.
https://github.com/vim/vim/commit/ae6f1d8b14c2f63811ee83ef14e32086fb3e9b83
|
|
|
| |
No longer needed after #17890.
|
|
|
|
|
| |
Building upon #17889, this moves conceal redrawing logic into move.c, so
that concealed line is only redrawn if cursor has moved horizontally.
|
|
|
|
|
|
|
|
|
| |
Problem: Superfluous check if a redraw is needed for 'cursorline'.
Solution: Remove check_redraw_cursorline(). (closes vim/vim#10030, closes vim/vim#10029)
https://github.com/vim/vim/commit/3e559cd88486ffab6b6fb4e0921b4600d137a617
redraw_after_callback() is N/A.
Omits changes that just revert code from patch 8.2.4630.
|
|
|
|
|
|
|
|
| |
Problem: Cursor line not updated when a callback moves the cursor.
Solution: Check if the cursor moved. (closes vim/vim#9970)
https://github.com/vim/vim/commit/e7a74d53754765f22ef8ce71c915bb669d5f7f3f
redraw_after_callback() is N/A. Nvim handles timers on the main loop.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot jump to the last used tabpage.
Solution: Add g<Tab> and tabpagnr('#'). (Yegappan Lakshmanan, closes vim/vim#6661,
neovim #11626)
https://github.com/vim/vim/commit/62a232506d06f6d1b3b7271801c907d6294dfe84
Nvim implemented this feature before Vim, but Vim made some useful changes (e.g:
beeping on failure). Port the changes to closer match Vim (also makes porting
future patches easier).
Also note that because CHECK_CMDWIN was added to goto_tabpage_tp, there is no
need to do the extra work with tabpage_index and goto_tabpage inside
goto_tabpage_lastused to fix cmdwin issues any more (#11692).
Note that while goto_tabpage_tp doesn't check for textlock like goto_tabpage
does, it shouldn't matter as it is already checked for earlier.
Add tags for <C-Tab> to tabpage.txt, and refer to <C-Tab> over CTRL-Tab to be
consistent with other docs like the patch.
Remove mention of "previous tabpage" (it can be confused with the tabpage to the
left, e.g: `:tabprevious`).
Similarly, don't rename old_curtab to last_tab in enter_tabpage (it might be
confused with the right-most tabpage, e.g: `:tablast`).
Cherry-pick Test_tabpage change from v8.2.0634.
https://github.com/vim/vim/commit/92b83ccfda7a1d654ccaaf161a9c8a8e01fbcf76
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* fix(coverity/349942): structurally dead code
* fix(coverity/331396): operands don't affect result
* fix(coverity/331393): operands don't affect result
* fix(coverity/331392): operands don't affect result
* fix(coverity/331384): operands don't affect result
* fix(coverity/331374): operands don't affect result
* fix(coverity/331372): operands don't affect result
* fix(coverity/331371): operands don't affect result
* fix(coverity/331364): operands don't affect result
* fix(coverity/105585): operands don't affect result
|
| |
|
|
|
|
|
|
| |
Problem: Overflow check uses wrong number.
Solution: Divide by ten.
https://github.com/vim/vim/commit/9b0e82f35ed4e98414333e71b71ca56219683d16
|
|
|
|
|
|
|
|
|
| |
Problem: Integer overflow with large line number.
Solution: Check for overflow. (closes vim/vim#9202)
https://github.com/vim/vim/commit/03725c5795ae5b8c14da4a39cd0ce723c6dd4304
Put E1247 in globals.h as E1240 is also there.
Do not make getdigits() abort.
|
|
|
|
|
|
|
|
|
|
| |
Problem: Put in Visual mode cannot be repeated.
Solution: Use "P" to put without yanking the deleted text into the unnamed
register. (Shougo Matsushita, closes vim/vim#9591)
https://github.com/vim/vim/commit/fb55207ed17918c8a2a6cadf5ad9d5fcf686a7ab
Cherry-pick get_y_previous() and set_y_previous() from patch 8.1.1736.
Nvim has removed y_current, so code related to it is N/A.
|
|
|
|
|
|
|
| |
Problem: The "gd" and "gD" commands do not update search stats. (Gary
Johnson)
Solution: Clear search stats.
https://github.com/vim/vim/commit/0c71114aede81a209b7efc126b4bf19f11d58955
|
|\
| |
| | |
vim-patch:8.2.4241: some type casts are redundant
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Some type casts are redundant.
Solution: Remove the type casts. (closes vim/vim#9643)
https://github.com/vim/vim/commit/420fabcd4ffeaf79082a6e43db91e1d363f88f27
This is not a literal port but an equivalent one.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: The EBCDIC support is outdated.
Solution: Remove the EBCDIC support.
https://github.com/vim/vim/commit/424bcae1fb0f69e0aef5e0cf84fd771cf34a0fb7
Also remove a comment in buf_init_chartab() as it is for enc_dbcs only.
Skip test_expr.vim: the check was already removed when patch 7.4.2265
was first ported.
|
|/
|
|
|
|
|
| |
Problem: No proper formatting of a C line comment after a statement.
Solution: Find the start of the line comment, insert the comment leader and
indent the comment properly.
https://github.com/vim/vim/commit/6e371ecb27227ff8fedd8561d0f3880a17576848
|
|
|
|
|
|
|
|
|
| |
typed
Problem: Record buffer wrong if character in Select mode was not typed.
Solution: Only delete the tail from the record buffer if the character was
typed. (closes vim/vim#9650)
https://github.com/vim/vim/commit/fbf4f1ca159028382eaeb3bfc31bb6bb96dbb67a
|
| |
|
|\
| |
| | |
vim-patch:8.2.{3993,4002}: when recording a change in Select mode char appears twice
|
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
|\ \
| | |
| | | |
vim-patch:8.2.4160: cannot change the register used for Select mode d…
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Cannot change the register used for Select mode delete.
Solution: Make CTRL-R set the register to be used when deleting text for
Select mode. (Shougo Matsushita, closes vim/vim#9531)
https://github.com/vim/vim/commit/4ede01f18884961f2e008880b4964e5d61ea5c36
|
|\ \ \
| | | |
| | | | |
vim-patch:8.2.3580: gj does not move properly with a wide character
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
Problem: gj does not move properly with a wide character.
Solution: Move one to the right. (Christian Brabandt, closes vim/vim#8702)
https://github.com/vim/vim/commit/aaec1d4fb12efb82b87ad322e95994de77b1a833
|
|\ \ \
| | | |
| | | | |
vim-patch:8.2.{3227,3280,4094}: global-local 'virtualedit'
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: 'virtualedit' can only be set globally.
Solution: Make 'virtualedit' global-local. (Gary Johnson, closes vim/vim#8638)
https://github.com/vim/vim/commit/53ba05b09075f14227f9be831a22ed16f7cc26b2
I changed some macros to unsigned integer literals to avoid compiler warnings.
|
|\ \ \
| |_|/
|/| | |
vim-patch:8.2.{3494,3611,3613}: two Visual mode crash fixes
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Crash when using CTRL-W f without finding a file name.
Solution: Bail out when the file name length is zero.
https://github.com/vim/vim/commit/615ddd5342b50a6878a907062aa471740bd9a847
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Illegal memory access in utf_head_off.
Solution: Check cursor position when reselecting the Visual area.
(closes vim/vim#8963)
https://github.com/vim/vim/commit/b07626d4afa73dd2af0f03c0d59eed25ee159ef9
Including the XTest_beval -> XTest_block from patch 8.2.3096.
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Possibly dialog code is messages.c could be moved here as well.
misc1.c is now empty, so delete it.
|