diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt index 48e13d795e..ec4732c05a 100644 --- a/runtime/doc/motion.txt +++ b/runtime/doc/motion.txt @@ -86,6 +86,13 @@ command. There are however, two general exceptions: end of the motion is moved to the end of the previous line and the motion becomes inclusive. Example: "}" moves to the first line after a paragraph, but "d}" will not include that line. + + *inclusive-motion-selection-exclusive* +When 'selection' is "exclusive", |Visual| mode is active and an inclusive +motion has been used, the cursor position will be adjusted by another +character to the right, so that visual selction includes the expected text and +can be acted upon. + *exclusive-linewise* 2. If the motion is exclusive, the end of the motion is in column 1 and the start of the motion was at or before the first non-blank in the line, the diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 6fe208f506..84f0bfe141 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -4982,6 +4982,8 @@ A jump table for the options with a short description can be found at |Q_op|. selection. When "old" is used and 'virtualedit' allows the cursor to move past the end of line the line break still isn't included. + When "exclusive" is used, cursor position in visual mode will be + adjusted for inclusive motions |inclusive-motion-selection-exclusive|. Note that when "exclusive" is used and selecting from the end backwards, you cannot include the last character of a line, when starting in Normal mode and 'virtualedit' empty. diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt index 24aa7b1b11..a6e5984c82 100644 --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -985,6 +985,8 @@ CTRL-W g } *CTRL-W_g}* position isn't changed. Useful example: > :pedit +/fputc /usr/include/stdio.h < + Also see |++opt| and |+cmd|. + *:ps* *:psearch* :[range]ps[earch][!] [count] [/]pattern[/] Works like |:ijump| but shows the found match in the preview diff --git a/runtime/lua/vim/_meta/options.lua b/runtime/lua/vim/_meta/options.lua index fecbece655..63bf0df5f6 100644 --- a/runtime/lua/vim/_meta/options.lua +++ b/runtime/lua/vim/_meta/options.lua @@ -5214,6 +5214,8 @@ vim.go.sect = vim.go.sections --- selection. --- When "old" is used and 'virtualedit' allows the cursor to move past --- the end of line the line break still isn't included. +--- When "exclusive" is used, cursor position in visual mode will be +--- adjusted for inclusive motions `inclusive-motion-selection-exclusive`. --- Note that when "exclusive" is used and selecting from the end --- backwards, you cannot include the last character of a line, when --- starting in Normal mode and 'virtualedit' empty. diff --git a/src/nvim/options.lua b/src/nvim/options.lua index de152fb315..6dc32658fe 100644 --- a/src/nvim/options.lua +++ b/src/nvim/options.lua @@ -7011,6 +7011,8 @@ return { selection. When "old" is used and 'virtualedit' allows the cursor to move past the end of line the line break still isn't included. + When "exclusive" is used, cursor position in visual mode will be + adjusted for inclusive motions |inclusive-motion-selection-exclusive|. Note that when "exclusive" is used and selecting from the end backwards, you cannot include the last character of a line, when starting in Normal mode and 'virtualedit' empty.