diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2018-10-29 17:47:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-29 17:47:27 +0100 |
commit | f5406dfe7772dca82e31f27c042c5718198f0ec8 (patch) | |
tree | 4dd3a3c82b0f4e762d36501f19a652fc6b41ee48 /runtime/doc | |
parent | cf93b5e9f9eea1b08ca8d7cb124265867b2f3bf9 (diff) | |
parent | 6d1827aebc88698b75094029fb0a9e45c1d67632 (diff) | |
download | rneovim-f5406dfe7772dca82e31f27c042c5718198f0ec8.tar.gz rneovim-f5406dfe7772dca82e31f27c042c5718198f0ec8.tar.bz2 rneovim-f5406dfe7772dca82e31f27c042c5718198f0ec8.zip |
Merge #9164 from justinmk/vim-a2a80162deb1
vim-patch: runtime updates
Diffstat (limited to 'runtime/doc')
95 files changed, 734 insertions, 530 deletions
diff --git a/runtime/doc/arabic.txt b/runtime/doc/arabic.txt index 07350083c6..a3d979e519 100644 --- a/runtime/doc/arabic.txt +++ b/runtime/doc/arabic.txt @@ -313,4 +313,4 @@ There is one known minor bug, No other bugs are known to exist. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt index 2f9d8aa7f7..bacd0e7cf1 100644 --- a/runtime/doc/autocmd.txt +++ b/runtime/doc/autocmd.txt @@ -20,7 +20,7 @@ files matching *.c. You can also use autocommands to implement advanced features, such as editing compressed files (see |gzip-example|). The usual place to put autocommands is in your vimrc file. - *E203* *E204* *E143* *E855* *E937* + *E203* *E204* *E143* *E855* *E937* *E952* WARNING: Using autocommands is very powerful, and may lead to unexpected side effects. Be careful not to destroy your text. - It's a good idea to do some testing on an expendable copy of a file first. @@ -44,6 +44,8 @@ effects. Be careful not to destroy your text. Add {cmd} to the list of commands that Vim will execute automatically on {event} for a file matching {pat} |autocmd-patterns|. + Note: A quote character is seen as argument to the + :autocmd and won't start a comment. Vim always adds the {cmd} after existing autocommands, so that the autocommands execute in the order in which they were given. See |autocmd-nested| for [nested]. @@ -79,7 +81,8 @@ will appear twice. To avoid this, define your autocommands in a group, so that you can easily clear them: > augroup vimrc - autocmd! " Remove all vimrc autocommands + " Remove all vimrc autocommands + autocmd! au BufNewFile,BufRead *.html so <sfile>:h/html.vim augroup END @@ -133,6 +136,8 @@ prompt. When one command outputs two messages this can happen anyway. plugins, syntax highlighting, etc. :au[tocmd]! [group] Remove ALL autocommands. + Note: a quote will be seen as argument to the :autocmd + and won't start a comment. Warning: You should normally not do this without a group, it breaks plugins, syntax highlighting, etc. @@ -313,6 +318,7 @@ Name triggered by ~ |TabNew| when creating a new tab page |TabNewEntered| after entering a new tab page |TabClosed| after closing a tab page +|CmdlineChanged| after a change was made to the command-line text |CmdlineEnter| after entering cmdline mode |CmdlineLeave| before leaving cmdline mode |CmdwinEnter| after entering the command-line window @@ -332,6 +338,7 @@ Name triggered by ~ |TextChangedP| after a change was made to the text in Insert mode when popup menu visible +|ColorSchemePre| before loading a color scheme |ColorScheme| after loading a color scheme |RemoteReply| a reply from a server Vim was received @@ -513,6 +520,10 @@ CmdUndefined When a user command is used but it isn't command is defined. An alternative is to always define the user command and have it invoke an autoloaded function. See |autoload|. + *CmdlineChanged* +CmdlineChanged After a change was made to the text in the + command line. Be careful not to mess up + the command line, it may cause Vim to lock up. *CmdlineEnter* CmdlineEnter After moving the cursor to the command line, where the user can type a command or search @@ -559,6 +570,10 @@ ColorScheme After loading a color scheme. |:colorscheme| set, and <amatch> for the new colorscheme name. + *ColorSchemePre* +ColorSchemePre Before loading a color scheme. |:colorscheme| + Useful to setup removing things added by a + color scheme, before another one is loaded. *CompleteDone* CompleteDone After Insert mode completion is done. Either @@ -651,7 +666,10 @@ FileChangedRO Before making the first change to a read-only ExitPre When using `:quit`, `:wq` in a way it makes Vim exit, or using `:qall`, just after |QuitPre|. Can be used to close any - non-essential window. + non-essential window. Exiting may still be + cancelled if there is a modified buffer that + isn't automatically saved, use |VimLeavePre| + for really exiting. *FileChangedShell* FileChangedShell When Vim notices that the modification time of a file has changed since editing started. @@ -936,6 +954,7 @@ SwapExists Detected an existing swap file when starting It is not allowed to change to another buffer, change a buffer name or change directory here. + {only available with the +eval feature} *Syntax* Syntax When the 'syntax' option has been set. The pattern is matched against the syntax name. @@ -996,6 +1015,10 @@ TextChangedP After a change was made to the text in the User Never executed automatically. To be used for autocommands that are only executed with ":doautocmd". + Note that when `:doautocmd User MyEvent` is + used while there are no matching autocommands, + you will get an error. If you don't want + that, define a dummy autocommand yourself. *UserGettingBored* UserGettingBored When the user presses the same key 42 times. Just kidding! :-) @@ -1044,9 +1067,10 @@ WinEnter After entering another window. Not done for If the window is for another buffer, Vim executes the BufEnter autocommands after the WinEnter autocommands. - Note: When using ":split fname" the WinEnter - event is triggered after the split but before - the file "fname" is loaded. + Note: For split and tabpage commands the + WinEnter event is triggered after the split + or tab command but before the file is loaded. + *WinLeave* WinLeave Before leaving a window. If the window to be entered next is for a different buffer, Vim @@ -1356,7 +1380,7 @@ Careful: '[ and '] change when using commands that change the buffer. In commands which expect a file name, you can use "<afile>" for the file name that is being read |:<afile>| (you can also use "%" for the current file name). "<abuf>" can be used for the buffer number of the currently effective -buffer. This also works for buffers that doesn't have a name. But it doesn't +buffer. This also works for buffers that don't have a name. But it doesn't work for files without a buffer (e.g., with ":r file"). *gzip-example* diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt index f3dd0bd6df..ec122d3a13 100644 --- a/runtime/doc/change.txt +++ b/runtime/doc/change.txt @@ -99,7 +99,7 @@ is an error when 'cpoptions' includes the 'E' flag. J Join [count] lines, with a minimum of two lines. Remove the indent and insert up to two spaces (see below). Fails when on the last line of the buffer. - If [count] is too big it is reduce to the number of + If [count] is too big it is reduced to the number of lines available. *v_J* @@ -416,7 +416,7 @@ This depends on the 'nrformats' option: For decimals a leading negative sign is considered for incrementing or decrementing, for binary, octal and hex values, it won't be considered. To -ignore the sign Visually select the number before using CTRL-A or CTRL-X. +ignore the sign Visually select the number before using CTRL-A or CTRL-X. For numbers with leading zeros (including all octal and hexadecimal numbers), Vim preserves the number of characters in the number when possible. CTRL-A on @@ -501,6 +501,7 @@ If the 'shiftround' option is on, the indent is rounded to a multiple of If the 'smartindent' option is on, or 'cindent' is on and 'cinkeys' contains '#' with a zero value, shift right does not affect lines starting with '#' (these are supposed to be C preprocessor lines that must stay in column 1). +This can be changed with the 'cino' option, see |cino-#|. When the 'expandtab' option is off (this is the default) Vim uses <Tab>s as much as possible to make the indent. You can use ">><<" to replace an indent @@ -1371,6 +1372,55 @@ to the name of an external program for Vim to use for text formatting. The 'textwidth' and other options have no effect on formatting by an external program. + *format-formatexpr* +The 'formatexpr' option can be set to a Vim script function that performs +reformatting of the buffer. This should usually happen in an |ftplugin|, +since formatting is highly dependent on the type of file. It makes +sense to use an |autoload| script, so the corresponding script is only loaded +when actually needed and the script should be called <filetype>format.vim. + +For example, the XML filetype plugin distributed with Vim in the $VIMRUNTIME +directory, sets the 'formatexpr' option to: > + + setlocal formatexpr=xmlformat#Format() + +That means, you will find the corresponding script, defining the +xmlformat#Format() function, in the directory: +`$VIMRUNTIME/autoload/xmlformat.vim` + +Here is an example script that removes trailing whitespace from the selected +text. Put it in your autoload directory, e.g. ~/.vim/autoload/format.vim: > + + func! format#Format() + " only reformat on explicit gq command + if mode() != 'n' + " fall back to Vims internal reformatting + return 1 + endif + let lines = getline(v:lnum, v:lnum + v:count - 1) + call map(lines, {key, val -> substitute(val, '\s\+$', '', 'g')}) + call setline('.', lines) + + " do not run internal formatter! + return 0 + endfunc + +You can then enable the formatting by executing: > + setlocal formatexpr=format#Format() + +Note: this function explicitly returns non-zero when called from insert mode +(which basically means, text is inserted beyond the 'textwidth' limit). This +causes Vim to fall back to reformat the text by using the internal formatter. + +However, if the |gq| command is used to reformat the text, the function +will receive the selected lines, trim trailing whitespace from those lines and +put them back in place. If you are going to split single lines into multiple +lines, be careful not to overwrite anything. + +If you want to allow reformatting of text from insert or replace mode, one has +to be very careful, because the function might be called recursively. For +debugging it helps to set the 'debug' option. + *right-justify* There is no command in Vim to right justify text. You can do it with an external command, like "par" (e.g.: "!}par" to format until the end of the @@ -1753,4 +1803,4 @@ The sorting can be interrupted, but if you interrupt it too late in the process you may end up with duplicated lines. This also depends on the system library function used. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt index e72799c65b..d51940c69e 100644 --- a/runtime/doc/cmdline.txt +++ b/runtime/doc/cmdline.txt @@ -378,10 +378,13 @@ CTRL-D List names that match the pattern in front of the cursor. match is inserted. After the last match, the first is used again (wrap around). The behavior can be changed with the 'wildmode' option. + *c_<S-Tab>* +<S-Tab> Like 'wildchar' or <Tab>, but begin with the last match and + then go to the previous match. *c_CTRL-N* CTRL-N After using 'wildchar' which got multiple matches, go to next match. Otherwise recall more recent command-line from history. -<S-Tab> *c_CTRL-P* *c_<S-Tab>* + *c_CTRL-P* CTRL-P After using 'wildchar' which got multiple matches, go to previous match. Otherwise recall older command-line from history. @@ -841,7 +844,8 @@ These modifiers can be given, in this order: directory. :. Reduce file name to be relative to current directory, if possible. File name is unmodified if it is not below the - current directory. + current directory, but on MS-Windows the drive is removed if + it is the current drive. For maximum shortness, use ":~:.". :h Head of the file name (the last component and any separators removed). Cannot be used with :e, :r or :t. @@ -1105,4 +1109,4 @@ The character used for the pattern indicates the type of command-line: @ string for |input()| - text for |:insert| or |:append| - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/debug.txt b/runtime/doc/debug.txt index 422255fa02..441d31c7b9 100644 --- a/runtime/doc/debug.txt +++ b/runtime/doc/debug.txt @@ -170,4 +170,4 @@ Visual C++ 2005 Express Edition can be downloaded for free from: http://msdn.microsoft.com/vstudio/express/visualC/default.aspx ========================================================================= - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt index bd195b78b2..cd81236f32 100644 --- a/runtime/doc/develop.txt +++ b/runtime/doc/develop.txt @@ -265,4 +265,4 @@ External UIs are expected to implement these common features: this event. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/diff.txt b/runtime/doc/diff.txt index 50b53bcd3e..766240dfb0 100644 --- a/runtime/doc/diff.txt +++ b/runtime/doc/diff.txt @@ -372,12 +372,16 @@ Example (this does almost the same as 'diffexpr' being empty): > endif silent execute "!diff -a --binary " . opt . v:fname_in . " " . v:fname_new . \ " > " . v:fname_out + redraw! endfunction The "-a" argument is used to force comparing the files as text, comparing as binaries isn't useful. The "--binary" argument makes the files read in binary mode, so that a CTRL-Z doesn't end the text on DOS. +The `redraw!` command may not be needed, depending on whether executing a +shell command shows something on the display or not. + *E810* *E97* Vim will do a test if the diff output looks alright. If it doesn't, you will get an error message. Possible causes: @@ -429,4 +433,4 @@ evaluating 'patchexpr'. This hopefully avoids that files in the current directory are accidentally patched. Vim will also delete files starting with v:fname_in and ending in ".rej" and ".orig". - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/digraph.txt b/runtime/doc/digraph.txt index d3b03c6ef6..f05c73d737 100644 --- a/runtime/doc/digraph.txt +++ b/runtime/doc/digraph.txt @@ -1484,4 +1484,4 @@ char digraph hex dec official name ~ ſt ft FB05 64261 LATIN SMALL LIGATURE LONG S T st st FB06 64262 LATIN SMALL LIGATURE ST - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt index 5aa09503cd..34fb779fe7 100644 --- a/runtime/doc/editing.txt +++ b/runtime/doc/editing.txt @@ -376,6 +376,15 @@ On Unix and a few other systems you can also use backticks for the file name argument, for example: > :next `find . -name ver\\*.c -print` :view `ls -t *.patch \| head -n1` +Vim will run the command in backticks using the 'shell' and use the standard +output as argument for the given Vim command (error messages from the shell +command will be discarded). +To see what shell command Vim is running, set the 'verbose' option to 4. When +the shell command returns a non-zero exit code, an error message will be +displayed and the Vim command will be aborted. To avoid this make the shell +always return zero like so: > + :next `find . -name ver\\*.c -print \|\| true` + The backslashes before the star are required to prevent the shell from expanding "ver*.c" prior to execution of the find program. The backslash before the shell pipe symbol "|" prevents Vim from parsing it as command @@ -824,8 +833,8 @@ flag is used for the ":substitute" command to avoid an error for files where Note: When the 'write' option is off, you are not able to write any file. *:w* *:write* - *E502* *E503* *E504* *E505* - *E512* *E514* *E667* *E796* + *E502* *E503* *E504* *E505* + *E512* *E514* *E667* *E796* *E949* :w[rite] [++opt] Write the whole buffer to the current file. This is the normal way to save changes to a file. It fails when the 'readonly' option is set or when there is @@ -881,6 +890,9 @@ used, for example, when the write fails and you want to try again later with ":w #". This can be switched off by removing the 'A' flag from the 'cpoptions' option. +Note that the 'fsync' option matters here. If it's set it may make writes +slower (but safer). + *:sav* *:saveas* :sav[eas][!] [++opt] {file} Save the current buffer under the name {file} and set @@ -1542,4 +1554,4 @@ There are three different types of searching: currently work with 'path' items that contain a URL or use the double star with depth limiter (/usr/**2) or upward search (;) notations. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 3f02365dab..20c0ce0876 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -2101,6 +2101,7 @@ gettabvar({nr}, {varname} [, {def}]) gettabwinvar({tabnr}, {winnr}, {name} [, {def}]) any {name} in {winnr} in tab page {tabnr} getwininfo([{winid}]) List list of windows +getwinpos([{timeout}]) List X and Y coord in pixels of the Vim window getwinposx() Number X coord in pixels of GUI Vim window getwinposy() Number Y coord in pixels of GUI Vim window getwinvar({nr}, {varname} [, {def}]) @@ -2194,6 +2195,8 @@ msgpackdump({list}) List dump a list of objects to msgpack msgpackparse({list}) List parse msgpack to a list of objects nextnonblank({lnum}) Number line nr of non-blank line >= {lnum} nr2char({expr}[, {utf8}]) String single char with ASCII/UTF8 value {expr} +option_restore({list}) none restore options saved by option_save() +option_save({list}) List save options values nvim_...({args}...) any call nvim |api| functions or({expr}, {expr}) Number bitwise OR pathshorten({expr}) String shorten directory names in a path @@ -2336,7 +2339,7 @@ tolower({expr}) String the String {expr} switched to lowercase toupper({expr}) String the String {expr} switched to uppercase tr({src}, {fromstr}, {tostr}) String translate chars of {src} in {fromstr} to chars in {tostr} -trim({text}[, {mask}]) String trim characters in {mask} from {text} +trim({text} [, {mask}]) String trim characters in {mask} from {text} trunc({expr}) Float truncate Float {expr} type({name}) Number type of variable {name} undofile({name}) String undo file name for {name} @@ -2611,6 +2614,8 @@ bufexists({expr}) *bufexists()* The result is a Number, which is |TRUE| if a buffer called {expr} exists. If the {expr} argument is a number, buffer numbers are used. + Number zero is the alternate buffer for the current window. + If the {expr} argument is a string it must match a buffer name exactly. The name can be: - Relative to the current directory. @@ -3235,6 +3240,7 @@ executable({expr}) *executable()* 1 exists 0 does not exist -1 not implemented on this system + |exepath()| can be used to get the full path of an executable. execute({command} [, {silent}]) *execute()* Execute {command} and capture its output. @@ -3884,7 +3890,7 @@ getbufinfo([{dict}]) endfor < To get buffer-local options use: > - getbufvar({bufnr}, '&') + getbufvar({bufnr}, '&option_name') < *getbufline()* @@ -4310,6 +4316,7 @@ getqflist([{what}]) *getqflist()* list item is a dictionary with these entries: bufnr number of buffer that has the file name, use bufname() to get the name + module module name lnum line number in the buffer (first line is 1) col column number (first column is 1) vcol |TRUE|: "col" is visual column @@ -4334,51 +4341,63 @@ getqflist([{what}]) *getqflist()* If the optional {what} dictionary argument is supplied, then returns only the items listed in {what} as a dictionary. The following string items are supported in {what}: - context get the context stored with |setqflist()| + changedtick get the total number of changes made + to the list |quickfix-changedtick| + context get the |quickfix-context| efm errorformat to use when parsing "lines". If not present, then the 'errorformat' option value is used. id get information for the quickfix list with |quickfix-ID|; zero means the id for the current list or the list specified by "nr" + idx index of the current entry in the list items quickfix list entries - lines use 'errorformat' to extract items from a list - of lines and return the resulting entries. - Only a |List| type is accepted. The current - quickfix list is not modified. + lines parse a list of lines using 'efm' and return + the resulting entries. Only a |List| type is + accepted. The current quickfix list is not + modified. See |quickfix-parse|. nr get information for this quickfix list; zero means the current quickfix list and "$" means the last quickfix list - title get the list title - winid get the |window-ID| (if opened) + size number of entries in the quickfix list + title get the list title |quickfix-title| + winid get the quickfix |window-ID| all all of the above quickfix properties - Non-string items in {what} are ignored. + Non-string items in {what} are ignored. To get the value of a + particular item, set it to zero. If "nr" is not present then the current quickfix list is used. If both "nr" and a non-zero "id" are specified, then the list specified by "id" is used. - To get the number of lists in the quickfix stack, set 'nr' to - '$' in {what}. The 'nr' value in the returned dictionary + To get the number of lists in the quickfix stack, set "nr" to + "$" in {what}. The "nr" value in the returned dictionary contains the quickfix stack size. - When 'text' is specified, all the other items are ignored. The - returned dictionary contains the entry 'items' with the list - of entries. - In case of error processing {what}, an empty dictionary is - returned. + When "lines" is specified, all the other items except "efm" + are ignored. The returned dictionary contains the entry + "items" with the list of entries. The returned dictionary contains the following entries: - context context information stored with |setqflist()| - id quickfix list ID |quickfix-ID| - items quickfix list entries - nr quickfix list number - title quickfix list title text - winid quickfix |window-ID| (if opened) - - Examples: > + changedtick total number of changes made to the + list |quickfix-changedtick| + context quickfix list context. See |quickfix-context| + If not present, set to "". + id quickfix list ID |quickfix-ID|. If not + present, set to 0. + idx index of the current entry in the list. If not + present, set to 0. + items quickfix list entries. If not present, set to + an empty list. + nr quickfix list number. If not present, set to 0 + size number of entries in the quickfix list. If not + present, set to 0. + title quickfix list title text. If not present, set + to "". + winid quickfix |window-ID|. If not present, set to 0 + + Examples (See also |getqflist-examples|): > :echo getqflist({'all': 1}) :echo getqflist({'nr': 2, 'title': 1}) :echo getqflist({'lines' : ["F1:10:L10"]}) < - getreg([{regname} [, 1 [, {list}]]]) *getreg()* The result is a String, which is the contents of register {regname}. Example: > @@ -4457,6 +4476,9 @@ gettabwinvar({tabnr}, {winnr}, {varname} [, {def}]) *gettabwinvar()* :let list_is_on = gettabwinvar(1, 2, '&list') :echo "myvar = " . gettabwinvar(3, 1, 'myvar') < + To obtain all window-local variables use: > + gettabwinvar({tabnr}, {winnr}, '&') + *getwinposx()* getwinposx() The result is a Number, which is the X coordinate in pixels of the left hand side of the GUI Vim window. The result will be @@ -4482,22 +4504,19 @@ getwininfo([{winid}]) *getwininfo()* Each List item is a Dictionary with the following entries: bufnr number of buffer in the window height window height (excluding winbar) - winbar 1 if the window has a toolbar, 0 - otherwise loclist 1 if showing a location list quickfix 1 if quickfix or location list window tabnr tab page number variables a reference to the dictionary with window-local variables width window width + winbar 1 if the window has a toolbar, 0 + otherwise wincol leftmost screen column of the window winid |window-ID| winnr window number winrow topmost screen column of the window - To obtain all window-local variables use: > - gettabwinvar({tabnr}, {winnr}, '&') - getwinvar({winnr}, {varname} [, {def}]) *getwinvar()* Like |gettabwinvar()| for the current tabpage. Examples: > @@ -5340,7 +5359,8 @@ maparg({name} [, {mode} [, {abbr} [, {dict}]]]) *maparg()* listing. When there is no mapping for {name}, an empty String is - returned. + returned. When the mapping for {name} is empty, then "<Nop>" + is returned. The {name} can have special key names, like in the ":map" command. @@ -5407,9 +5427,10 @@ mapcheck({name} [, {mode} [, {abbr}]]) *mapcheck()* mapping that matches with {name}, while maparg() only finds a mapping for {name} exactly. When there is no mapping that starts with {name}, an empty - String is returned. If there is one, the rhs of that mapping + String is returned. If there is one, the RHS of that mapping is returned. If there are several mappings that start with - {name}, the rhs of one of them is returned. + {name}, the RHS of one of them is returned. This will be + "<Nop>" if the RHS is empty. The mappings local to the current buffer are checked first, then the global mappings. This function can be used to check if a mapping can be added @@ -5565,8 +5586,6 @@ matchaddpos({group}, {pos} [, {priority} [, {id} [, {dict}]]]) < Matches added by |matchaddpos()| are returned by |getmatches()| with an entry "pos1", "pos2", etc., with the value a list like the {pos} item. - These matches cannot be set via |setmatches()|, however they - can still be deleted by |clearmatches()|. matcharg({nr}) *matcharg()* Selects the {nr} match item, as set with a |:match|, @@ -6594,6 +6613,8 @@ searchpair({start}, {middle}, {end} [, {flags} [, {skip} When {skip} is omitted or empty, every match is accepted. When evaluating {skip} causes an error the search is aborted and -1 returned. + {skip} can be a string, a lambda, a funcref or a partial. + Anything else makes the function fail. For {stopline} and {timeout} see |search()|. @@ -6935,7 +6956,7 @@ setqflist({list} [, {action}[, {what}]]) *setqflist()* only the items listed in {what} are set. The first {list} argument is ignored. The following items can be specified in {what}: - context any Vim type can be stored as a context + context quickfix list context. See |quickfix-context| efm errorformat to use when parsing text from "lines". If this is not present, then the 'errorformat' option value is used. @@ -6957,10 +6978,10 @@ setqflist({list} [, {action}[, {what}]]) *setqflist()* list is modified, "id" should be used instead of "nr" to specify the list. - Examples: > + Examples (See also |setqflist-examples|): > :call setqflist([], 'r', {'title': 'My search'}) :call setqflist([], 'r', {'nr': 2, 'title': 'Errors'}) - :call setqflist([], 'a', {'id':myid, 'lines':["F1:10:L10"]}) + :call setqflist([], 'a', {'id':qfid, 'lines':["F1:10:L10"]}) < Returns zero for success, -1 for failure. @@ -8007,7 +8028,7 @@ tr({src}, {fromstr}, {tostr}) *tr()* echo tr("<blob>", "<>", "{}") < returns "{blob}" -trim({text}[, {mask}]) *trim()* +trim({text} [, {mask}]) *trim()* Return {text} as a String where any character in {mask} is removed from the beginning and end of {text}. If {mask} is not given, {mask} is all characters up to 0x20, @@ -8016,12 +8037,12 @@ trim({text}[, {mask}]) *trim()* This code deals with multibyte characters properly. Examples: > - echo trim(" \r\t\t\r RESERVE \t \t\n\x0B\x0B")."_TAIL" + echo trim(" some text ") +< returns "some text" > + echo trim(" \r\t\t\r RESERVE \t\n\x0B\xA0") . "_TAIL" < returns "RESERVE_TAIL" > - echo trim("needrmvRESERVEnnneeedddrrmmmmvv", "ednmrv") -< returns "RESERVE" > - echo trim("rm<blob1><blob2><any_chars>rrmm<blob1><blob2><blob2>", "rm<blob1><blob2>") -< returns "any_chas" + echo trim("rm<Xrm<>X>rrm", "rm<>") +< returns "Xrm<>X" (characters in the middle are not removed) trunc({expr}) *trunc()* Return the largest integral value with magnitude less than or @@ -8545,6 +8566,8 @@ visual Compiled with Visual mode. visualextra Compiled with extra Visual mode commands. |blockwise-operators|. vreplace Compiled with |gR| and |gr| commands. +vtp Compiled for vcon support |+vtp| (check vcon to find + out if it works in the current console)). wildignore Compiled with 'wildignore' option. wildmenu Compiled with 'wildmenu' option. win32 Windows version of Vim (32 or 64 bit). @@ -8769,8 +8792,7 @@ may be larger. It is also possible to define a function without any arguments. You must still supply the () then. -It is allowed to define another function inside a function -body. +It is allowed to define another function inside a function body. *local-variables* Inside a function local variables can be used. These will disappear when the @@ -10691,7 +10713,7 @@ The sandbox is also used for the |:sandbox| command. These items are not allowed in the sandbox: - changing the buffer text - - defining or changing mapping, autocommands, functions, user commands + - defining or changing mapping, autocommands, user commands - setting certain options (see |option-summary|) - setting certain v: variables (see |v:var|) *E794* - executing a shell command @@ -10713,6 +10735,7 @@ location. Insecure in this context are: - sourcing a .nvimrc or .exrc in the current directory - while executing in the sandbox - value coming from a modeline +- executing a function that was defined in the sandbox Note that when in the sandbox and saving an option value and restoring it, the option will still be marked as it was set in the sandbox. diff --git a/runtime/doc/farsi.txt b/runtime/doc/farsi.txt index a824c469b0..c5421137f8 100644 --- a/runtime/doc/farsi.txt +++ b/runtime/doc/farsi.txt @@ -205,4 +205,4 @@ changes made in the current line. For more information about the bugs refer to rileft.txt. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/filetype.txt b/runtime/doc/filetype.txt index 6ac14e4122..55e49efff0 100644 --- a/runtime/doc/filetype.txt +++ b/runtime/doc/filetype.txt @@ -273,6 +273,10 @@ then Vim will load all plugins in these directories and below: Note that the last one is the value of $VIMRUNTIME which has been expanded. +Note that when using a plugin manager or |packages| many directories will be +added to 'runtimepath'. These plugins each require their own directory, don't +put them directly in ~/.vim/plugin. + What if it looks like your plugin is not being loaded? You can find out what happens when Vim starts up by using the |-V| argument: > @@ -570,7 +574,7 @@ By default the following options are set, in accordance with PEP8: > setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8 To disable this behaviour, set the following variable in your vimrc: > - + let g:python_recommended_style = 0 @@ -750,4 +754,23 @@ You can change the default by defining the variable g:tex_flavor to the format Currently no other formats are recognized. - vim:tw=78:ts=8:ft=help:norl: +VIM *ft-vim-plugin* + +The Vim filetype plugin defines mappings to move to the start and end of +functions with [[ and ]]. Move around comments with ]" and [". + +The mappings can be disabled with: > + let g:no_vim_maps = 1 + + +ZIMBU *ft-zimbu-plugin* + +The Zimbu filetype plugin defines mappings to move to the start and end of +functions with [[ and ]]. + +The mappings can be disabled with: > + let g:no_zimbu_maps = 1 +< + + + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/fold.txt b/runtime/doc/fold.txt index c644d63280..b7d92fb229 100644 --- a/runtime/doc/fold.txt +++ b/runtime/doc/fold.txt @@ -595,4 +595,4 @@ used. Otherwise the values from the window where the buffer was edited last are used. ============================================================================== - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/ft_ada.txt b/runtime/doc/ft_ada.txt index c1aa0904c4..771ccc3302 100644 --- a/runtime/doc/ft_ada.txt +++ b/runtime/doc/ft_ada.txt @@ -249,7 +249,7 @@ g:decada.Make_Command string External command used for |g:decada.Make()| (|'makeprg'|). *g:decada.Error_Format* -g:decada.Error_Format| string +g:decada.Error_Format string Error format (|'errorformat'|). ============================================================================== diff --git a/runtime/doc/ft_rust.txt b/runtime/doc/ft_rust.txt index 750ba76afc..ff2e0ca56f 100644 --- a/runtime/doc/ft_rust.txt +++ b/runtime/doc/ft_rust.txt @@ -1,4 +1,6 @@ -*ft_rust.txt* Filetype plugin for Rust +*ft_rust.txt* For Vim version 8.1. Last change: 2017 Nov 02 + +This is documentation for the Rust filetype plugin. ============================================================================== CONTENTS *rust* @@ -234,4 +236,4 @@ It also has a few other mappings: Note: This binding is only available in MacVim. ============================================================================== - vim:tw=78:sw=4:noet:ts=8:ft=help:norl: + vim:tw=78:sw=4:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/ft_sql.txt b/runtime/doc/ft_sql.txt index 29268f5753..324e2e44af 100644 --- a/runtime/doc/ft_sql.txt +++ b/runtime/doc/ft_sql.txt @@ -773,4 +773,4 @@ Setting the filetype back to Perl sets all the usual "perl" related items back as they were. -vim:tw=78:ts=8:ft=help:norl: +vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt index 0c2cc9c865..06609a77e1 100644 --- a/runtime/doc/gui.txt +++ b/runtime/doc/gui.txt @@ -71,7 +71,7 @@ and only the first one that is found is read. :winp[os] Display current position of the top left corner of the GUI vim window in pixels. Does not work in all versions. - Also see |getwinposx()| and |getwinposy()|. + Also see |getwinpos()|, |getwinposx()| and |getwinposy()|. :winp[os] {X} {Y} *E466* Put the GUI vim window at the given {X} and {Y} coordinates. @@ -639,4 +639,4 @@ This creates a popup menu that doesn't exist on the main menu-bar. Note that a menu that starts with ']' will not be displayed. - vim:tw=78:sw=4:ts=8:ft=help:norl: + vim:tw=78:sw=4:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/hebrew.txt b/runtime/doc/hebrew.txt index 642d80adc7..2f4b137bd3 100644 --- a/runtime/doc/hebrew.txt +++ b/runtime/doc/hebrew.txt @@ -134,4 +134,4 @@ The result is that all Hebrew characters are displayed as ~x. To solve this problem, set isprint=@,128-255. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt index 8a83cbc79c..2ae2504b02 100644 --- a/runtime/doc/help.txt +++ b/runtime/doc/help.txt @@ -182,4 +182,4 @@ will try to find help for it. Especially for options in single quotes, e.g. 'hlsearch'. ------------------------------------------------------------------------------ - vim:tw=78:fo=tcq2:isk=!-~,^*,^\|,^\":ts=8:ft=help:norl: + vim:tw=78:fo=tcq2:isk=!-~,^*,^\|,^\":ts=8:noet:ft=help:norl: diff --git a/runtime/doc/helphelp.txt b/runtime/doc/helphelp.txt index adc72d1835..ba6dd02a29 100644 --- a/runtime/doc/helphelp.txt +++ b/runtime/doc/helphelp.txt @@ -364,4 +364,4 @@ highlighting. So do these: You can find the details in $VIMRUNTIME/syntax/help.vim - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/if_cscop.txt b/runtime/doc/if_cscop.txt index 451d525ea8..f05b3bb8ed 100644 --- a/runtime/doc/if_cscop.txt +++ b/runtime/doc/if_cscop.txt @@ -371,4 +371,4 @@ Cscope Home Page (http://cscope.sourceforge.net/): > \:vert scs find a <C-R>=expand("<cword>")<CR><CR> < - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/if_pyth.txt b/runtime/doc/if_pyth.txt index e33f89e771..dfa1d6e212 100644 --- a/runtime/doc/if_pyth.txt +++ b/runtime/doc/if_pyth.txt @@ -705,12 +705,31 @@ Raising SystemExit exception in python isn't endorsed way to quit vim, use: > You can test what Python version is available with: > if has('python') echo 'there is Python 2.x' - elseif has('python3') + endif + if has('python3') echo 'there is Python 3.x' endif Note however, that if Python 2 and 3 are both available, but not loaded, these has() calls will try to load them. +To avoid loading the dynamic library, only check if Vim was compiled with +python support: > + if has('python_compiled') + echo 'compiled with Python 2.x support' + if has('python_dynamic') + echo 'Python 2.x dynamically loaded' + endif + endif + if has('python3_compiled') + echo 'compiled with Python 3.x support' + if has('python3_dynamic') + echo 'Python 3.x dynamically loaded' + endif + endif + +This also tells you whether Python is dynamically loaded, which will fail if +the runtime library cannot be found. + ============================================================================== - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/if_ruby.txt b/runtime/doc/if_ruby.txt index d9dbc685d7..3c7c800fbf 100644 --- a/runtime/doc/if_ruby.txt +++ b/runtime/doc/if_ruby.txt @@ -180,4 +180,4 @@ $curwin The current window object. $curbuf The current buffer object. ============================================================================== - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt index 7ba5a373dc..e95725920b 100644 --- a/runtime/doc/indent.txt +++ b/runtime/doc/indent.txt @@ -410,10 +410,10 @@ The examples below assume a 'shiftwidth' of 4. *cino-(* (N When in unclosed parentheses, indent N characters from the line with the unclosed parentheses. Add a 'shiftwidth' for every - unclosed parentheses. When N is 0 or the unclosed parentheses - is the first non-white character in its line, line up with the - next non-white character after the unclosed parentheses. - (default 'shiftwidth' * 2). + extra unclosed parentheses. When N is 0 or the unclosed + parentheses is the first non-white character in its line, line + up with the next non-white character after the unclosed + parentheses. (default 'shiftwidth' * 2). cino= cino=(0 > if (c1 && (c2 || if (c1 && (c2 || @@ -424,7 +424,8 @@ The examples below assume a 'shiftwidth' of 4. { { < *cino-u* - uN Same as (N, but for one level deeper. (default 'shiftwidth'). + uN Same as (N, but for one nesting level deeper. + (default 'shiftwidth'). cino= cino=u2 > if (c123456789 if (c123456789 @@ -902,6 +903,25 @@ In PHP braces are not required inside 'case/default' blocks therefore 'case:' and 'default:' are indented at the same level than the 'switch()' to avoid meaningless indentation. You can use the above option to return to the traditional way. +------------- + + *PHP_noArrowMatching* +By default the indent script will indent multi-line chained calls by matching +the position of the '->': > + + $user_name_very_long->name() + ->age() + ->info(); + +You can revert to the classic way of indenting by setting this option to 1: > + :let g:PHP_noArrowMatching = 1 + +You will obtain the following result: > + + $user_name_very_long->name() + ->age() + ->info(); + PYTHON *ft-python-indent* @@ -1132,4 +1152,4 @@ indent for a continuation line, a line that starts with a backslash: > Three times shiftwidth is the default value. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index f4f43aeac2..ed3f9a1776 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -944,7 +944,7 @@ tag command note action in Visual mode ~ |v_i{| i{ same as iB |v_i}| i} same as iB |v_o| o move cursor to other corner of area -|v_r| r 2 delete highlighted area and start insert +|v_r| r 2 replace highlighted area with a character |v_s| s 2 delete highlighted area and start insert |v_u| u 2 make highlighted area lowercase |v_v| v make Visual mode characterwise or stop @@ -1615,4 +1615,4 @@ tag command action ~ |:~| :~ repeat last ":substitute" - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt index ef4e211d16..d42c5082c0 100644 --- a/runtime/doc/insert.txt +++ b/runtime/doc/insert.txt @@ -410,12 +410,12 @@ An example for using CTRL-G U: > inoremap ( ()<C-G>U<Left> This makes it possible to use the cursor keys in Insert mode, without breaking -the undo sequence and therefore using |.| (redo) will work as expected. -Also entering a text like (with the "(" mapping from above): > +the undo sequence and therefore using |.| (redo) will work as expected. +Also entering a text like (with the "(" mapping from above): Lorem ipsum (dolor -will be repeatable by the |.|to the expected +will be repeatable by using |.| to the expected Lorem ipsum (dolor) @@ -1508,15 +1508,15 @@ that begin with the filetype, "php", in this case. For example these syntax groups are included by default with the PHP: phpEnvVar, phpIntVar, phpFunctions. -If you wish non-filetype syntax items to also be included, you can use a -regular expression syntax (added in version 13.0 of autoload\syntaxcomplete.vim) -to add items. Looking at the output from ":syntax list" while editing a PHP file -I can see some of these entries: > +If you wish non-filetype syntax items to also be included, you can use a +regular expression syntax (added in version 13.0 of +autoload/syntaxcomplete.vim) to add items. Looking at the output from +":syntax list" while editing a PHP file I can see some of these entries: > htmlArg,htmlTag,htmlTagName,javaScriptStatement,javaScriptGlobalObjects To pick up any JavaScript and HTML keyword syntax groups while editing a PHP -file, you can use 3 different regexs, one for each language. Or you can -simply restrict the include groups to a particular value, without using +file, you can use 3 different regexs, one for each language. Or you can +simply restrict the include groups to a particular value, without using a regex string: > let g:omni_syntax_group_include_php = 'php\w\+,javaScript\w\+,html\w\+' let g:omni_syntax_group_include_php = 'phpFunctions,phpMethods' @@ -1529,9 +1529,9 @@ highlight. These items will be available within the omni completion list. Some people may find this list unwieldy or are only interested in certain items. There are two ways to prune this list (if necessary). If you find -certain syntax groups you do not wish displayed you can use two different -methods to identify these groups. The first specifically lists the syntax -groups by name. The second uses a regular expression to identify both +certain syntax groups you do not wish displayed you can use two different +methods to identify these groups. The first specifically lists the syntax +groups by name. The second uses a regular expression to identify both syntax groups. Simply add one the following to your vimrc: > let g:omni_syntax_group_exclude_php = 'phpCoreConstant,phpConstant' let g:omni_syntax_group_exclude_php = 'php\w*Constant' @@ -1554,22 +1554,22 @@ vimrc: > For plugin developers, the plugin exposes a public function OmniSyntaxList. This function can be used to request a List of syntax items. When editing a -SQL file (:e syntax.sql) you can use the ":syntax list" command to see the +SQL file (:e syntax.sql) you can use the ":syntax list" command to see the various groups and syntax items. For example: > - syntax list - -Yields data similar to this: > - sqlOperator xxx some prior all like and any escape exists in is not - or intersect minus between distinct - links to Operator - sqlType xxx varbit varchar nvarchar bigint int uniqueidentifier - date money long tinyint unsigned xml text smalldate - double datetime nchar smallint numeric time bit char - varbinary binary smallmoney - image float integer timestamp real decimal + syntax list + +Yields data similar to this: + sqlOperator xxx some prior all like and any escape exists in is not ~ + or intersect minus between distinct ~ + links to Operator ~ + sqlType xxx varbit varchar nvarchar bigint int uniqueidentifier ~ + date money long tinyint unsigned xml text smalldate ~ + double datetime nchar smallint numeric time bit char ~ + varbinary binary smallmoney ~ + image float integer timestamp real decimal ~ There are two syntax groups listed here: sqlOperator and sqlType. To retrieve -a List of syntax items you can call OmniSyntaxList a number of different +a List of syntax items you can call OmniSyntaxList a number of different ways. To retrieve all syntax items regardless of syntax group: > echo OmniSyntaxList( [] ) @@ -1586,7 +1586,6 @@ From within a plugin, you would typically assign the output to a List: > let myKeywords = [] let myKeywords = OmniSyntaxList( ['sqlKeyword'] ) - SQL *ft-sql-omni* @@ -1973,4 +1972,4 @@ self explanatory. Using the long or the short version depends on the [READ ERRORS] not all of the file could be read - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt index 443cce98e1..bf2e86ae46 100644 --- a/runtime/doc/intro.txt +++ b/runtime/doc/intro.txt @@ -559,9 +559,9 @@ Virtual Replace mode Virtual Replace mode is similar to Replace mode, but If the 'showmode' option is on "-- VREPLACE --" is shown at the bottom of the window. -Insert Normal mode Entered when CTRL-O given in Insert mode. This is - like Normal mode, but after executing one command Vim - returns to Insert mode. +Insert Normal mode Entered when CTRL-O is typed in Insert mode (see + |i_CTRL-O|). This is like Normal mode, but after + executing one command Vim returns to Insert mode. If the 'showmode' option is on "-- (insert) --" is shown at the bottom of the window. @@ -838,4 +838,4 @@ buffer lines logical lines window lines screen lines ~ 6. ~ ============================================================================== - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt index 836ac890be..0898dd98b9 100644 --- a/runtime/doc/map.txt +++ b/runtime/doc/map.txt @@ -866,7 +866,9 @@ an additional rule: full-id In front of the match is a non-keyword character, or this is where the line or insertion starts. Exception: When the abbreviation is only one character, it is not recognized if there is a non-keyword - character in front of it, other than a space or a tab. + character in front of it, other than a space or a tab. However, for + the command line "'<,'>" (or any other marks) is ignored, as if the + command line starts after it. end-id In front of the match is a keyword character, or a space or a tab, or this is where the line or insertion starts. @@ -1487,4 +1489,4 @@ local to the script and use mappings local to the script. When the user invokes the user command, it will run in the context of the script it was defined in. This matters if |<SID>| is used in a command. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt index d38c4fd019..24d9d01af0 100644 --- a/runtime/doc/mbyte.txt +++ b/runtime/doc/mbyte.txt @@ -1185,4 +1185,4 @@ Contributions specifically for the multi-byte features by: Taro Muraoka <koron@tka.att.ne.jp> Yasuhiro Matsumoto <mattn@mail.goo.ne.jp> - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt index 96c28009c4..d52905fc36 100644 --- a/runtime/doc/message.txt +++ b/runtime/doc/message.txt @@ -69,7 +69,7 @@ See `:messages` above. LIST OF MESSAGES *E222* *E228* *E232* *E256* *E293* *E298* *E304* *E317* *E318* *E356* *E438* *E439* *E440* *E316* *E320* *E322* - *E323* *E341* *E473* *E570* *E685* > + *E323* *E341* *E473* *E570* *E685* *E950* > Add to read buffer makemap: Illegal mode Cannot create BalloonEval with both message and callback @@ -90,6 +90,7 @@ LIST OF MESSAGES Internal error Internal error: {function} fatal error in cs_manage_matches + Invalid count for del_bytes(): {N} This is an internal error. If you can reproduce it, please send in a bug report. |bugs| @@ -843,4 +844,4 @@ The |g<| command can be used to see the last page of previous command output. This is especially useful if you accidentally typed <Space> at the hit-enter prompt. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/mlang.txt b/runtime/doc/mlang.txt index 8284d38fa4..a19d9fd2f4 100644 --- a/runtime/doc/mlang.txt +++ b/runtime/doc/mlang.txt @@ -203,4 +203,4 @@ a message adapt to language preferences of the user, > :endif < - vim:tw=78:sw=4:ts=8:ft=help:norl: + vim:tw=78:sw=4:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt index 92af525ecf..84867318a4 100644 --- a/runtime/doc/motion.txt +++ b/runtime/doc/motion.txt @@ -986,12 +986,13 @@ These commands are not marks themselves, but jump to a mark: ============================================================================== 8. Jumps *jump-motions* -A "jump" is one of the following commands: "'", "`", "G", "/", "?", "n", -"N", "%", "(", ")", "[[", "]]", "{", "}", ":s", ":tag", "L", "M", "H" and -the commands that start editing a new file. If you make the cursor "jump" -with one of these commands, the position of the cursor before the jump is +A "jump" is a command that normally moves the cursor several lines away. If +you make the cursor "jump" the position of the cursor before the jump is remembered. You can return to that position with the "''" and "``" command, -unless the line containing that position was changed or deleted. +unless the line containing that position was changed or deleted. The +following commands are "jump" commands: "'", "`", "G", "/", "?", "n", "N", +"%", "(", ")", "[[", "]]", "{", "}", ":s", ":tag", "L", "M", "H" and the +commands that start editing a new file. *CTRL-O* CTRL-O Go to [count] Older cursor position in jump list @@ -1117,7 +1118,7 @@ remembered. *:changes* :changes Print the change list. A ">" character indicates the current position. Just after a change it is below the - newest entry, indicating that "g;" takes you to the + newest entry, indicating that `g;` takes you to the newest entry position. The first column indicates the count needed to take you to this position. Example: @@ -1127,8 +1128,8 @@ remembered. 1 14 54 the latest changed line > - The "3g;" command takes you to line 9. Then the - output of ":changes is: + The `3g;` command takes you to line 9. Then the + output of `:changes` is: change line col text ~ > 0 9 8 bla bla bla @@ -1294,4 +1295,4 @@ L To line [count] from bottom of window (default: Last position is in a status line, that window is made the active window and the cursor is not moved. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index bfdc09662e..0076049b94 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -575,8 +575,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'ambiwidth'* *'ambw'* 'ambiwidth' 'ambw' string (default: "single") global - {only available when compiled with the |+multi_byte| - feature} Tells Vim what to do with characters with East Asian Width Class Ambiguous (such as Euro, Registered Sign, Copyright Sign, Greek letters, Cyrillic letters). @@ -611,8 +609,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'autochdir'* *'acd'* *'noautochdir'* *'noacd'* 'autochdir' 'acd' boolean (default off) global - {only available when compiled with it, use - exists("+autochdir") to check} When on, Vim will change the current working directory whenever you open a file, switch buffers, delete a buffer or open/close a window. It will change to the directory containing the file which was opened @@ -679,7 +675,9 @@ A jump table for the options with a short description can be found at |Q_op|. global or local to buffer |global-local| When a file has been detected to have been changed outside of Vim and it has not been changed inside of Vim, automatically read it again. - When the file has been deleted this is not done. |timestamp| + When the file has been deleted this is not done, so you have the text + from before it was deleted. When it appears again then it is read. + |timestamp| If this option has a local value, use this command to switch back to using the global value: > :set autoread< @@ -909,8 +907,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'backupskip'* *'bsk'* 'backupskip' 'bsk' string (default: "/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*") global - {not available when compiled without the |+wildignore| - feature} A list of file patterns. When one of the patterns matches with the name of the file which is written, no backup file is created. Both the specified file name and the full path name of the file are used. @@ -1014,8 +1010,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'bomb'* *'nobomb'* 'bomb' boolean (default off) local to buffer - {only available when compiled with the |+multi_byte| - feature} When writing a file and the following conditions are met, a BOM (Byte Order Mark) is prepended to the file: - this option is on @@ -1035,16 +1029,12 @@ A jump table for the options with a short description can be found at |Q_op|. *'breakat'* *'brk'* 'breakat' 'brk' string (default " ^I!@*-+;:,./?") global - {not available when compiled without the |+linebreak| - feature} This option lets you choose which characters might cause a line break if 'linebreak' is on. Only works for ASCII characters. *'breakindent'* *'bri'* 'breakindent' 'bri' boolean (default off) local to window - {not available when compiled without the |+linebreak| - feature} Every wrapped line will continue visually indented (same amount of space as the beginning of that line), thus preserving horizontal blocks of text. @@ -1052,8 +1042,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'breakindentopt'* *'briopt'* 'breakindentopt' 'briopt' string (default empty) local to window - {not available when compiled without the |+linebreak| - feature} Settings for 'breakindent'. It can consist of the following optional items and must be separated by a comma: min:{n} Minimum text width that will be kept after @@ -1066,14 +1054,13 @@ A jump table for the options with a short description can be found at |Q_op|. characters. It permits dynamic French paragraph indentation (negative) or emphasizing the line continuation (positive). - sbr Display the 'showbreak' value before applying the + sbr Display the 'showbreak' value before applying the additional indent. The default value for min is 20 and shift is 0. *'browsedir'* *'bsdir'* 'browsedir' 'bsdir' string (default: "last") global - {only for Mac and Win32 GUI} Which directory to use for the file browser: last Use same directory as with last file browser, where a file was opened or saved. @@ -1084,8 +1071,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'bufhidden'* *'bh'* 'bufhidden' 'bh' string (default: "") local to buffer - {not available when compiled without the |+quickfix| - feature} This option specifies what happens when a buffer is no longer displayed in a window: <empty> follow the global 'hidden' option @@ -1161,8 +1146,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'casemap'* *'cmp'* 'casemap' 'cmp' string (default: "internal,keepascii") global - {only available when compiled with the |+multi_byte| - feature} Specifies details about changing the case of letters. It may contain these words, separated by a comma: internal Use internal case mapping functions, the current @@ -1176,8 +1159,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'cdpath'* *'cd'* *E344* *E346* 'cdpath' 'cd' string (default: equivalent to $CDPATH or ",,") global - {not available when compiled without the - |+file_in_path| feature} This is a list of directories which will be searched when using the |:cd| and |:lcd| commands, provided that the directory being searched for has a relative path, not an absolute part starting with "/", "./" @@ -1216,8 +1197,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'charconvert'* *'ccv'* *E202* *E214* *E513* 'charconvert' 'ccv' string (default "") global - {only available when compiled with the |+multi_byte| - and |+eval| features} An expression that is used for character encoding conversion. It is evaluated when a file that is to be read or has been written has a different encoding from what is desired. @@ -1335,8 +1314,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'colorcolumn'* *'cc'* 'colorcolumn' 'cc' string (default "") local to window - {not available when compiled without the |+syntax| - feature} 'colorcolumn' is a comma separated list of screen columns that are highlighted with ColorColumn |hl-ColorColumn|. Useful to align text. Will make screen redrawing slower. @@ -1377,8 +1354,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'commentstring'* *'cms'* *E537* 'commentstring' 'cms' string (default "/*%s*/") local to buffer - {not available when compiled without the |+folding| - feature} A template for a comment. The "%s" in the value is replaced with the comment text. Currently only used to add markers for folding, see |fold-marker|. @@ -1421,8 +1396,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'completefunc'* *'cfu'* 'completefunc' 'cfu' string (default: empty) local to buffer - {not available when compiled without the |+eval| - or |+insert_expand| features} This option specifies a function to be used for Insert mode completion with CTRL-X CTRL-U. |i_CTRL-X_CTRL-U| See |complete-functions| for an explanation of how the function is @@ -1433,8 +1406,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'completeopt'* *'cot'* 'completeopt' 'cot' string (default: "menu,preview") global - {not available when compiled without the - |+insert_expand| feature} A comma separated list of options for Insert mode completion |ins-completion|. The supported values are: @@ -1563,10 +1534,10 @@ A jump table for the options with a short description can be found at |Q_op|. See also |map_bar|. *cpo-B* B A backslash has no special meaning in mappings, - abbreviations and the "to" part of the menu commands. - Remove this flag to be able to use a backslash like a - CTRL-V. For example, the command ":map X \<Esc>" - results in X being mapped to: + abbreviations, user commands and the "to" part of the + menu commands. Remove this flag to be able to use a + backslash like a CTRL-V. For example, the command + ":map X \<Esc>" results in X being mapped to: 'B' included: "\^[" (^[ is a real <Esc>) 'B' excluded: "<Esc>" (5 characters) *cpo-c* @@ -1597,7 +1568,7 @@ A jump table for the options with a short description can be found at |Q_op|. *cpo-E* E It is an error when using "y", "d", "c", "g~", "gu" or "gU" on an Empty region. The operators only work when - at least one character is to be operate on. Example: + at least one character is to be operated on. Example: This makes "y0" fail in the first column. *cpo-f* f When included, a ":read" command with a file name @@ -1816,8 +1787,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'cursorcolumn'* *'cuc'* *'nocursorcolumn'* *'nocuc'* 'cursorcolumn' 'cuc' boolean (default off) local to window - {not available when compiled without the |+syntax| - feature} Highlight the screen column of the cursor with CursorColumn |hl-CursorColumn|. Useful to align text. Will make screen redrawing slower. @@ -1830,8 +1799,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'cursorline'* *'cul'* *'nocursorline'* *'nocul'* 'cursorline' 'cul' boolean (default off) local to window - {not available when compiled without the |+syntax| - feature} Highlight the screen line of the cursor with CursorLine |hl-CursorLine|. Useful to easily spot the cursor. Will make screen redrawing slower. @@ -1871,8 +1838,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'delcombine'* *'deco'* *'nodelcombine'* *'nodeco'* 'delcombine' 'deco' boolean (default off) global - {only available when compiled with the |+multi_byte| - feature} If editing Unicode and this option is set, backspace and Normal mode "x" delete each combining character on its own. When it is off (the default) the character along with its combining characters are @@ -1969,8 +1934,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'digraph'* *'dg'* *'nodigraph'* *'nodg'* 'digraph' 'dg' boolean (default off) global - {not available when compiled without the |+digraphs| - feature} Enable the entering of digraphs in Insert mode with {char1} <BS> {char2}. See |digraphs|. @@ -2052,9 +2015,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'emoji'* *'emo'* 'emoji' 'emo' boolean (default: on) global - {not in Vi} - {only available when compiled with the |+multi_byte| - feature} When on all Unicode emoji characters are considered to be full width. @@ -2122,8 +2082,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'errorfile'* *'ef'* 'errorfile' 'ef' string (default: "errors.err") global - {not available when compiled without the |+quickfix| - feature} Name of the errorfile for the QuickFix mode (see |:cf|). When the "-q" command-line argument is used, 'errorfile' is set to the following argument. See |-q|. @@ -2136,8 +2094,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'errorformat'* *'efm'* 'errorformat' 'efm' string (default is very long) global or local to buffer |global-local| - {not available when compiled without the |+quickfix| - feature} Scanf-like description of the format for the lines in the error file (see |errorformat|). @@ -2220,8 +2176,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'fileencodings'* *'fencs'* 'fileencodings' 'fencs' string (default: "ucs-bom,utf-8,default,latin1") global - {only available when compiled with the |+multi_byte| - feature} This is a list of character encodings considered when starting to edit an existing file. When a file is read, Vim tries to use the first mentioned character encoding. If an error is detected, the next one @@ -2378,8 +2332,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'fillchars'* *'fcs'* 'fillchars' 'fcs' string (default "") global - {not available when compiled without the |+windows| - and |+folding| features} Characters to fill the statuslines and vertical separators. It is a comma separated list of items: @@ -2418,7 +2370,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'fixendofline'* *'fixeol'* *'nofixendofline'* *'nofixeol'* 'fixendofline' 'fixeol' boolean (default on) local to buffer - {not in Vi} When writing a file and this option is on, <EOL> at the end of file will be restored if missing. Turn this option off if you want to preserve the situation from the original file. @@ -2436,8 +2387,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldclose'* *'fcl'* 'foldclose' 'fcl' string (default "") global - {not available when compiled without the |+folding| - feature} When set to "all", a fold is closed when the cursor isn't in it and its level is higher than 'foldlevel'. Useful if you want folds to automatically close when moving out of them. @@ -2445,8 +2394,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldcolumn'* *'fdc'* 'foldcolumn' 'fdc' number (default 0) local to window - {not available when compiled without the |+folding| - feature} When non-zero, a column with the specified width is shown at the side of the window which indicates open and closed folds. The maximum value is 12. @@ -2455,8 +2402,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldenable'* *'fen'* *'nofoldenable'* *'nofen'* 'foldenable' 'fen' boolean (default on) local to window - {not available when compiled without the |+folding| - feature} When off, all folds are open. This option can be used to quickly switch between showing all text unfolded and viewing the text with folds (including manually opened or closed folds). It can be toggled @@ -2468,8 +2413,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldexpr'* *'fde'* 'foldexpr' 'fde' string (default: "0") local to window - {not available when compiled without the |+folding| - or |+eval| features} The expression used for when 'foldmethod' is "expr". It is evaluated for each line to obtain its fold level. See |fold-expr|. @@ -2484,8 +2427,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldignore'* *'fdi'* 'foldignore' 'fdi' string (default: "#") local to window - {not available when compiled without the |+folding| - feature} Used only when 'foldmethod' is "indent". Lines starting with characters in 'foldignore' will get their fold level from surrounding lines. White space is skipped before checking for this character. @@ -2494,8 +2435,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldlevel'* *'fdl'* 'foldlevel' 'fdl' number (default: 0) local to window - {not available when compiled without the |+folding| - feature} Sets the fold level: Folds with a higher level will be closed. Setting this option to zero will close all folds. Higher numbers will close fewer folds. @@ -2505,8 +2444,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldlevelstart'* *'fdls'* 'foldlevelstart' 'fdls' number (default: -1) global - {not available when compiled without the |+folding| - feature} Sets 'foldlevel' when starting to edit another buffer in a window. Useful to always start editing with all folds closed (value zero), some folds closed (one) or no folds closed (99). @@ -2520,8 +2457,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldmarker'* *'fmr'* *E536* 'foldmarker' 'fmr' string (default: "{{{,}}}") local to window - {not available when compiled without the |+folding| - feature} The start and end marker used when 'foldmethod' is "marker". There must be one comma, which separates the start and end marker. The marker is a literal string (a regular expression would be too slow). @@ -2530,8 +2465,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldmethod'* *'fdm'* 'foldmethod' 'fdm' string (default: "manual") local to window - {not available when compiled without the |+folding| - feature} The kind of folding used for the current window. Possible values: |fold-manual| manual Folds are created manually. |fold-indent| indent Lines with equal indent form a fold. @@ -2543,8 +2476,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldminlines'* *'fml'* 'foldminlines' 'fml' number (default: 1) local to window - {not available when compiled without the |+folding| - feature} Sets the number of screen lines above which a fold can be displayed closed. Also for manually closed folds. With the default value of one a fold can only be closed if it takes up two or more screen lines. @@ -2556,8 +2487,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldnestmax'* *'fdn'* 'foldnestmax' 'fdn' number (default: 20) local to window - {not available when compiled without the |+folding| - feature} Sets the maximum nesting of folds for the "indent" and "syntax" methods. This avoids that too many folds will be created. Using more than 20 doesn't work, because the internal limit is 20. @@ -2566,8 +2495,6 @@ A jump table for the options with a short description can be found at |Q_op|. 'foldopen' 'fdo' string (default: "block,hor,mark,percent,quickfix, search,tag,undo") global - {not available when compiled without the |+folding| - feature} Specifies for which type of commands folds will be opened, if the command moves the cursor into a closed fold. It is a comma separated list of items. @@ -2602,8 +2529,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'foldtext'* *'fdt'* 'foldtext' 'fdt' string (default: "foldtext()") local to window - {not available when compiled without the |+folding| - feature} An expression which is used to specify the text displayed for a closed fold. See |fold-foldtext|. @@ -2616,8 +2541,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'formatexpr'* *'fex'* 'formatexpr' 'fex' string (default "") local to buffer - {not available when compiled without the |+eval| - feature} Expression which is evaluated to format a range of lines for the |gq| operator or automatic formatting (see 'formatoptions'). When this option is empty 'formatprg' is used. @@ -2829,7 +2752,6 @@ A jump table for the options with a short description can be found at |Q_op|. *E235* *E596* 'guifont' 'gfn' string (default "") global - {only available when compiled with GUI enabled} This is a list of fonts which will be used for the GUI version of Vim. In its simplest form the value is just one font name. When the font cannot be found you will get an error message. To try other @@ -2896,8 +2818,6 @@ A jump table for the options with a short description can be found at |Q_op|. *E250* *E252* *E234* *E597* *E598* 'guifontset' 'gfs' string (default "") global - {only available when compiled with GUI enabled and - with the |+xfontset| feature} When not empty, specifies two (or more) fonts to be used. The first one for normal English, the second one for your special language. See |xfontset|. @@ -2918,7 +2838,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'guifontwide'* *'gfw'* *E231* *E533* *E534* 'guifontwide' 'gfw' string (default "") global - {only available when compiled with GUI enabled} When not empty, specifies a comma-separated list of fonts to be used for double-width characters. The first font that can be loaded is used. @@ -2937,7 +2856,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'guioptions'* *'go'* 'guioptions' 'go' string (default "egmrLT" (MS-Windows)) global - {only available when compiled with GUI enabled} This option only has an effect in the GUI version of Vim. It is a sequence of letters which describes what components and options of the GUI should be used. @@ -3033,8 +2951,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'guitablabel'* *'gtl'* 'guitablabel' 'gtl' string (default empty) global - {only available when compiled with GUI enabled and - with the |+windows| feature} When nonempty describes the text to use in a label of the GUI tab pages line. When empty and when the result is empty Vim will use a default label. See |setting-guitablabel| for more info. @@ -3051,8 +2967,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'guitabtooltip'* *'gtt'* 'guitabtooltip' 'gtt' string (default empty) global - {only available when compiled with GUI enabled and - with the |+windows| feature} When nonempty describes the text to use in a tooltip for the GUI tab pages line. When empty Vim will use a default tooltip. This option is otherwise just like 'guitablabel' above. @@ -3077,8 +2991,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'helpheight'* *'hh'* 'helpheight' 'hh' number (default 20) global - {not available when compiled without the |+windows| - feature} Minimal initial height of the help window when it is opened with the ":help" command. The initial height of the help window is half of the current window, or (when the 'ea' option is on) the same as other @@ -3088,8 +3000,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'helplang'* *'hlg'* 'helplang' 'hlg' string (default: messages language or empty) global - {only available when compiled with the |+multi_lang| - feature} Comma separated list of languages. Vim will use the first language for which the desired help can be found. The English help will always be used as a last resort. You can add "en" to prefer English over @@ -3143,8 +3053,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'hlsearch'* *'hls'* *'nohlsearch'* *'nohls'* 'hlsearch' 'hls' boolean (default on) global - {not available when compiled without the - |+extra_search| feature} When there is a previous search pattern, highlight all its matches. The |hl-Search| highlight group determines the highlighting. Note that only the matching text is highlighted, any offsets are not applied. @@ -3164,8 +3072,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'icon'* *'noicon'* 'icon' boolean (default off, on when title can be restored) global - {not available when compiled without the |+title| - feature} When on, the icon text of the window will be set to the value of 'iconstring' (if it is not empty), or to the name of the file currently being edited. Only the last part of the name is used. @@ -3175,15 +3081,12 @@ A jump table for the options with a short description can be found at |Q_op|. *'iconstring'* 'iconstring' string (default "") global - {not available when compiled without the |+title| - feature} When this option is not empty, it will be used for the icon text of the window. This happens only when the 'icon' option is on. Only works if the terminal supports setting window icon text When this option contains printf-style '%' items, they will be expanded according to the rules used for 'statusline'. See 'titlestring' for example settings. - {not available when compiled without the |+statusline| feature} *'ignorecase'* *'ic'* *'noignorecase'* *'noic'* 'ignorecase' 'ic' boolean (default off) @@ -3197,8 +3100,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'imcmdline'* *'imc'* *'noimcmdline'* *'noimc'* 'imcmdline' 'imc' boolean (default off) global - {only available when compiled with the |+xim|, - |+multi_byte_ime| or |global-ime| features} When set the Input Method is always on when starting to edit a command line, unless entering a search pattern (see 'imsearch' for that). Setting this option is useful when your input method allows entering @@ -3208,8 +3109,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'imdisable'* *'imd'* *'noimdisable'* *'noimd'* 'imdisable' 'imd' boolean (default off, on for some systems (SGI)) global - {only available when compiled with the |+xim|, - |+multi_byte_ime| or |global-ime| features} When set the Input Method is never used. This is useful to disable the IM when it doesn't work properly. Currently this option is on by default for SGI/IRIX machines. This @@ -3265,8 +3164,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'include'* *'inc'* 'include' 'inc' string (default "^\s*#\s*include") global or local to buffer |global-local| - {not available when compiled without the - |+find_in_path| feature} Pattern to be used to find an include command. It is a search pattern, just like for the "/" command (See |pattern|). The default value is for C programs. This option is used for the commands "[i", @@ -3282,8 +3179,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'includeexpr'* *'inex'* 'includeexpr' 'inex' string (default "") local to buffer - {not available when compiled without the - |+find_in_path| or |+eval| features} Expression to be used to transform the string found with the 'include' option to a file name. Mostly useful to change "." to "/" for Java: > :set includeexpr=substitute(v:fname,'\\.','/','g') @@ -3306,6 +3201,7 @@ A jump table for the options with a short description can be found at |Q_op|. so far, matches. The matched string is highlighted. If the pattern is invalid or not found, nothing is shown. The screen will be updated often, this is only useful on fast terminals. + Also applies to the `:s`, `:g` and `:v` commands. Note that the match will be shown, but the cursor will return to its original position when no match is found and when pressing <Esc>. You still need to finish the search command with <Enter> to move the @@ -3318,9 +3214,9 @@ A jump table for the options with a short description can be found at |Q_op|. The |hl-IncSearch| highlight group determines the highlighting. When 'hlsearch' is on, all matched strings are highlighted too while typing a search command. See also: 'hlsearch'. - If you don't want turn 'hlsearch' on, but want to highlight all matches - while searching, you can turn on and off 'hlsearch' with autocmd. - Example: > + If you don't want to turn 'hlsearch' on, but want to highlight all + matches while searching, you can turn on and off 'hlsearch' with + autocmd. Example: > augroup vimrc-incsearch-highlight autocmd! autocmd CmdlineEnter /,\? :set hlsearch @@ -3533,8 +3429,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'keymap'* *'kmp'* *E544* 'keymap' 'kmp' string (default "") local to buffer - {only available when compiled with the |+keymap| - feature} Name of a keyboard mapping. See |mbyte-keymap|. Setting this option to a valid keymap name has the side effect of setting 'iminsert' to one, so that the keymap becomes effective. @@ -3575,8 +3469,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'langmap'* *'lmap'* *E357* *E358* 'langmap' 'lmap' string (default "") global - {only available when compiled with the |+langmap| - feature} This option allows switching your keyboard into a special language mode. When you are typing text in Insert mode the characters are inserted directly. When in Normal mode the 'langmap' option takes @@ -3620,8 +3512,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'langmenu'* *'lm'* 'langmenu' 'lm' string (default "") global - {only available when compiled with the |+menu| and - |+multi_lang| features} Language to use for menu translation. Tells which file is loaded from the "lang" directory in 'runtimepath': > "lang/menu_" . &langmenu . ".vim" @@ -3670,8 +3560,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'linebreak'* *'lbr'* *'nolinebreak'* *'nolbr'* 'linebreak' 'lbr' boolean (default off) local to window - {not available when compiled without the |+linebreak| - feature} If on, Vim will wrap long lines at a character in 'breakat' rather than at the last character that fits on the screen. Unlike 'wrapmargin' and 'textwidth', this does not insert <EOL>s in the file, @@ -3711,8 +3599,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'lisp'* *'nolisp'* 'lisp' boolean (default off) local to buffer - {not available when compiled without the |+lispindent| - feature} Lisp mode: When <Enter> is typed in insert mode set the indent for the next line to Lisp standards (well, sort of). Also happens with "cc" or "S". 'autoindent' must also be on for this to work. The 'p' @@ -3726,8 +3612,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'lispwords'* *'lw'* 'lispwords' 'lw' string (default is very long) global or local to buffer |global-local| - {not available when compiled without the |+lispindent| - feature} Comma separated list of words that influence the Lisp indenting. |'lisp'| @@ -3820,8 +3704,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'makeef'* *'mef'* 'makeef' 'mef' string (default: "") global - {not available when compiled without the |+quickfix| - feature} Name of the errorfile for the |:make| command (see |:make_makeprg|) and the |:grep| command. When it is empty, an internally generated temp file will be used. @@ -3837,9 +3719,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'makeencoding'* *'menc'* 'makeencoding' 'menc' string (default "") global or local to buffer |global-local| - {only available when compiled with the |+multi_byte| - feature} - {not in Vi} Encoding used for reading the output of external commands. When empty, encoding is not converted. This is used for `:make`, `:lmake`, `:grep`, `:lgrep`, `:grepadd`, @@ -3905,14 +3784,12 @@ A jump table for the options with a short description can be found at |Q_op|. *'maxfuncdepth'* *'mfd'* 'maxfuncdepth' 'mfd' number (default 100) global - {not available when compiled without the |+eval| - feature} Maximum depth of function calls for user functions. This normally catches endless recursion. When using a recursive function with more depth, set 'maxfuncdepth' to a bigger number. But this will use more memory, there is the danger of failing when memory is exhausted. Increasing this limit above 200 also changes the maximum for Ex - command resursion, see |E169|. + command recursion, see |E169|. See also |:function|. *'maxmapdepth'* *'mmd'* *E223* @@ -3935,13 +3812,14 @@ A jump table for the options with a short description can be found at |Q_op|. Running into the limit often means that the pattern is very inefficient or too complex. This may already happen with the pattern "\(.\)*" on a very long line. ".*" works much better. - Vim may run out of memory before hitting the 'maxmempattern' limit. + Might also happen on redraw, when syntax rules try to match a complex + text structure. + Vim may run out of memory before hitting the 'maxmempattern' limit, in + which case you get an "Out of memory" error instead. *'menuitems'* *'mis'* 'menuitems' 'mis' number (default 25) global - {not available when compiled without the |+menu| - feature} Maximum number of items to use in a menu. Used for menus that are generated from a list of items, e.g., the Buffers menu. Changing this option has no direct effect, the menu must be refreshed first. @@ -3949,8 +3827,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'mkspellmem'* *'msm'* 'mkspellmem' 'msm' string (default "460000,2000,500") global - {not available when compiled without the |+syntax| - feature} Parameters for |:mkspell|. This tunes when to start compressing the word tree. Compression can be slow when there are many words, but it's needed to avoid running out of memory. The amount of memory used @@ -4024,6 +3900,8 @@ A jump table for the options with a short description can be found at |Q_op|. an explanation. When 'buftype' is "nowrite" or "nofile" this option may be set, but will be ignored. + Note that the text may actually be the same, e.g. 'modified' is set + when using "rA" on an "A". *'more'* *'nomore'* 'more' boolean (Vim default: on, Vi default: off) @@ -4133,6 +4011,8 @@ A jump table for the options with a short description can be found at |Q_op|. In the "popup" model the right mouse button produces a pop-up menu. You need to define this first, see |popup-menu|. + In a terminal the popup menu works if Vim is compiled with the + |+insert_expand| option. Note that you can further refine the meaning of buttons with mappings. See |mouse-overview|. But mappings are NOT used for modeless selection. @@ -4162,8 +4042,6 @@ A jump table for the options with a short description can be found at |Q_op|. 'mouseshape' 'mouses' string (default "i:beam,r:beam,s:updown,sd:cross, m:no,ml:up-arrow,v:rightup-arrow") global - {only available when compiled with the |+mouseshape| - feature} This option tells Vim what the mouse pointer should look like in different modes. The option is a comma separated list of parts, much like used for 'guicursor'. Each part consist of a mode/location-list @@ -4277,8 +4155,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'numberwidth'* *'nuw'* 'numberwidth' 'nuw' number (Vim default: 4 Vi default: 8) local to window - {only available when compiled with the |+linebreak| - feature} Minimal number of columns to use for the line number. Only relevant when the 'number' or 'relativenumber' option is set or printing lines with a line number. Since one space is always between the number and @@ -4293,8 +4169,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'omnifunc'* *'ofu'* 'omnifunc' 'ofu' string (default: empty) local to buffer - {not available when compiled without the |+eval| - or |+insert_expand| features} This option specifies a function to be used for Insert mode omni completion with CTRL-X CTRL-O. |i_CTRL-X_CTRL-O| See |complete-functions| for an explanation of how the function is @@ -4327,7 +4201,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'packpath'* *'pp'* 'packpath' 'pp' string (default: see 'runtimepath') - {not in Vi} Directories used to find packages. See |packages|. @@ -4422,11 +4295,11 @@ A jump table for the options with a short description can be found at |Q_op|. copy of the original file will be kept. The name of the copy is the name of the original file with the string in the 'patchmode' option appended. This option should start with a dot. Use a string like - ".org". 'backupdir' must not be empty for this to work (Detail: The - backup file is renamed to the patchmode file after the new file has - been successfully written, that's why it must be possible to write a - backup file). If there was no file to be backed up, an empty file is - created. + ".orig" or ".org". 'backupdir' must not be empty for this to work + (Detail: The backup file is renamed to the patchmode file after the + new file has been successfully written, that's why it must be possible + to write a backup file). If there was no file to be backed up, an + empty file is created. When the 'backupskip' pattern matches, a patchmode file is not made. Using 'patchmode' for compressed files appends the extension at the end (e.g., "file.gz.orig"), thus the resulting name isn't always @@ -4462,7 +4335,6 @@ A jump table for the options with a short description can be found at |Q_op|. "http://www.vim.org" will make ":find index.html" work. - Search upwards and downwards in a directory tree using "*", "**" and ";". See |file-searching| for info and syntax. - {not available when compiled without the |+path_extra| feature} - Careful with '\' characters, type two to get one in the option: > :set path=.,c:\\include < Or just use '/' instead: > @@ -4505,8 +4377,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'previewheight'* *'pvh'* 'previewheight' 'pvh' number (default 12) global - {not available when compiled without the |+windows| or - |+quickfix| features} Default height for a preview window. Used for |:ptag| and associated commands. Used for |CTRL-W_}| when no count is given. @@ -4514,8 +4384,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'pvw'* *'nopvw'* *E590* 'previewwindow' 'pvw' boolean (default off) local to window - {not available when compiled without the |+windows| or - |+quickfix| features} Identifies the preview window. Only one window can have this option set. It's normally not set directly, but by using one of the commands |:ptag|, |:pedit|, etc. @@ -4523,8 +4391,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'printdevice'* *'pdev'* 'printdevice' 'pdev' string (default empty) global - {only available when compiled with the |+printer| - feature} The name of the printer to be used for |:hardcopy|. See |pdev-option|. This option cannot be set from a |modeline| or in the |sandbox|, for @@ -4533,16 +4399,12 @@ A jump table for the options with a short description can be found at |Q_op|. *'printencoding'* *'penc'* 'printencoding' 'penc' String (default empty, except for some systems) global - {only available when compiled with the |+printer| - and |+postscript| features} Sets the character encoding used when printing. See |penc-option|. *'printexpr'* *'pexpr'* 'printexpr' 'pexpr' String (default: see below) global - {only available when compiled with the |+printer| - and |+postscript| features} Expression used to print the PostScript produced with |:hardcopy|. See |pexpr-option|. This option cannot be set from a |modeline| or in the |sandbox|, for @@ -4551,39 +4413,30 @@ A jump table for the options with a short description can be found at |Q_op|. *'printfont'* *'pfn'* 'printfont' 'pfn' string (default "courier") global - {only available when compiled with the |+printer| - feature} The name of the font that will be used for |:hardcopy|. See |pfn-option|. *'printheader'* *'pheader'* 'printheader' 'pheader' string (default "%<%f%h%m%=Page %N") global - {only available when compiled with the |+printer| - feature} The format of the header produced in |:hardcopy| output. See |pheader-option|. *'printmbcharset'* *'pmbcs'* 'printmbcharset' 'pmbcs' string (default "") global - {only available when compiled with the |+printer|, - |+postscript| and |+multi_byte| features} The CJK character set to be used for CJK output from |:hardcopy|. See |pmbcs-option|. *'printmbfont'* *'pmbfn'* 'printmbfont' 'pmbfn' string (default "") global - {only available when compiled with the |+printer|, - |+postscript| and |+multi_byte| features} List of font names to be used for CJK output from |:hardcopy|. See |pmbfn-option|. *'printoptions'* *'popt'* 'printoptions' 'popt' string (default "") global - {only available when compiled with |+printer| feature} List of items that control the format of the output of |:hardcopy|. See |popt-option|. @@ -4595,8 +4448,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'pumheight'* *'ph'* 'pumheight' 'ph' number (default 0) global - {not available when compiled without the - |+insert_expand| feature} Determines the maximum number of items to show in the popup menu for Insert mode completion. When zero as much space as available is used. |ins-completion-menu|. @@ -4626,8 +4477,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'redrawtime'* *'rdt'* 'redrawtime' 'rdt' number (default 2000) global - {only available when compiled with the |+reltime| - feature} Time in milliseconds for redrawing the display. Applies to 'hlsearch', 'inccommand' and |:match| highlighting. When redrawing takes more than this many milliseconds no further @@ -4751,8 +4600,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'rulerformat'* *'ruf'* 'rulerformat' 'ruf' string (default empty) global - {not available when compiled without the |+statusline| - feature} When this option is not empty, it determines the content of the ruler string, as displayed for the 'ruler' option. The format of this option is like that of 'statusline'. @@ -4841,6 +4688,8 @@ A jump table for the options with a short description can be found at |Q_op|. to find files which replace a distributed runtime files. You can put a directory after $VIMRUNTIME to find files which add to distributed runtime files. + When Vim is started with |--clean| the home directory entries are not + included. This option cannot be set from a |modeline| or in the |sandbox|, for security reasons. @@ -4866,8 +4715,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'scrollbind'* *'scb'* *'noscrollbind'* *'noscb'* 'scrollbind' 'scb' boolean (default off) local to window - {not available when compiled without the |+scrollbind| - feature} See also |scroll-binding|. When this option is set, the current window scrolls as other scrollbind windows (windows that also have this option set) scroll. This option is useful for viewing the @@ -4901,8 +4748,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'scrollopt'* *'sbo'* 'scrollopt' 'sbo' string (default "ver,jump") global - {not available when compiled without the |+scrollbind| - feature} This is a comma-separated list of words that specifies how 'scrollbind' windows should behave. 'sbo' stands for ScrollBind Options. @@ -5019,6 +4864,8 @@ A jump table for the options with a short description can be found at |Q_op|. tabpages all tab pages; without this only the current tab page is restored, so that you can make a session for each tab page separately + terminal include terminal windows where the command can be + restored unix with Unix end-of-line format (single <NL>), even when on Windows or DOS winpos position of the whole Vim window @@ -5400,8 +5247,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'showbreak'* *'sbr'* *E595* 'showbreak' 'sbr' string (default "") global - {not available when compiled without the |+linebreak| - feature} String to put at the start of lines that have been wrapped. Useful values are "> " or "+++ ": > :set showbreak=>\ @@ -5471,8 +5316,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'showtabline'* *'stal'* 'showtabline' 'stal' number (default 1) global - {not available when compiled without the |+windows| - feature} The value of this option specifies when the line with tab page labels will be displayed: 0: never @@ -5532,8 +5375,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'smartindent'* *'si'* *'nosmartindent'* *'nosi'* 'smartindent' 'si' boolean (default off) local to buffer - {not available when compiled without the - |+smartindent| feature} Do smart autoindenting when starting a new line. Works for C-like programs, but can also be used for other languages. 'cindent' does something like this, works better in most cases, but is more strict, @@ -5593,16 +5434,12 @@ A jump table for the options with a short description can be found at |Q_op|. *'spell'* *'nospell'* 'spell' boolean (default off) local to window - {not available when compiled without the |+syntax| - feature} When on spell checking will be done. See |spell|. The languages are specified with 'spelllang'. *'spellcapcheck'* *'spc'* 'spellcapcheck' 'spc' string (default "[.?!]\_[\])'" \t]\+") local to buffer - {not available when compiled without the |+syntax| - feature} Pattern to locate the end of a sentence. The following word will be checked to start with a capital letter. If not then it is highlighted with SpellCap |hl-SpellCap| (unless the word is also badly spelled). @@ -5616,8 +5453,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'spellfile'* *'spf'* 'spellfile' 'spf' string (default empty) local to buffer - {not available when compiled without the |+syntax| - feature} Name of the word list file where words are added for the |zg| and |zw| commands. It must end in ".{encoding}.add". You need to include the path, otherwise the file is placed in the current directory. @@ -5642,8 +5477,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'spelllang'* *'spl'* 'spelllang' 'spl' string (default "en") local to buffer - {not available when compiled without the |+syntax| - feature} A comma separated list of word list names. When the 'spell' option is on spellchecking will be done for these languages. Example: > set spelllang=en_us,nl,medical @@ -5682,8 +5515,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'spellsuggest'* *'sps'* 'spellsuggest' 'sps' string (default "best") global - {not available when compiled without the |+syntax| - feature} Methods used for spelling suggestions. Both for the |z=| command and the |spellsuggest()| function. This is a comma-separated list of items: @@ -5747,8 +5578,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'splitbelow'* *'sb'* *'nosplitbelow'* *'nosb'* 'splitbelow' 'sb' boolean (default off) global - {not available when compiled without the |+windows| - feature} When on, splitting a window will put the new window below the current one. |:split| @@ -5774,8 +5603,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'statusline'* *'stl'* *E540* *E542* 'statusline' 'stl' string (default empty) global or local to window |global-local| - {not available when compiled without the |+statusline| - feature} When nonempty, this option determines the content of the status line. Also see |status-line|. @@ -5922,7 +5749,7 @@ A jump table for the options with a short description can be found at |Q_op|. line is displayed. The current buffer and current window will be set temporarily to that of the window (and buffer) whose statusline is currently being drawn. The expression will evaluate in this context. - The variable "actual_curbuf" is set to the 'bufnr()' number of the + The variable "g:actual_curbuf" is set to the `bufnr()` number of the real current buffer. The 'statusline' option will be evaluated in the |sandbox| if set from @@ -5980,8 +5807,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'suffixesadd'* *'sua'* 'suffixesadd' 'sua' string (default "") local to buffer - {not available when compiled without the - |+file_in_path| feature} Comma separated list of suffixes, which are used when searching for a file for the "gf", "[I", etc. commands. Example: > :set suffixesadd=.java @@ -6003,6 +5828,7 @@ A jump table for the options with a short description can be found at |Q_op|. Also see |swap-file|. If you want to open a new buffer without creating a swap file for it, use the |:noswapfile| modifier. + See 'directory' for where the swap file is created. This option is used together with 'bufhidden' and 'buftype' to specify special kinds of buffers. See |special-buffers|. @@ -6031,8 +5857,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'synmaxcol'* *'smc'* 'synmaxcol' 'smc' number (default 3000) local to buffer - {not available when compiled without the |+syntax| - feature} Maximum column in which to search for syntax items. In long lines the text after this column is not highlighted and following lines may not be highlighted correctly, because the syntax state is cleared. @@ -6043,8 +5867,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'syntax'* *'syn'* 'syntax' 'syn' string (default empty) local to buffer - {not available when compiled without the |+syntax| - feature} When this option is set, the syntax with this name is loaded, unless syntax highlighting has been switched off with ":syntax off". Otherwise this option does not always reflect the current syntax (the @@ -6072,8 +5894,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'tabline'* *'tal'* 'tabline' 'tal' string (default empty) global - {not available when compiled without the |+windows| - feature} When nonempty, this option determines the content of the tab pages line at the top of the Vim window. When empty Vim will use a default tab pages line. See |setting-tabline| for more info. @@ -6095,8 +5915,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'tabpagemax'* *'tpm'* 'tabpagemax' 'tpm' number (default 50) global - {not available when compiled without the |+windows| - feature} Maximum number of tab pages to be opened by the |-p| command line argument or the ":tab all" command. |tabpage| @@ -6182,7 +6000,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'tagcase'* *'tc'* 'tagcase' 'tc' string (default "followic") global or local to buffer |global-local| - {not in Vi} This option specifies how case is handled when searching the tags file: followic Follow the 'ignorecase' option @@ -6216,8 +6033,7 @@ A jump table for the options with a short description can be found at |Q_op|. a directory tree. See |file-searching|. E.g., "/lib/**/tags" will find all files named "tags" below "/lib". The filename itself cannot contain wildcards, it is used as-is. E.g., "/lib/**/tags?" will find - files called "tags?". {not available when compiled without the - |+path_extra| feature} + files called "tags?". The |tagfiles()| function can be used to get a list of the file names actually used. The use of |:set+=| and |:set-=| is preferred when adding or removing @@ -6284,7 +6100,7 @@ A jump table for the options with a short description can be found at |Q_op|. non-keyword characters (white space is preferred). Maximum line length is 510 bytes. To obtain a file to be used here, check out this ftp site: - [Sorry this link doesn't work anymore, do you know the right one?] + [Sorry this link doesn't work anymore, do you know the right one?] ftp://ftp.ox.ac.uk/pub/wordlists/ First get the README file. To include a comma in a file name precede it with a backslash. Spaces after a comma are ignored, otherwise spaces are included in the file @@ -6382,7 +6198,6 @@ A jump table for the options with a short description can be found at |Q_op|. separating space only when needed. NOTE: Use of special characters in 'titlestring' may cause the display to be garbled (e.g., when it contains a CR or NL character). - {not available when compiled without the |+statusline| feature} *'ttyfast'* *'tf'* *'nottyfast'* *'notf'* 'ttyfast' 'tf' Removed. |vim-differences| {Nvim} @@ -6390,7 +6205,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'undodir'* *'udir'* *E5003* 'undodir' 'udir' string (default "$XDG_DATA_HOME/nvim/undo") global - {only when compiled with the |+persistent_undo| feature} List of directory names for undo files, separated with commas. See |'backupdir'| for details of the format. "." means using the directory of the file. The undo file name for @@ -6409,7 +6223,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'undofile'* *'noundofile'* *'udf'* *'noudf'* 'undofile' 'udf' boolean (default off) local to buffer - {only when compiled with the |+persistent_undo| feature} When on, Vim automatically saves undo history to an undo file when writing a buffer to a file, and restores undo history from the same file on buffer read. @@ -6513,8 +6326,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'viewdir'* *'vdir'* 'viewdir' 'vdir' string (default: "$XDG_DATA_HOME/nvim/view") global - {not available when compiled without the |+mksession| - feature} Name of the directory where to store files for |:mkview|. This option cannot be set from a |modeline| or in the |sandbox|, for security reasons. @@ -6522,8 +6333,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'viewoptions'* *'vop'* 'viewoptions' 'vop' string (default: "folds,options,cursor,curdir") global - {not available when compiled without the |+mksession| - feature} Changes the effect of the |:mkview| command. It is a comma separated list of words. Each word enables saving and restoring something: word save and restore ~ @@ -6546,8 +6355,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'virtualedit'* *'ve'* 'virtualedit' 've' string (default "") global - {not available when compiled without the - |+virtualedit| feature} A comma separated list of these words: block Allow virtual editing in Visual block mode. insert Allow virtual editing in Insert mode. @@ -6638,8 +6445,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'wildignore'* *'wig'* 'wildignore' 'wig' string (default "") global - {not available when compiled without the |+wildignore| - feature} A list of file patterns. A file that matches with one of these patterns is ignored when expanding |wildcards|, completing file or directory names, and influences the result of |expand()|, |glob()| and @@ -6665,8 +6470,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'wildmenu'* *'wmnu'* *'nowildmenu'* *'nowmnu'* 'wildmenu' 'wmnu' boolean (default on) global - {not available if compiled without the |+wildmenu| - feature} When 'wildmenu' is on, command-line completion operates in an enhanced mode. On pressing 'wildchar' (usually <Tab>) to invoke completion, the possible matches are shown just above the command line, with the @@ -6742,8 +6545,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'wildoptions'* *'wop'* 'wildoptions' 'wop' string (default "") global - {not available when compiled without the |+wildignore| - feature} A list of words that change how command line completion is done. Currently only one word is allowed: tagfile When using CTRL-D to list matching tags, the kind of @@ -6789,8 +6590,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'winheight'* *'wh'* *E591* 'winheight' 'wh' number (default 1) global - {not available when compiled without the |+windows| - feature} Minimal number of lines for the current window. This is not a hard minimum, Vim will use fewer lines if there is not enough room. If the focus goes to a window that is smaller, its size is increased, at the @@ -6829,8 +6628,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'winfixheight'* *'wfh'* *'nowinfixheight'* *'nowfh'* 'winfixheight' 'wfh' boolean (default off) local to window - {not available when compiled without the |+windows| - feature} Keep the window height when windows are opened or closed and 'equalalways' is set. Also for |CTRL-W_=|. Set by default for the |preview-window| and |quickfix-window|. @@ -6839,8 +6636,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'winfixwidth'* *'wfw'* *'nowinfixwidth'* *'nowfw'* 'winfixwidth' 'wfw' boolean (default off) local to window - {not available when compiled without the |+windows| - feature} Keep the window width when windows are opened or closed and 'equalalways' is set. Also for |CTRL-W_=|. The width may be changed anyway when running out of room. @@ -6848,8 +6643,6 @@ A jump table for the options with a short description can be found at |Q_op|. *'winminheight'* *'wmh'* 'winminheight' 'wmh' number (default 1) global - {not available when compiled without the |+windows| - feature} The minimal height of a window, when it's not the current window. This is a hard minimum, windows will never become smaller. When set to zero, windows may be "squashed" to zero lines (i.e. just a @@ -6960,4 +6753,4 @@ A jump table for the options with a short description can be found at |Q_op|. When negative, all redrawn characters cause a delay, even if the character already was displayed by the UI. For debugging purposes. - vim:tw=78:ts=8:ft=help:noet:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt index cc485b655d..88b7f65209 100644 --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -282,6 +282,14 @@ the "#" is under your left hand middle finger (search to the left and up) and the "*" is under your right hand middle finger (search to the right and down). (this depends on your keyboard layout though). + *E956* +In very rare cases a regular expression is used recursively. This can happen +when executing a pattern takes a long time and when checkig for messages on +channels a callback is invoked that also uses a pattern or an autocommand is +triggered. In most cases this should be fine, but if a pattern is in use when +it's used again it fails. Usually this means there is something wrong with +the pattern. + ============================================================================== 2. The definition of a pattern *search-pattern* *pattern* *[pattern]* *regular-expression* *regexp* *Pattern* @@ -888,7 +896,7 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on): becomes invalid. Vim doesn't automatically update the matches. Similar to moving the cursor for "\%#" |/\%#|. - */\%l* */\%>l* */\%<l* + */\%l* */\%>l* */\%<l* *E951* \%23l Matches in a specific line. \%<23l Matches above a specific line (lower line number). \%>23l Matches below a specific line (higher line number). @@ -1148,7 +1156,8 @@ x A single character, with no special meaning, matches itself - Matching with a collection can be slow, because each character in the text has to be compared with each character in the collection. Use one of the other atoms above when possible. Example: "\d" is - much faster than "[0-9]" and matches the same characters. + much faster than "[0-9]" and matches the same characters. However, + the new |NFA| regexp engine deals with this better than the old one. */\%[]* *E69* *E70* *E369* \%[] A sequence of optionally matched atoms. This always matches. @@ -1390,4 +1399,4 @@ Finally, these constructs are unique to Perl: ":2match" for another plugin. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/pi_gzip.txt b/runtime/doc/pi_gzip.txt index f024db1260..0363a8e34a 100644 --- a/runtime/doc/pi_gzip.txt +++ b/runtime/doc/pi_gzip.txt @@ -38,4 +38,4 @@ compression. Thus editing the patchmode file will not give you the automatic decompression. You have to rename the file if you want this. ============================================================================== - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt index b41629c0f0..a0e071d4dd 100644 --- a/runtime/doc/pi_netrw.txt +++ b/runtime/doc/pi_netrw.txt @@ -4098,4 +4098,4 @@ netrw: ============================================================================== Modelines: {{{1 - vim:tw=78:ts=8:ft=help:norl:fdm=marker + vim:tw=78:ts=8:noet:ft=help:norl:fdm=marker diff --git a/runtime/doc/pi_paren.txt b/runtime/doc/pi_paren.txt index 4b425c6cbb..77083362da 100644 --- a/runtime/doc/pi_paren.txt +++ b/runtime/doc/pi_paren.txt @@ -56,4 +56,4 @@ used. This plugin also helps to skip matches in comments. This is unrelated to the matchparen highlighting, they use a different mechanism. ============================================================================== - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/pi_spec.txt b/runtime/doc/pi_spec.txt index f4949db2af..6d45a0f064 100644 --- a/runtime/doc/pi_spec.txt +++ b/runtime/doc/pi_spec.txt @@ -108,4 +108,4 @@ If you don't like the release updating feature and don't want to answer Good luck!! -vim:tw=78:ts=8:ft=help:norl: +vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/pi_tar.txt b/runtime/doc/pi_tar.txt index a189d006dd..59b318b7fd 100644 --- a/runtime/doc/pi_tar.txt +++ b/runtime/doc/pi_tar.txt @@ -148,4 +148,4 @@ Copyright 2005-2012: *tar-copyright* v1 (original) * Michael Toren (see http://michael.toren.net/code/) ============================================================================== -vim:tw=78:ts=8:ft=help +vim:tw=78:ts=8:noet:ft=help diff --git a/runtime/doc/pi_zip.txt b/runtime/doc/pi_zip.txt index c20bda1fa1..7a5e7166ba 100644 --- a/runtime/doc/pi_zip.txt +++ b/runtime/doc/pi_zip.txt @@ -149,4 +149,4 @@ Copyright: Copyright (C) 2005-2015 Charles E Campbell *zip-copyright* v1 Sep 15, 2005 * Initial release, had browsing, reading, and writing ============================================================================== -vim:tw=78:ts=8:ft=help:fdm=marker +vim:tw=78:ts=8:noet:ft=help:fdm=marker diff --git a/runtime/doc/print.txt b/runtime/doc/print.txt index 3ffb52b5ae..084ad4e521 100644 --- a/runtime/doc/print.txt +++ b/runtime/doc/print.txt @@ -36,6 +36,8 @@ Note: If you have problems printing with |:hardcopy|, an alternative is to use 'printexpr' through |v:cmdarg|. Otherwise [arguments] is ignored. 'printoptions' can be used to specify paper size, duplex, etc. + Note: If you want PDF, there are tools such as + "ps2pdf" that can convert the PostScript to PDF. :[range]ha[rdcopy][!] >{filename} As above, but write the resulting PostScript in file @@ -729,4 +731,4 @@ to adjust the number of lines before a formfeed character to prevent accidental blank pages. ============================================================================== - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt index 6939dd6836..7aa81f612b 100644 --- a/runtime/doc/quickfix.txt +++ b/runtime/doc/quickfix.txt @@ -33,7 +33,7 @@ compiler (see |errorformat| below). *quickfix-ID* Each quickfix list has a unique identifier called the quickfix ID and this -number will not change within a Vim session. The getqflist() function can be +number will not change within a Vim session. The |getqflist()| function can be used to get the identifier assigned to a list. There is also a quickfix list number which may change whenever more than ten lists are added to a quickfix stack. @@ -51,6 +51,14 @@ When a window with a location list is split, the new window gets a copy of the location list. When there are no longer any references to a location list, the location list is destroyed. + *quickfix-changedtick* +Every quickfix and location list has a read-only changedtick variable that +tracks the total number of changes made to the list. Every time the quickfix +list is modified, this count is incremented. This can be used to perform an +action only when the list has changed. The |getqflist()| and |getloclist()| +functions can be used to query the current value of changedtick. You cannot +change the changedtick variable. + The following quickfix commands can be used. The location list commands are similar to the quickfix commands, replacing the 'c' prefix in the quickfix command with 'l'. @@ -281,6 +289,10 @@ processing a quickfix or location list command, it will be aborted. from the last error backwards, -1 being the last error. The 'switchbuf' settings are respected when jumping to a buffer. + The |:filter| command can be used to display only the + quickfix entries matching a supplied pattern. The + pattern is matched against the filename, module name, + pattern and text of the entry. :cl[ist] +{count} List the current and next {count} valid errors. This is similar to ":clist from from+count", where "from" @@ -299,8 +311,7 @@ processing a quickfix or location list command, it will be aborted. 8386: ^ ~ 8387: symbol: method Fmainx() ~ - *:lli* *:llist* -:lli[st] [from] [, [to]] +:lli[st] [from] [, [to]] *:lli* *:llist* Same as ":clist", except the location list for the current window is used instead of the quickfix list. @@ -333,6 +344,51 @@ use this code: > au QuickfixCmdPost make call QfMakeConv() Another option is using 'makeencoding'. + *quickfix-title* +Every quickfix and location list has a title. By default the title is set to +the command that created the list. The |getqflist()| and |getloclist()| +functions can be used to get the title of a quickfix and a location list +respectively. The |setqflist()| and |setloclist()| functions can be used to +modify the title of a quickfix and location list respectively. Examples: > + call setqflist([], 'a', {'title' : 'Cmd output'}) + echo getqflist({'title' : 1}) + call setloclist(3, [], 'a', {'title' : 'Cmd output'}) + echo getloclist(3, {'title' : 1}) +< + *quickfix-size* +You can get the number of entries (size) in a quickfix and a location list +using the |getqflist()| and |getloclist()| functions respectively. Examples: > + echo getqflist({'size' : 1}) + echo getloclist(5, {'size' : 1}) +< + *quickfix-context* +Any Vim type can be associated as a context with a quickfix or location list. +The |setqflist()| and the |setloclist()| functions can be used to associate a +context with a quickfix and a location list respectively. The |getqflist()| +and the |getloclist()| functions can be used to retrieve the context of a +quickfix and a location list respectively. This is useful for a Vim plugin +dealing with multiple quickfix/location lists. +Examples: > + + let somectx = {'name' : 'Vim', 'type' : 'Editor'} + call setqflist([], 'a', {'context' : somectx}) + echo getqflist({'context' : 1}) + + let newctx = ['red', 'green', 'blue'] + call setloclist(2, [], 'a', {'id' : qfid, 'context' : newctx}) + echo getloclist(2, {'id' : qfid, 'context' : 1}) +< + *quickfix-parse* +You can parse a list of lines using 'errorformat' without creating or +modifying a quickfix list using the |getqflist()| function. Examples: > + echo getqflist({'lines' : ["F1:10:Line10", "F2:20:Line20"]}) + echo getqflist({'lines' : systemlist('grep -Hn quickfix *')}) +This returns a dictionary where the 'items' key contains the list of quickfix +entries parsed from lines. The following shows how to use a custom +'errorformat' to parse the lines without modifying the 'errorformat' option: > + echo getqflist({'efm' : '%f#%l#%m', 'lines' : ['F1#10#Line']}) +< + EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST: *:cdo* :cdo[!] {cmd} Execute {cmd} in each valid entry in the quickfix list. @@ -358,8 +414,7 @@ EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST: autocommand event is disabled by adding it to 'eventignore'. This considerably speeds up editing each buffer. - {not in Vi} {not available when compiled without the - |+listcmds| feature} + {not in Vi} Also see |:bufdo|, |:tabdo|, |:argdo|, |:windo|, |:ldo|, |:cfdo| and |:lfdo|. @@ -372,8 +427,7 @@ EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST: :{cmd} etc. < Otherwise it works the same as `:cdo`. - {not in Vi} {not available when compiled without the - |+listcmds| feature} + {not in Vi} *:ldo* :ld[o][!] {cmd} Execute {cmd} in each valid entry in the location list @@ -386,8 +440,7 @@ EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST: etc. < Only valid entries in the location list are used. Otherwise it works the same as `:cdo`. - {not in Vi} {not available when compiled without the - |+listcmds| feature} + {not in Vi} *:lfdo* :lfdo[!] {cmd} Execute {cmd} in each file in the location list for @@ -399,8 +452,7 @@ EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST: :{cmd} etc. < Otherwise it works the same as `:ldo`. - {not in Vi} {not available when compiled without the - |+listcmds| feature} + {not in Vi} ============================================================================= 2. The error window *quickfix-window* @@ -533,6 +585,117 @@ In all of the above cases, if the location list for the selected window is not yet set, then it is set to the location list displayed in the location list window. + *quickfix-window-ID* +You can use the |getqflist()| and |getloclist()| functions to obtain the +window ID of the quickfix window and location list window respectively (if +present). Examples: > + echo getqflist({'winid' : 1}).winid + echo getloclist(2, {'winid' : 1}).winid +< + *getqflist-examples* +The |getqflist()| and |getloclist()| functions can be used to get the various +attributes of a quickfix and location list respectively. Some examples for +using these functions are below: +> + " get the title of the current quickfix list + :echo getqflist({'title' : 0}).title + + " get the identifier of the current quickfix list + :let qfid = getqflist({'id' : 0}).id + + " get the identifier of the fourth quickfix list in the stack + :let qfid = getqflist({'nr' : 4, 'id' : 0}).id + + " check whether a quickfix list with a specific identifier exists + :if getqflist({'id' : qfid}).id == qfid + + " get the index of the current quickfix list in the stack + :let qfnum = getqflist({'nr' : 0}).nr + + " get the items of a quickfix list specified by an identifier + :echo getqflist({'id' : qfid, 'items' : 0}).items + + " get the number of entries in a quickfix list specified by an id + :echo getqflist({'id' : qfid, 'size' : 0}).size + + " get the context of the third quickfix list in the stack + :echo getqflist({'nr' : 3, 'context' : 0}).context + + " get the number of quickfix lists in the stack + :echo getqflist({'nr' : '$'}).nr + + " get the number of times the current quickfix list is changed + :echo getqflist({'changedtick' : 0}).changedtick + + " get the current entry in a quickfix list specified by an identifier + :echo getqflist({'id' : qfid, 'idx' : 0}).idx + + " get all the quickfix list attributes using an identifier + :echo getqflist({'id' : qfid, 'all' : 0}) + + " parse text from a List of lines and return a quickfix list + :let myList = ["a.java:10:L10", "b.java:20:L20"] + :echo getqflist({'lines' : myList}).items + + " parse text using a custom 'efm' and return a quickfix list + :echo getqflist({'lines' : ['a.c#10#Line 10'], 'efm':'%f#%l#%m'}).items + + " get the quickfix list window id + :echo getqflist({'winid' : 0}).winid + + " get the context of the current location list + :echo getloclist(0, {'context' : 0}).context + + " get the location list window id of the third window + :echo getloclist(3, {'winid' : 0}).winid +< + *setqflist-examples* +The |setqflist()| and |setloclist()| functions can be used to set the various +attributes of a quickfix and location list respectively. Some examples for +using these functions are below: +> + " create an empty quickfix list with a title and a context + :let t = 'Search results' + :let c = {'cmd' : 'grep'} + :call setqflist([], ' ', {'title' : t, 'context' : c}) + + " set the title of the current quickfix list + :call setqflist([], 'a', {'title' : 'Mytitle'}) + + " set the context of a quickfix list specified by an identifier + :call setqflist([], 'a', {'id' : qfid, 'context' : {'val' : 100}}) + + " create a new quickfix list from a command output + :call setqflist([], ' ', {'lines' : systemlist('grep -Hn main *.c')}) + + " parse text using a custom efm and add to a particular quickfix list + :call setqflist([], 'a', {'id' : qfid, + \ 'lines' : ["a.c#10#L10", "b.c#20#L20"], 'efm':'%f#%l#%m'}) + + " add items to the quickfix list specified by an identifier + :let newItems = [{'filename' : 'a.txt', 'lnum' : 10, 'text' : "Apple"}, + \ {'filename' : 'b.txt', 'lnum' : 20, 'text' : "Orange"}] + :call setqflist([], 'a', {'id' : qfid, 'items' : newItems}) + + " empty a quickfix list specified by an identifier + :call setqflist([], 'r', {'id' : qfid, 'items' : []}) + + " free all the quickfix lists in the stack + :call setqflist([], 'f') + + " set the title of the fourth quickfix list + :call setqflist([], 'a', {'nr' : 4, 'title' : 'SomeTitle'}) + + " create a new quickfix list at the end of the stack + :call setqflist([], ' ', {'nr' : '$', + \ 'lines' : systemlist('grep -Hn class *.java')}) + + " create a new location list from a command output + :call setloclist(0, [], ' ', {'lines' : systemlist('grep -Hn main *.c')}) + + " replace the location list entries for the third window + :call setloclist(3, [], 'r', {'items' : newItems}) +< ============================================================================= 3. Using more than one list of errors *quickfix-error-lists* @@ -577,6 +740,14 @@ list, one newer list is overwritten. This is especially useful if you are browsing with ":grep" |grep|. If you want to keep the more recent error lists, use ":cnewer 99" first. +To get the number of lists in the quickfix and location list stack, you can +use the |getqflist()| and |getloclist()| functions respectively with the list +number set to the special value '$'. Examples: > + echo getqflist({'nr' : '$'}).nr + echo getloclist(3, {'nr' : '$'}).nr +To get the number of the current list in the stack: > + echo getqflist({'nr' : 0}).nr +< ============================================================================= 4. Using :make *:make_makeprg* @@ -1069,7 +1240,7 @@ or > to indicate the column of the error. This is to be used in a multi-line error message. See |errorformat-javac| for a useful example. -The "%s" conversion specifies the text to search for to locate the error line. +The "%s" conversion specifies the text to search for, to locate the error line. The text is used as a literal string. The anchors "^" and "$" are added to the text to locate the error line exactly matching the search text and the text is prefixed with the "\V" atom to make it "very nomagic". The "%s" @@ -1338,6 +1509,22 @@ The backslashes before the pipe character are required to avoid it to be recognized as a command separator. The backslash before each space is required for the set command. + *cfilter-plugin* *Cfilter* *Lfilter* +If you have too many matching messages, you can use the cfilter plugin to +reduce the number of entries. Load the plugin with: > + packadd cfilter + +Then you can use these command: > + :Cfilter[!] /{pat}/ + :Lfilter[!] /{pat}/ + +:Cfilter creates a new quickfix list from entries matching {pat} in the +current quickfix list. Both the file name and the text of the entries are +matched against {pat}. If ! is supplied, then entries not matching {pat} are +used. + +:Lfilter does the same as :Cfilter but operates on the current location list. + ============================================================================= 8. The directory stack *quickfix-directory-stack* @@ -1575,4 +1762,4 @@ by Vim. - vim:noet:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt index 7067c60d2f..cf0efd7a75 100644 --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -614,7 +614,8 @@ Short explanation of each option: *option-list* 'backupext' 'bex' extension used for the backup file 'backupskip' 'bsk' no backup for files that match these patterns 'balloondelay' 'bdlay' delay in mS before a balloon may pop up -'ballooneval' 'beval' switch on balloon evaluation +'ballooneval' 'beval' switch on balloon evaluation in the GUI +'balloonevalterm' 'bevalterm' switch on balloon evaluation in the terminal 'balloonexpr' 'bexpr' expression to show in balloon 'belloff' 'bo' do not ring the bell for these reasons 'binary' 'bin' read/write/edit file in binary mode @@ -809,6 +810,7 @@ Short explanation of each option: *option-list* 'printoptions' 'popt' controls the format of :hardcopy output 'prompt' 'prompt' enable prompt in Ex mode 'pumheight' 'ph' maximum height of the popup menu +'pumwidth' 'pw' minimum width of the popup menu 'pythondll' name of the Python 2 dynamic library 'pythonthreedll' name of the Python 3 dynamic library 'quoteescape' 'qe' escape characters used in a string @@ -906,6 +908,8 @@ Short explanation of each option: *option-list* 'undoreload' 'ur' max nr of lines to save for undo on a buffer reload 'updatecount' 'uc' after this many characters flush swap file 'updatetime' 'ut' after this many milliseconds flush swap file +'varsofttabstop' 'vsts' a list of number of spaces when typing <Tab> +'vartabstop' 'vts' a list of number of spaces for <Tab>s 'verbose' 'vbs' give informative messages 'verbosefile' 'vfile' file to write messages in 'viewdir' 'vdir' directory where to store files with :mkview @@ -1372,4 +1376,4 @@ Context-sensitive completion on the command-line: |zN| zN fold normal set 'foldenable' |zi| zi invert 'foldenable' - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/recover.txt b/runtime/doc/recover.txt index ffea514870..654a9cde7b 100644 --- a/runtime/doc/recover.txt +++ b/runtime/doc/recover.txt @@ -170,4 +170,4 @@ Once you are sure the recovery is ok delete the swap file. Otherwise, you will continue to get warning messages that the ".swp" file already exists. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/remote.txt b/runtime/doc/remote.txt index 039d8b582e..142d7b492a 100644 --- a/runtime/doc/remote.txt +++ b/runtime/doc/remote.txt @@ -169,7 +169,8 @@ name on the 'VimRegistry' property on the root window. A non GUI Vim with access to the X11 display (|xterm-clipboard| enabled), can also act as a command server if a server name is explicitly given with the ---servername argument. +--servername argument, or when Vim was build with the |+autoservername| +feature. An empty --servername argument will cause the command server to be disabled. @@ -190,4 +191,4 @@ When using gvim, the --remote-wait only works properly this way: > start /w gvim --remote-wait file.txt < - vim:tw=78:sw=4:ts=8:ft=help:norl: + vim:tw=78:sw=4:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt index 42889cca50..82a8c4c5cc 100644 --- a/runtime/doc/repeat.txt +++ b/runtime/doc/repeat.txt @@ -226,6 +226,10 @@ For writing a Vim script, see chapter 41 of the user manual |usr_41.txt|. If the directory pack/*/opt/{name}/after exists it is added at the end of 'runtimepath'. + If loading packages from "pack/*/start" was skipped, + then this directory is searched first: + pack/*/start/{name} ~ + Note that {name} is the directory name, not the name of the .vim file. All the files matching the pattern pack/*/opt/{name}/plugin/**/*.vim ~ @@ -958,4 +962,4 @@ mind there are various things that may clobber the results: - The "self" time is wrong when a function is used recursively. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/rileft.txt b/runtime/doc/rileft.txt index ba9bb1eba7..8fd67c9602 100644 --- a/runtime/doc/rileft.txt +++ b/runtime/doc/rileft.txt @@ -112,4 +112,4 @@ o When both 'rightleft' and 'revins' are on: 'textwidth' does not work. o There is no full bidirectionality (bidi) support. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/russian.txt b/runtime/doc/russian.txt index 8c6076146c..724c4f9454 100644 --- a/runtime/doc/russian.txt +++ b/runtime/doc/russian.txt @@ -68,4 +68,4 @@ In order to use the Russian documentation, make sure you have set the releases of gettext. =============================================================================== - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/scroll.txt b/runtime/doc/scroll.txt index 99ebd26db3..7906214111 100644 --- a/runtime/doc/scroll.txt +++ b/runtime/doc/scroll.txt @@ -27,6 +27,7 @@ seen): *CTRL-E* CTRL-E Scroll window [count] lines downwards in the buffer. + The text moves upwards on the screen. Mnemonic: Extra lines. *CTRL-D* @@ -65,6 +66,7 @@ seen): *CTRL-Y* CTRL-Y Scroll window [count] lines upwards in the buffer. + The text moves downwards on the screen. Note: When using the MS-Windows key bindings CTRL-Y is remapped to redo. @@ -248,4 +250,4 @@ the scroll wheel move one line or half a page in Normal mode: > :map <S-ScrollWheelDown> <C-D> You can also use Alt and Ctrl modifiers. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/sign.txt b/runtime/doc/sign.txt index 7cdb460943..a26c0a3ac9 100644 --- a/runtime/doc/sign.txt +++ b/runtime/doc/sign.txt @@ -196,4 +196,4 @@ JUMPING TO A SIGN *:sign-jump* *E157* have a name. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt index 718b5d4c1f..875f3f2c08 100644 --- a/runtime/doc/spell.txt +++ b/runtime/doc/spell.txt @@ -1733,4 +1733,4 @@ This isn't ideal, because the longer Vim is running the higher the counts become. But in practice it is a noticeable improvement over not using the word count. - vim:tw=78:sw=4:ts=8:ft=help:norl: + vim:tw=78:sw=4:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/sponsor.txt b/runtime/doc/sponsor.txt index cfdf21abea..cb6bdad358 100644 --- a/runtime/doc/sponsor.txt +++ b/runtime/doc/sponsor.txt @@ -213,4 +213,4 @@ is done. But a receipt is possible. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt index aebb0ef6ec..1da2441929 100644 --- a/runtime/doc/starting.txt +++ b/runtime/doc/starting.txt @@ -1101,6 +1101,8 @@ SHADA FILE NAME *shada-file-name* - The "-i" Vim argument can be used to set another file name, |-i|. When the file name given is "NONE" (all uppercase), no ShaDa file is ever read or written. Also not for the commands below! +- The 'viminfofile' option can be used like the "-i" argument. In fact, the + value form the "-i" argument is stored in the 'viminfofile' option. - For the commands below, another file name can be given, overriding the default and the name given with 'shada' or "-i" (unless it's NONE). diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index c3664ece18..e96b109ceb 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1947,7 +1947,7 @@ set "lite_minlines" to the value you desire. Example: > LPC *lpc.vim* *ft-lpc-syntax* -LPC stands for a simple, memory-efficient language: Lars Pensj| C. The +LPC stands for a simple, memory-efficient language: Lars Pensjö C. The file name of LPC is usually *.c. Recognizing these files as LPC would bother users writing only C programs. If you want to use LPC syntax in Vim, you should set a variable in your vimrc file: > @@ -2748,13 +2748,10 @@ Ruby syntax will perform spellchecking of strings if you define SCHEME *scheme.vim* *ft-scheme-syntax* -By default only R5RS keywords are highlighted and properly indented. +By default only R7RS keywords are highlighted and properly indented. -MzScheme-specific stuff will be used if b:is_mzscheme or g:is_mzscheme -variables are defined. - -Also scheme.vim supports keywords of the Chicken Scheme->C compiler. Define -b:is_chicken or g:is_chicken, if you need them. +scheme.vim also supports extensions of the CHICKEN Scheme->C compiler. +Define b:is_chicken or g:is_chicken, if you need them. SDL *sdl.vim* *ft-sdl-syntax* @@ -2848,17 +2845,17 @@ This covers syntax highlighting for the older Unix (Bourne) sh, and newer shells such as bash, dash, posix, and the Korn shells. Vim attempts to determine which shell type is in use by specifying that -various filenames are of specific types: > +various filenames are of specific types, e.g.: > ksh : .kshrc* *.ksh bash: .bashrc* bashrc bash.bashrc .bash_profile* *.bash < -If none of these cases pertain, then the first line of the file is examined -(ex. looking for /bin/sh /bin/ksh /bin/bash). If the first line specifies a -shelltype, then that shelltype is used. However some files (ex. .profile) are -known to be shell files but the type is not apparent. Furthermore, on many -systems sh is symbolically linked to "bash" (Linux, Windows+cygwin) or "ksh" -(Posix). +See $VIMRUNTIME/filetype.vim for the full list of patterns. If none of these +cases pertain, then the first line of the file is examined (ex. looking for +/bin/sh /bin/ksh /bin/bash). If the first line specifies a shelltype, then +that shelltype is used. However some files (ex. .profile) are known to be +shell files but the type is not apparent. Furthermore, on many systems sh is +symbolically linked to "bash" (Linux, Windows+cygwin) or "ksh" (Posix). One may specify a global default by instantiating one of the following variables in your vimrc: @@ -4585,7 +4582,9 @@ in their own color. runtime colors/evening.vim hi Statement ctermfg=Blue guifg=Blue -< After the color scheme has been loaded the +< Before the color scheme will be loaded the + |ColorSchemePre| autocommand event is triggered. + After the color scheme has been loaded the |ColorScheme| autocommand event is triggered. For info about writing a colorscheme file: > :edit $VIMRUNTIME/colors/README.txt @@ -4947,6 +4946,11 @@ StatusLine status line of current window StatusLineNC status lines of not-current windows Note: if this is equal to "StatusLine" Vim will use "^^^" in the status line of the current window. + *hl-StatusLineTerm* +StatusLineTerm status line of current window, if it is a |terminal| window. + *hl-StatusLineTermNC* +StatusLineTermNC status lines of not-current windows that is a |terminal| + window. *hl-TabLine* TabLine tab pages line, not active tab page label *hl-TabLineFill* @@ -5250,4 +5254,4 @@ literal text specify the size of that text (in bytes): "<\@1<=span" Matches the same, but only tries one byte before "span". - vim:tw=78:sw=4:ts=8:ft=help:norl: + vim:tw=78:sw=4:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/tabpage.txt b/runtime/doc/tabpage.txt index 6be7cf9746..a0459d27bc 100644 --- a/runtime/doc/tabpage.txt +++ b/runtime/doc/tabpage.txt @@ -203,7 +203,8 @@ gT Go to the previous tab page. Wraps around from the first one :tabN[ext] {count} {count}<C-PageUp> {count}gT Go {count} tab pages back. Wraps around from the first one - to the last one. + to the last one. Note that the use of {count} is different + from |:tabnext|, where it is used as the tab page number. :tabr[ewind] *:tabfir* *:tabfirst* *:tabr* *:tabrewind* :tabfir[st] Go to the first tab page. @@ -230,8 +231,10 @@ REORDERING TAB PAGES: :tabm[ove] [N] *:tabm* *:tabmove* :[N]tabm[ove] Move the current tab page to after tab page N. Use zero to - make the current tab page the first one. Without N the tab - page is made the last one. > + make the current tab page the first one. N is counted before + the move, thus if the second tab is the current one, + `:tabmove 1` and `:tabmove 2` have no effect. + Without N the tab page is made the last one. > :.tabmove " do nothing :-tabmove " move the tab page to the left :+tabmove " move the tab page to the right @@ -463,4 +466,4 @@ If you want to show something specific for a tab page, you might want to use a tab page local variable. |t:var| - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/tagsrch.txt b/runtime/doc/tagsrch.txt index f0ad2cfd43..367da7750e 100644 --- a/runtime/doc/tagsrch.txt +++ b/runtime/doc/tagsrch.txt @@ -31,12 +31,12 @@ An easy way back is with the CTRL-T command. Also read about the tag stack below. *:ta* *:tag* *E426* *E429* -:[count]ta[g][!] {ident} - Jump to the definition of {ident}, using the - information in the tags file(s). Put {ident} in the +:[count]ta[g][!] {name} + Jump to the definition of {name}, using the + information in the tags file(s). Put {name} in the tag stack. See |tag-!| for [!]. - {ident} can be a regexp pattern, see |tag-regexp|. - When there are several matching tags for {ident}, jump + {name} can be a regexp pattern, see |tag-regexp|. + When there are several matching tags for {name}, jump to the [count] one. When [count] is omitted the first one is jumped to. See |tag-matchlist| for jumping to other matching tags. @@ -44,15 +44,15 @@ below. g<LeftMouse> *g<LeftMouse>* <C-LeftMouse> *<C-LeftMouse>* *CTRL-]* CTRL-] Jump to the definition of the keyword under the - cursor. Same as ":tag {ident}", where {ident} is the + cursor. Same as ":tag {name}", where {name} is the keyword under or after cursor. - When there are several matching tags for {ident}, jump + When there are several matching tags for {name}, jump to the [count] one. When no [count] is given the first one is jumped to. See |tag-matchlist| for jumping to other matching tags. *v_CTRL-]* -{Visual}CTRL-] Same as ":tag {ident}", where {ident} is the text that +{Visual}CTRL-] Same as ":tag {name}", where {name} is the text that is highlighted. *telnet-CTRL-]* @@ -76,7 +76,7 @@ When there are multiple matches for a tag, this priority is used: Note that when the current file changes, the priority list is mostly not changed, to avoid confusion when using ":tnext". It is changed when using -":tag {ident}". +":tag {name}". The ignore-case matches are not found for a ":tag" command when: - the 'ignorecase' option is off and 'tagcase' is "followic" @@ -161,7 +161,7 @@ You can get from main to FuncA by using CTRL-] on the call to FuncA. Then you can CTRL-] to get to FuncC. If you now want to go back to main you can use CTRL-T twice. Then you can CTRL-] to FuncB. -If you issue a ":ta {ident}" or CTRL-] command, this tag is inserted at the +If you issue a ":ta {name}" or CTRL-] command, this tag is inserted at the current position in the stack. If the stack was full (it can hold up to 20 entries), the oldest entry is deleted and the older entries shift one position up (their index number is decremented by one). If the last used @@ -185,14 +185,14 @@ between them. Note that these commands don't change the tag stack, they keep the same entry. *:ts* *:tselect* -:ts[elect][!] [ident] List the tags that match [ident], using the +:ts[elect][!] [name] List the tags that match [name], using the information in the tags file(s). - When [ident] is not given, the last tag name from the + When [name] is not given, the last tag name from the tag stack is used. See |tag-!| for [!]. With a '>' in the first column is indicated which is the current position in the list (if there is one). - [ident] can be a regexp pattern, see |tag-regexp|. + [name] can be a regexp pattern, see |tag-regexp|. See |tag-priority| for the priorities used in the listing. Example output: @@ -220,7 +220,7 @@ the same entry. type 'q' and enter the number. *:sts* *:stselect* -:sts[elect][!] [ident] Does ":tselect[!] [ident]" and splits the window for +:sts[elect][!] [name] Does ":tselect[!] [name]" and splits the window for the selected tag. *g]* @@ -231,11 +231,11 @@ g] Like CTRL-], but use ":tselect" instead of ":tag". identifier. *:tj* *:tjump* -:tj[ump][!] [ident] Like ":tselect", but jump to the tag directly when +:tj[ump][!] [name] Like ":tselect", but jump to the tag directly when there is only one match. *:stj* *:stjump* -:stj[ump][!] [ident] Does ":tjump[!] [ident]" and splits the window for the +:stj[ump][!] [name] Does ":tjump[!] [name]" and splits the window for the selected tag. *g_CTRL-]* @@ -267,9 +267,9 @@ g CTRL-] Like CTRL-], but use ":tjump" instead of ":tag". :tl[ast][!] Jump to last matching tag. See |tag-!| for [!]. *:lt* *:ltag* -:lt[ag][!] [ident] Jump to tag [ident] and add the matching tags to a new - location list for the current window. [ident] can be - a regexp pattern, see |tag-regexp|. When [ident] is +:lt[ag][!] [name] Jump to tag [name] and add the matching tags to a new + location list for the current window. [name] can be + a regexp pattern, see |tag-regexp|. When [name] is not given, the last tag name from the tag stack is used. The search pattern to locate the tag line is prefixed with "\V" to escape all the special @@ -300,11 +300,11 @@ the same as above, with a "p" prepended. {not available when compiled without the |+quickfix| feature} *:pts* *:ptselect* -:pts[elect][!] [ident] Does ":tselect[!] [ident]" and shows the new tag in a +:pts[elect][!] [name] Does ":tselect[!] [name]" and shows the new tag in a "Preview" window. See |:ptag| for more info. *:ptj* *:ptjump* -:ptj[ump][!] [ident] Does ":tjump[!] [ident]" and shows the new tag in a +:ptj[ump][!] [name] Does ":tjump[!] [name]" and shows the new tag in a "Preview" window. See |:ptag| for more info. *:ptn* *:ptnext* @@ -819,4 +819,4 @@ Common arguments for the commands above: < For a ":djump", ":dsplit", ":dlist" and ":dsearch" command the pattern is used as a literal string, not as a search pattern. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/tips.txt b/runtime/doc/tips.txt index 011e0f0565..1362b730b7 100644 --- a/runtime/doc/tips.txt +++ b/runtime/doc/tips.txt @@ -446,4 +446,4 @@ A slightly more advanced version is used in the |matchparen| plugin. autocmd InsertEnter * match none < - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/uganda.txt b/runtime/doc/uganda.txt index cdd677cbd5..97a67befb9 100644 --- a/runtime/doc/uganda.txt +++ b/runtime/doc/uganda.txt @@ -281,4 +281,4 @@ Address to send checks to: This address is expected to be valid for a long time. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/undo.txt b/runtime/doc/undo.txt index f8f6049119..a500e87e35 100644 --- a/runtime/doc/undo.txt +++ b/runtime/doc/undo.txt @@ -383,4 +383,4 @@ if it is not what you want do 'u.'. This will remove the contents of the first put, and repeat the put command for the second register. Repeat the 'u.' until you got what you want. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_01.txt b/runtime/doc/usr_01.txt index bc55e7cdce..f96043c409 100644 --- a/runtime/doc/usr_01.txt +++ b/runtime/doc/usr_01.txt @@ -109,4 +109,4 @@ donate part of the profit to help AIDS victims in Uganda. See |iccf|. Next chapter: |usr_02.txt| The first steps in Vim -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_02.txt b/runtime/doc/usr_02.txt index a1e3d606ec..9ebbd11ac7 100644 --- a/runtime/doc/usr_02.txt +++ b/runtime/doc/usr_02.txt @@ -687,4 +687,4 @@ Summary: *help-summary* > Next chapter: |usr_03.txt| Moving around -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_03.txt b/runtime/doc/usr_03.txt index 989914687f..2649534900 100644 --- a/runtime/doc/usr_03.txt +++ b/runtime/doc/usr_03.txt @@ -650,4 +650,4 @@ You will notice a few special marks. These include: Next chapter: |usr_04.txt| Making small changes -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_04.txt b/runtime/doc/usr_04.txt index e02a50e494..a327a09a71 100644 --- a/runtime/doc/usr_04.txt +++ b/runtime/doc/usr_04.txt @@ -511,4 +511,4 @@ else: Next chapter: |usr_05.txt| Set your settings -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_05.txt b/runtime/doc/usr_05.txt index 2485f106b4..38e858801b 100644 --- a/runtime/doc/usr_05.txt +++ b/runtime/doc/usr_05.txt @@ -317,8 +317,9 @@ when you use Vim. There are only two steps for adding a global plugin: GETTING A GLOBAL PLUGIN Where can you find plugins? +- Some are always loaded, you can see them in the directory $VIMRUNTIME/plugin. - Some come with Vim. You can find them in the directory $VIMRUNTIME/macros - and its sub-directories. + and its sub-directories and under $VIM/vimfiles/pack/dist/opt/. - Download from the net. There is a large collection on http://www.vim.org. - They are sometimes posted in a Vim |maillist|. - You could write one yourself, see |write-plugin|. @@ -609,4 +610,4 @@ This does mean there is less room to edit text, thus it's a compromise. Next chapter: |usr_06.txt| Using syntax highlighting -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_06.txt b/runtime/doc/usr_06.txt index 48f672be78..beffb92877 100644 --- a/runtime/doc/usr_06.txt +++ b/runtime/doc/usr_06.txt @@ -274,4 +274,4 @@ others look at the colored text. Next chapter: |usr_07.txt| Editing more than one file -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_07.txt b/runtime/doc/usr_07.txt index 683c9879a7..c44a54d76c 100644 --- a/runtime/doc/usr_07.txt +++ b/runtime/doc/usr_07.txt @@ -476,4 +476,4 @@ This protects you from accidentally overwriting another file. Next chapter: |usr_08.txt| Splitting windows -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_08.txt b/runtime/doc/usr_08.txt index ef91bf9c0a..559ca6f1ef 100644 --- a/runtime/doc/usr_08.txt +++ b/runtime/doc/usr_08.txt @@ -597,4 +597,4 @@ For more information about tab pages see |tab-page|. Next chapter: |usr_09.txt| Using the GUI -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_09.txt b/runtime/doc/usr_09.txt index f53076a2ec..757d13e0f3 100644 --- a/runtime/doc/usr_09.txt +++ b/runtime/doc/usr_09.txt @@ -5,9 +5,10 @@ Using the GUI -Vim works in an ordinary terminal. GVim can do the same things and a few -more. The GUI offers menus, a toolbar, scrollbars and other items. This -chapter is about these extra things that the GUI offers. +Vim works in an ordinary terminal, while gVim has a Graphical User Interface +(GUI). It can do the same things and a few more. The GUI offers menus, a +toolbar, scrollbars and other items. This chapter is about these extra things +that the GUI offers. |09.1| Parts of the GUI |09.2| Using the mouse @@ -282,4 +283,4 @@ You can tune the way Select mode works with the 'selectmode' option. Next chapter: |usr_10.txt| Making big changes -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_10.txt b/runtime/doc/usr_10.txt index 044cb1582b..3646786052 100644 --- a/runtime/doc/usr_10.txt +++ b/runtime/doc/usr_10.txt @@ -820,4 +820,4 @@ has written. To tell Vim to redraw the screen: > Next chapter: |usr_11.txt| Recovering from a crash -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_11.txt b/runtime/doc/usr_11.txt index 42aa1d9100..ad3c0de541 100644 --- a/runtime/doc/usr_11.txt +++ b/runtime/doc/usr_11.txt @@ -234,7 +234,7 @@ that file, be prepared to redo your last changes. WHAT TO DO? *swap-exists-choices* -If dialogs are supported you will be asked to select one of five choices: +If dialogs are supported you will be asked to select one of six choices: Swap file ".main.c.swp" already exists! ~ [O]pen Read-Only, (E)dit anyway, (R)ecover, (Q)uit, (A)bort, (D)elete it: ~ @@ -299,4 +299,4 @@ If you really don't want to see this message, you can add the 'A' flag to the Next chapter: |usr_12.txt| Clever tricks -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_12.txt b/runtime/doc/usr_12.txt index e87ed81c97..21efa36a25 100644 --- a/runtime/doc/usr_12.txt +++ b/runtime/doc/usr_12.txt @@ -343,4 +343,4 @@ matches and where they are. Next chapter: |usr_20.txt| Typing command-line commands quickly -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_20.txt b/runtime/doc/usr_20.txt index 3b8eeae175..8eee7aedb7 100644 --- a/runtime/doc/usr_20.txt +++ b/runtime/doc/usr_20.txt @@ -381,4 +381,4 @@ there can be only one. Next chapter: |usr_21.txt| Go away and come back -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_21.txt b/runtime/doc/usr_21.txt index cfb8c90027..99a78e7b05 100644 --- a/runtime/doc/usr_21.txt +++ b/runtime/doc/usr_21.txt @@ -488,4 +488,4 @@ For more details see |modeline|. Next chapter: |usr_22.txt| Finding the file to edit -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_22.txt b/runtime/doc/usr_22.txt index 255211f668..96fc02aaa5 100644 --- a/runtime/doc/usr_22.txt +++ b/runtime/doc/usr_22.txt @@ -397,4 +397,4 @@ can't be editing nothing! Next chapter: |usr_23.txt| Editing other files -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_23.txt b/runtime/doc/usr_23.txt index cb776d2b5c..810da05ff8 100644 --- a/runtime/doc/usr_23.txt +++ b/runtime/doc/usr_23.txt @@ -256,4 +256,4 @@ decompression. You might need to install the programs first. Next chapter: |usr_24.txt| Inserting quickly -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_24.txt b/runtime/doc/usr_24.txt index b74ed879e0..3c4ff6f55e 100644 --- a/runtime/doc/usr_24.txt +++ b/runtime/doc/usr_24.txt @@ -538,8 +538,8 @@ a 16 bit and a 32 bit number (e.g., for a Unicode character): > *24.9* Digraphs Some characters are not on the keyboard. For example, the copyright character -(©). To type these characters in Vim, you use digraphs, where two characters -represent one. To enter a ©, for example, you press three keys: > +(©). To type these characters in Vim, you use digraphs, where two characters +represent one. To enter a ©, for example, you press three keys: > CTRL-K Co @@ -549,12 +549,12 @@ To find out what digraphs are available, use the following command: > Vim will display the digraph table. Here are three lines of it: - AC ~_ 159 NS | 160 !I ¡ 161 Ct ¢ 162 Pd £ 163 Cu ¤ 164 Ye ¥ 165 ~ - BB ¦ 166 SE § 167 ': ¨ 168 Co © 169 -a ª 170 << « 171 NO ¬ 172 ~ - -- 173 Rg ® 174 'm ¯ 175 DG ° 176 +- ± 177 2S ² 178 3S ³ 179 ~ + AC ~_ 159 NS | 160 !I ¡ 161 Ct ¢ 162 Pd £ 163 Cu ¤ 164 Ye Â¥ 165 ~ + BB ¦ 166 SE § 167 ': ¨ 168 Co © 169 -a ª 170 << « 171 NO ¬ 172 ~ + --  173 Rg ® 174 'm ¯ 175 DG ° 176 +- ± 177 2S ² 178 3S ³ 179 ~ This shows, for example, that the digraph you get by typing CTRL-K Pd is the -character (£). This is character number 163 (decimal). +character (£). This is character number 163 (decimal). Pd is short for Pound. Most digraphs are selected to give you a hint about the character they will produce. If you look through the list you will understand the logic. @@ -569,9 +569,9 @@ that combination. Thus CTRL-K dP also works. Since there is no digraph for You can define your own digraphs. Example: > - :digraph a" ä + :digraph a" ä -This defines that CTRL-K a" inserts an ä character. You can also specify the +This defines that CTRL-K a" inserts an ä character. You can also specify the character with a decimal number. This defines the same digraph: > :digraph a" 228 @@ -603,4 +603,4 @@ This deletes up to the third word into register g. Next chapter: |usr_25.txt| Editing formatted text -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_25.txt b/runtime/doc/usr_25.txt index ae3d3c4422..3a58af6412 100644 --- a/runtime/doc/usr_25.txt +++ b/runtime/doc/usr_25.txt @@ -579,4 +579,4 @@ The "gR" command uses Virtual Replace mode. This preserves the layout: Next chapter: |usr_26.txt| Repeating -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_26.txt b/runtime/doc/usr_26.txt index 7b0b940da2..4e8f1979f4 100644 --- a/runtime/doc/usr_26.txt +++ b/runtime/doc/usr_26.txt @@ -207,4 +207,4 @@ start all over, use the "-W" argument. It overwrites any existing file. Next chapter: |usr_27.txt| Search commands and patterns -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_27.txt b/runtime/doc/usr_27.txt index afea67bd0b..cd01308c6e 100644 --- a/runtime/doc/usr_27.txt +++ b/runtime/doc/usr_27.txt @@ -225,9 +225,9 @@ specify a line offset, this can cause trouble. For example: > /const/-2 This finds the next word "const" and then moves two lines up. If you -use "n" to search again, Vim could start at the current position and find the same -"const" match. Then using the offset again, you would be back where you started. -You would be stuck! +use "n" to search again, Vim could start at the current position and find the +same "const" match. Then using the offset again, you would be back where you +started. You would be stuck! It could be worse: Suppose there is another match with "const" in the next line. Then repeating the forward search would find this match and move two lines up. Thus you would actually move the cursor back! @@ -560,4 +560,4 @@ and "\w" for "[0-9A-Za-z_]". Next chapter: |usr_28.txt| Folding -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_28.txt b/runtime/doc/usr_28.txt index 24e995d9ab..86aa20597e 100644 --- a/runtime/doc/usr_28.txt +++ b/runtime/doc/usr_28.txt @@ -423,4 +423,4 @@ the defined folds. Then you can delete or add folds manually. Next chapter: |usr_29.txt| Moving through programs -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_29.txt b/runtime/doc/usr_29.txt index b0cb9d7e88..3381d1870c 100644 --- a/runtime/doc/usr_29.txt +++ b/runtime/doc/usr_29.txt @@ -608,4 +608,4 @@ for the identifier. Example (cursor on "idx"): Next chapter: |usr_30.txt| Editing programs -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_30.txt b/runtime/doc/usr_30.txt index 786f2d1800..b729c7a263 100644 --- a/runtime/doc/usr_30.txt +++ b/runtime/doc/usr_30.txt @@ -640,4 +640,4 @@ For more details see |format-comments|. Next chapter: |usr_31.txt| Exploiting the GUI -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_31.txt b/runtime/doc/usr_31.txt index 2354e27b42..fb9a4fd223 100644 --- a/runtime/doc/usr_31.txt +++ b/runtime/doc/usr_31.txt @@ -269,4 +269,4 @@ another font size, for example. Next chapter: |usr_32.txt| The undo tree -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_32.txt b/runtime/doc/usr_32.txt index fca802872d..8b489ea1e0 100644 --- a/runtime/doc/usr_32.txt +++ b/runtime/doc/usr_32.txt @@ -177,4 +177,4 @@ use the |undotree()| function. To see what it returns: > Next chapter: |usr_40.txt| Make new commands -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_40.txt b/runtime/doc/usr_40.txt index 4092af703e..e5d55fb857 100644 --- a/runtime/doc/usr_40.txt +++ b/runtime/doc/usr_40.txt @@ -654,4 +654,4 @@ To set it back to the normal behavior, make 'eventignore' empty: > Next chapter: |usr_41.txt| Write a Vim script -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt index 7978074550..4adb69aaee 100644 --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -882,9 +882,11 @@ Interactive: *interactive-functions* GUI: *gui-functions* getfontname() get name of current font being used - getwinposx() X position of the GUI Vim window - getwinposy() Y position of the GUI Vim window + getwinpos() position of the Vim window + getwinposx() X position of the Vim window + getwinposy() Y position of the Vim window balloon_show() set the balloon content + balloon_split() split a message for a balloon Vim server: *server-functions* serverlist() return the list of server names @@ -900,6 +902,7 @@ Vim server: *server-functions* Window size and position: *window-size-functions* winheight() get height of a specific window winwidth() get width of a specific window + win_screenpos() get screen position of a window winrestcmd() return command to restore window sizes winsaveview() get view of current window winrestview() restore saved view of current window @@ -919,7 +922,8 @@ Testing: *test-functions* assert_false() assert that an expression is false assert_true() assert that an expression is true assert_exception() assert that a command throws an exception - assert_fails() assert that a function call fails + assert_beeps() assert that a command beeps + assert_fails() assert that a command fails Timers: *timer-functions* timer_start() create a timer @@ -2510,4 +2514,4 @@ utility is recommended. Next chapter: |usr_42.txt| Add new menus -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_42.txt b/runtime/doc/usr_42.txt index ad04555f8c..501f02e745 100644 --- a/runtime/doc/usr_42.txt +++ b/runtime/doc/usr_42.txt @@ -355,4 +355,4 @@ is... Next chapter: |usr_43.txt| Using filetypes -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_43.txt b/runtime/doc/usr_43.txt index 765a525692..04e9f9c000 100644 --- a/runtime/doc/usr_43.txt +++ b/runtime/doc/usr_43.txt @@ -175,4 +175,4 @@ and sources a script or executes a function to check the contents of the file. Next chapter: |usr_44.txt| Your own syntax highlighted -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_44.txt b/runtime/doc/usr_44.txt index b06557b950..722c3de26c 100644 --- a/runtime/doc/usr_44.txt +++ b/runtime/doc/usr_44.txt @@ -716,4 +716,4 @@ up scrolling backwards and CTRL-L. Next chapter: |usr_45.txt| Select your language -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_45.txt b/runtime/doc/usr_45.txt index 9bbbe82113..ae2aae7596 100644 --- a/runtime/doc/usr_45.txt +++ b/runtime/doc/usr_45.txt @@ -392,4 +392,4 @@ Don't type the spaces. See |i_CTRL-V_digit| for the details. ============================================================================== -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/usr_toc.txt b/runtime/doc/usr_toc.txt index ed14d78d22..148dd161ac 100644 --- a/runtime/doc/usr_toc.txt +++ b/runtime/doc/usr_toc.txt @@ -335,4 +335,4 @@ Make Vim work as you like it. ============================================================================== -Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl: +Copyright: see |manual-copyright| vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt index 9412899ea3..917419e0f5 100644 --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -381,6 +381,7 @@ N *+virtualedit* |'virtualedit'| S *+visual* Visual mode |Visual-mode| Always enabled since 7.4.200. N *+visualextra* extra Visual mode commands |blockwise-operators| N *+vreplace* |gR| and |gr| + *+vtp* on MS-Windows console: support for 'termguicolors' N *+wildignore* |'wildignore'| N *+wildmenu* |'wildmenu'| *+windows* more than one window diff --git a/runtime/doc/vi_diff.txt b/runtime/doc/vi_diff.txt index bf90fe1754..d908f484c6 100644 --- a/runtime/doc/vi_diff.txt +++ b/runtime/doc/vi_diff.txt @@ -363,4 +363,4 @@ Move cursor beyond lines. and figures easily. - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/visual.txt b/runtime/doc/visual.txt index 1731bbd030..252a1ca8b8 100644 --- a/runtime/doc/visual.txt +++ b/runtime/doc/visual.txt @@ -524,4 +524,4 @@ g CTRL-H Start Select mode, blockwise. This is like CTRL-V, but starts Select mode instead of Visual mode. Mnemonic: "get Highlighted". - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt index e83377471c..44464c1cef 100644 --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -1046,10 +1046,8 @@ list of buffers. |unlisted-buffer| :%bdelete " delete all buffers < :bdelete[!] {bufname} *E93* *E94* - Like ":bdelete[!] [N]", but buffer given by name. Note that a - buffer whose name is a number cannot be referenced by that - name; use the buffer number instead. Insert a backslash - before a space in a buffer name. + Like ":bdelete[!] [N]", but buffer given by name, see + |{bufname}|. :bdelete[!] N1 N2 ... Do ":bdelete[!]" for buffer N1, N2, etc. The arguments can be @@ -1085,10 +1083,8 @@ list of buffers. |unlisted-buffer| into a loaded buffer. :bunload[!] {bufname} - Like ":bunload[!] [N]", but buffer given by name. Note that a - buffer whose name is a number cannot be referenced by that - name; use the buffer number instead. Insert a backslash - before a space in a buffer name. + Like ":bunload[!] [N]", but buffer given by name. + Also see |{bufname}|. :N,Mbunload[!] Do ":bunload[!]" for all buffers in the range N to M |inclusive|. @@ -1106,10 +1102,16 @@ list of buffers. |unlisted-buffer| list, without setting the 'buflisted' flag. Also see |+cmd|. -:[N]b[uffer][!] [+cmd] {bufname} - Edit buffer for {bufname} from the buffer list. See - |:buffer-!| for [!]. This will also edit a buffer that is not - in the buffer list, without setting the 'buflisted' flag. +:[N]b[uffer][!] [+cmd] {bufname} *{bufname}* + Edit buffer for {bufname} from the buffer list. A partial + name also works, so long as it is unique in the list of + buffers. + Note that a buffer whose name is a number cannot be referenced + by that name; use the buffer number instead. + Insert a backslash before a space in a buffer name. + See |:buffer-!| for [!]. + This will also edit a buffer that is not in the buffer list, + without setting the 'buflisted' flag. Also see |+cmd|. :[N]sb[uffer] [+cmd] [N] *:sb* *:sbuffer* @@ -1121,7 +1123,7 @@ list of buffers. |unlisted-buffer| Also see |+cmd|. :[N]sb[uffer] [+cmd] {bufname} - Split window and edit buffer for {bufname} from the buffer + Split window and edit buffer for |{bufname}| from the buffer list. This will also edit a buffer that is not in the buffer list, without setting the 'buflisted' flag. Note: If what you want to do is split the buffer, make a copy @@ -1271,4 +1273,4 @@ unlisted The buffer is not in the buffer list. It is not used for :setlocal nobuflisted < - vim:tw=78:ts=8:ft=help:norl: + vim:tw=78:ts=8:noet:ft=help:norl: |