From 8f3f58f2c361f1b7241128d9821f88d8a30aa066 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Wed, 6 Jan 2010 20:52:26 +0100 Subject: Update documentation files. --- runtime/doc/autocmd.txt | 20 +- runtime/doc/change.txt | 59 +++- runtime/doc/cmdline.txt | 25 +- runtime/doc/debug.txt | 25 +- runtime/doc/develop.txt | 6 +- runtime/doc/diff.txt | 17 +- runtime/doc/editing.txt | 22 +- runtime/doc/eval.txt | 145 ++++---- runtime/doc/evim-pl.1 | 10 +- runtime/doc/evim-pl.UTF-8.1 | 10 +- runtime/doc/fold.txt | 4 +- runtime/doc/ft_ada.txt | 46 +-- runtime/doc/ft_sql.txt | 91 ++--- runtime/doc/gui.txt | 14 +- runtime/doc/gui_x11.txt | 17 +- runtime/doc/hangulin.txt | 8 +- runtime/doc/help.txt | 1 + runtime/doc/if_ole.txt | 4 +- runtime/doc/if_pyth.txt | 4 +- runtime/doc/if_ruby.txt | 4 +- runtime/doc/if_tcl.txt | 20 +- runtime/doc/indent.txt | 5 +- runtime/doc/index.txt | 10 +- runtime/doc/insert.txt | 21 +- runtime/doc/intro.txt | 6 +- runtime/doc/map.txt | 23 +- runtime/doc/mbyte.txt | 32 +- runtime/doc/message.txt | 16 +- runtime/doc/motion.txt | 23 +- runtime/doc/options.txt | 121 ++++--- runtime/doc/os_390.txt | 6 +- runtime/doc/os_vms.txt | 40 +-- runtime/doc/pattern.txt | 43 ++- runtime/doc/pi_getscript.txt | 48 ++- runtime/doc/pi_netrw.txt | 587 ++++++++++++++++++++++++-------- runtime/doc/pi_tar.txt | 41 ++- runtime/doc/pi_vimball.txt | 70 ++-- runtime/doc/print.txt | 4 +- runtime/doc/quickfix.txt | 12 +- runtime/doc/quickref.txt | 8 +- runtime/doc/quotes.txt | 2 +- runtime/doc/recover.txt | 4 +- runtime/doc/repeat.txt | 8 +- runtime/doc/spell.txt | 4 +- runtime/doc/starting.txt | 44 +-- runtime/doc/syntax.txt | 87 +++-- runtime/doc/tags | 86 ++++- runtime/doc/tagsrch.txt | 8 +- runtime/doc/term.txt | 17 +- runtime/doc/tips.txt | 30 +- runtime/doc/todo.txt | 729 ++++++++++++++++++++++++++++++++++------ runtime/doc/uganda.txt | 13 +- runtime/doc/undo.txt | 6 +- runtime/doc/usr_04.txt | 4 +- runtime/doc/usr_05.txt | 6 +- runtime/doc/usr_06.txt | 8 +- runtime/doc/usr_11.txt | 12 +- runtime/doc/usr_25.txt | 4 +- runtime/doc/usr_31.txt | 2 +- runtime/doc/usr_43.txt | 5 +- runtime/doc/usr_44.txt | 14 +- runtime/doc/usr_45.txt | 6 +- runtime/doc/usr_90.txt | 14 +- runtime/doc/various.txt | 10 +- runtime/doc/version5.txt | 8 +- runtime/doc/version7.txt | 10 +- runtime/doc/vim-fr.1 | 4 +- runtime/doc/vim-fr.UTF-8.1 | 4 +- runtime/doc/vim-pl.1 | 47 +-- runtime/doc/vim-pl.UTF-8.1 | 47 +-- runtime/doc/vim-ru.1 | 144 ++++---- runtime/doc/vim-ru.UTF-8.1 | 144 ++++---- runtime/doc/vimdiff-fr.1 | 8 +- runtime/doc/vimdiff-fr.UTF-8.1 | 8 +- runtime/doc/vimdiff-pl.1 | 14 +- runtime/doc/vimdiff-pl.UTF-8.1 | 14 +- runtime/doc/vimdiff-ru.1 | 4 +- runtime/doc/vimdiff-ru.UTF-8.1 | 4 +- runtime/doc/vimtutor-fr.1 | 6 +- runtime/doc/vimtutor-fr.UTF-8.1 | 6 +- runtime/doc/vimtutor-pl.1 | 11 +- runtime/doc/vimtutor-pl.UTF-8.1 | 11 +- runtime/doc/vimtutor.1 | 4 +- runtime/doc/vimtutor.man | 4 +- runtime/doc/visual.txt | 10 +- runtime/doc/windows.txt | 16 +- runtime/doc/xxd-fr.1 | 4 +- runtime/doc/xxd-fr.UTF-8.1 | 4 +- runtime/doc/xxd-pl.1 | 40 +-- runtime/doc/xxd-pl.UTF-8.1 | 40 +-- 90 files changed, 2371 insertions(+), 1036 deletions(-) diff --git a/runtime/doc/autocmd.txt b/runtime/doc/autocmd.txt index 14d64ed9b..20b5e6a48 100644 --- a/runtime/doc/autocmd.txt +++ b/runtime/doc/autocmd.txt @@ -1,4 +1,4 @@ -*autocmd.txt* For Vim version 7.2. Last change: 2008 Jun 27 +*autocmd.txt* For Vim version 7.2. Last change: 2009 Nov 25 VIM REFERENCE MANUAL by Bram Moolenaar @@ -59,10 +59,10 @@ Note: The ":autocmd" command cannot be followed by another command, since any :au[tocmd] [group] {event} {pat} [nested] {cmd} Add {cmd} to the list of commands that Vim will execute automatically on {event} for a file matching - {pat}. 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]. + {pat} |autocmd-patterns|. + 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]. The special pattern or defines a buffer-local autocommand. See |autocmd-buflocal|. @@ -551,7 +551,7 @@ FileChangedShell When Vim notices that the modification time of buffer that was changed "". NOTE: The commands must not change the current buffer, jump to another buffer or delete a - buffer. *E246* + buffer. *E246* *E811* NOTE: This event never nests, to avoid an endless loop. This means that while executing commands for the FileChangedShell event no @@ -835,9 +835,9 @@ The file pattern {pat} is tested for a match against the file name in one of two ways: 1. When there is no '/' in the pattern, Vim checks for a match against only the tail part of the file name (without its leading directory path). -2. When there is a '/' in the pattern, Vim checks for a match against the - both short file name (as you typed it) and the full file name (after - expanding it to a full path and resolving symbolic links). +2. When there is a '/' in the pattern, Vim checks for a match against both the + short file name (as you typed it) and the full file name (after expanding + it to a full path and resolving symbolic links). The special pattern or is used for buffer-local autocommands |autocmd-buflocal|. This pattern is not matched against the name @@ -1052,7 +1052,7 @@ option will not cause any commands to be executed. *:doautoa* *:doautoall* :doautoa[ll] [group] {event} [fname] Like ":doautocmd", but apply the autocommands to each - loaded buffer. Note that {fname} is used to select + loaded buffer. Note that [fname] is used to select the autocommands, not the buffers to which they are applied. Careful: Don't use this for autocommands that delete a diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt index 440e6b545..f493e10e8 100644 --- a/runtime/doc/change.txt +++ b/runtime/doc/change.txt @@ -1,4 +1,4 @@ -*change.txt* For Vim version 7.2. Last change: 2008 Jul 24 +*change.txt* For Vim version 7.2. Last change: 2009 Nov 11 VIM REFERENCE MANUAL by Bram Moolenaar @@ -506,9 +506,9 @@ comment (starting with '"') after the ":!" command. {filter}. Vim replaces the optional bangs with the latest given command and appends the optional [arg]. Vim saves the output of the filter command in a - temporary file and then reads the file into the - buffer. Vim uses the 'shellredir' option to redirect - the filter output to the temporary file. + temporary file and then reads the file into the buffer + |tempfile|. Vim uses the 'shellredir' option to + redirect the filter output to the temporary file. However, if the 'shelltemp' option is off then pipes are used when possible (on Unix). When the 'R' flag is included in 'cpoptions' marks in @@ -524,7 +524,9 @@ comment (starting with '"') after the ":!" command. option is empty (this is the default), use the internal formatting function |C-indenting|. But when 'indentexpr' is not empty, it will be used instead - |indent-expression|. + |indent-expression|. When Vim was compiled without + internal formatting then the "indent" program is used + as a last resort. *==* == Filter [count] lines like with ={motion}. @@ -534,6 +536,22 @@ comment (starting with '"') after the ":!" command. {not in Vi} + *tempfile* *setuid* +Vim uses temporary files for filtering, generating diffs and also for +tempname(). For Unix, the file will be in a private directory (only +accessible by the current user) to avoid security problems (e.g., a symlink +attack or other people reading your file). When Vim exits the directory and +all files in it are deleted. When Vim has the setuid bit set this may cause +problems, the temp file is owned by the setuid user but the filter command +probably runs as the original user. +On MS-DOS and OS/2 the first of these directories that works is used: $TMP, +$TEMP, c:\TMP, c:\TEMP. +For Unix the list of directories is: $TMPDIR, /tmp, current-dir, $HOME. +For MS-Windows the GetTempFileName() system function is used. +For other systems the tmpnam() library function is used. + + + 4.2 Substitute *:substitute* *:s* *:su* :[range]s[ubstitute]/{pattern}/{string}/[flags] [count] @@ -861,7 +879,10 @@ inside of strings can change! Also see 'softtabstop' option. > *:reg* *:registers* :reg[isters] Display the contents of all numbered and named - registers. {not in Vi} + registers. If a register is written to for |:redir| + it will not be listed. + {not in Vi} + :reg[isters] {arg} Display the contents of the numbered and named registers that are mentioned in {arg}. For example: > @@ -994,6 +1015,11 @@ register. With blockwise selection it also depends on the size of the block and whether the corners are on an existing character. (Implementation detail: it actually works by first putting the register after the selection and then deleting the selection.) +The previously selected text is put in the unnamed register. If you want to +put the same text into a Visual selection several times you need to use +another register. E.g., yank the text to copy, Visually select the text to +replace and use "0p . You can repeat this as many times as you like, the +unnamed register will be changed each time. *blockwise-register* If you use a blockwise Visual mode command to get the text into the register, @@ -1031,8 +1057,10 @@ There are nine types of registers: *registers* *E354* Vim fills this register with text deleted with the "d", "c", "s", "x" commands or copied with the yank "y" command, regardless of whether or not a specific register was used (e.g. "xdd). This is like the unnamed register is pointing -to the last used register. An exception is the '_' register: "_dd does not -store the deleted text in any register. +to the last used register. Thus when appending using an uppercase register +name, the unnamed register contains the same text as the named register. +An exception is the '_' register: "_dd does not store the deleted text in any +register. Vim uses the contents of the unnamed register for any put command (p or P) which does not specify a register. Additionally you can access it with the name '"'. This means you have to type two double quotes. Writing to the "" @@ -1098,11 +1126,16 @@ normal command-line editing commands are available, including a special history for expressions. When you end the command-line by typing , Vim computes the result of the expression. If you end it with , Vim abandons the expression. If you do not enter an expression, Vim uses the previous -expression (like with the "/" command). The expression must evaluate to a -string. If the result is a number it's turned into a string. A List, -Dictionary or FuncRef results in an error message (use string() to convert). -If the "= register is used for the "p" command, the string is split up at -characters. If the string ends in a , it is regarded as a linewise +expression (like with the "/" command). + +The expression must evaluate to a String. A Number is always automatically +converted to a String. For the "p" and ":put" command, if the result is a +Float it's converted into a String. If the result is a List each element is +turned into a String and used as a line. A Dictionary or FuncRef results in +an error message (use string() to convert). + +If the "= register is used for the "p" command, the String is split up at +characters. If the String ends in a , it is regarded as a linewise register. {not in Vi} 7. Selection and drop registers "*, "+ and "~ diff --git a/runtime/doc/cmdline.txt b/runtime/doc/cmdline.txt index c87e61c08..b98ded166 100644 --- a/runtime/doc/cmdline.txt +++ b/runtime/doc/cmdline.txt @@ -1,4 +1,4 @@ -*cmdline.txt* For Vim version 7.2. Last change: 2008 Sep 18 +*cmdline.txt* For Vim version 7.2. Last change: 2009 Oct 25 VIM REFERENCE MANUAL by Bram Moolenaar @@ -118,8 +118,6 @@ CTRL-U Remove all characters between the cursor position and preferred behavior, add the following to your .vimrc: > :cnoremap < - Note: if the command-line becomes empty with one of the - delete commands, Command-line mode is quit. *c_* Toggle between insert and overstrike. {not in Vi} @@ -485,14 +483,14 @@ And this in your .vimrc: > The Ex commands have a few specialties: - *:quote* + *:quote* *:comment* '"' at the start of a line causes the whole line to be ignored. '"' after a command causes the rest of the line to be ignored. This can be used to add comments. Example: > :set ai "set 'autoindent' option It is not possible to add a comment to a shell command ":!cmd" or to the -":map" command and friends, because they see the '"' as part of their -argument. +":map" command and a few others, because they see the '"' as part of their +argument. This is mentioned where the command is explained. *:bar* *:\bar* '|' can be used to separate commands, so you can give multiple commands in one @@ -744,8 +742,8 @@ characters have a special meaning. These can also be used in the expression function expand() |expand()|. % Is replaced with the current file name. *:_%* *c_%* # Is replaced with the alternate file name. *:_#* *c_#* - #n (where n is a number) is replaced with the file name of - buffer n. "#0" is the same as "#". + #n (where n is a number) is replaced with *:_#0* *:_#n* + the file name of buffer n. "#0" is the same as "#". *c_#n* ## Is replaced with all names in the argument list *:_##* *c_##* concatenated, separated by spaces. Each space in a name is preceded with a backslash. @@ -949,7 +947,7 @@ for the file "$home" in the root directory. A few examples: ============================================================================== 6. Command-line window *cmdline-window* *cmdwin* - + *command-line-window* In the command-line window the command line can be edited just like editing text in any window. It is a special kind of window, because you cannot leave it in a normal way. @@ -957,12 +955,12 @@ it in a normal way. feature} -OPEN +OPEN *c_CTRL-F* *q:* *q/* *q?* There are two ways to open the command-line window: 1. From Command-line mode, use the key specified with the 'cedit' option. The default is CTRL-F when 'compatible' is not set. -2. From Normal mode, use the "q:", "q/" or "q?" command. *q:* *q/* *q?* +2. From Normal mode, use the "q:", "q/" or "q?" command. This starts editing an Ex command-line ("q:") or search string ("q/" or "q?"). Note that this is not possible while recording is in progress (the "q" stops recording then). @@ -992,7 +990,8 @@ nesting. The command-line window is not a normal window. It is not possible to move to another window or edit another buffer. All commands that would do this are disabled in the command-line window. Of course it _is_ possible to execute -any command that you entered in the command-line window. +any command that you entered in the command-line window. Other text edits are +discarded when closing the window. CLOSE *E199* @@ -1027,7 +1026,7 @@ VARIOUS The command-line window cannot be used: - when there already is a command-line window (no nesting) -- for entering a encryption key or when using inputsecret() +- for entering an encryption key or when using inputsecret() - when Vim was not compiled with the +vertsplit feature Some options are set when the command-line window is opened: diff --git a/runtime/doc/debug.txt b/runtime/doc/debug.txt index 44c9f9f1a..654d89b58 100644 --- a/runtime/doc/debug.txt +++ b/runtime/doc/debug.txt @@ -1,4 +1,4 @@ -*debug.txt* For Vim version 7.2. Last change: 2006 May 01 +*debug.txt* For Vim version 7.2. Last change: 2009 Jul 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -10,7 +10,8 @@ This is for debugging Vim itself, when it doesn't work properly. For debugging Vim scripts, functions, etc. see |debug-scripts| 1. Location of a crash, using gcc and gdb |debug-gcc| -2. Windows Bug Reporting |debug-win32| +2. Locating memory leaks |debug-leaks| +3. Windows Bug Reporting |debug-win32| ============================================================================== @@ -38,7 +39,25 @@ This also applies when using the MingW tools. ============================================================================== -2. Windows Bug Reporting *debug-win32* +2. Locating memory leaks *debug-leaks* + +If you suspect Vim is leaking memory and you are using Linux, the valgrind +tool is very useful to pinpoint memory leaks. + +First of all, build Vim with EXITFREE defined. Search for this in MAKEFILE +and uncomment the line. + +Use this command to start Vim: *valgrind* +> + valgrind --log-file=valgrind.log ./vim + +Note: Vim will run much slower. If your .vimrc is big or you have several +plugins you need to be patient for startup, or run with the "-u NONE" +argument. + +============================================================================== + +3. Windows Bug Reporting *debug-win32* If the Windows version of Vim crashes in a reproducible manner, you can take some steps to provide a useful bug report. diff --git a/runtime/doc/develop.txt b/runtime/doc/develop.txt index 89cb455e0..dd8031c37 100644 --- a/runtime/doc/develop.txt +++ b/runtime/doc/develop.txt @@ -1,4 +1,4 @@ -*develop.txt* For Vim version 7.2. Last change: 2007 May 11 +*develop.txt* For Vim version 7.2. Last change: 2008 Dec 17 VIM REFERENCE MANUAL by Bram Moolenaar @@ -64,7 +64,7 @@ completely different editor. Extensions are done with a "Vi spirit". hard time finding and remembering them. Keep in mind that more commands and options will be added later. - A feature that people do not know about is a useless feature. Don't add - obscure features, or at least add hints in documentation that they exists. + obscure features, or at least add hints in documentation that they exist. - Minimize using CTRL and other modifiers, they are more difficult to type. - There are many first-time and inexperienced Vim users. Make it easy for them to start using Vim and learn more over time. @@ -323,7 +323,7 @@ Wrong: var=a*5; OK: var = a * 5; In general: Use empty lines to group lines of code together. Put a comment -just above the group of lines. This makes it more easy to quickly see what is +just above the group of lines. This makes it easier to quickly see what is being done. OK: /* Prepare for building the table. */ diff --git a/runtime/doc/diff.txt b/runtime/doc/diff.txt index 3f55c30b6..0775ba2d6 100644 --- a/runtime/doc/diff.txt +++ b/runtime/doc/diff.txt @@ -1,4 +1,4 @@ -*diff.txt* For Vim version 7.2. Last change: 2008 Jul 21 +*diff.txt* For Vim version 7.2. Last change: 2009 Sep 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -64,6 +64,9 @@ In each of the edited files these options are set: These options are set local to the window. When editing another file they are reset to the global value. +The options can still be overruled from a modeline when re-editing the file. +However, 'foldmethod' and 'wrap' won't be set from a modeline when 'diff' is +set. The differences shown are actually the differences in the buffer. Thus if you make changes after loading a file, these will be included in the displayed @@ -91,7 +94,7 @@ While already in Vim you can start diff mode in three ways. :diffthis Make the current window part of the diff windows. This sets the options like for "vimdiff". -:diffpatch {patchfile} *:diffp* *:diffpatch* +:diffpatch {patchfile} *E816* *:diffp* *:diffpatch* Use the current buffer, patch it with the diff found in {patchfile} and open a buffer on the result. The options are set as for "vimdiff". @@ -121,7 +124,8 @@ file for a moment and come back to the same file and be in diff mode again. *:diffo* *:diffoff* :diffoff Switch off diff mode for the current window. -:diffoff! Switch off diff mode for all windows in the current tab page. +:diffoff! Switch off diff mode for the current window and in all windows + in the current tab page where 'diff' is set. The ":diffoff" command resets the relevant options to their default value. This may be different from what the values were before diff mode was started, @@ -237,7 +241,8 @@ that the buffers will be equal within the specified range. *:diffg* *:diffget* :[range]diffg[et] [bufspec] Modify the current buffer to undo difference with another - buffer. If [bufspec] is given, that buffer is used. + buffer. If [bufspec] is given, that buffer is used. If + [bufspec] refers to the current buffer then nothing happens. Otherwise this only works if there is one other buffer in diff mode. See below for [range]. @@ -323,7 +328,7 @@ The "1a2" item appends the line "bbb". The "4d4" item deletes the line "111". The '7c7" item replaces the line "GGG" with "ggg". -When 'diffexpr' is not empty, Vim evaluates to obtain a diff file in the +When 'diffexpr' is not empty, Vim evaluates it to obtain a diff file in the format mentioned. These variables are set to the file names used: v:fname_in original file @@ -353,7 +358,7 @@ 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. - *E97* + *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: - The "diff" program cannot be executed. diff --git a/runtime/doc/editing.txt b/runtime/doc/editing.txt index c745f902e..e6b734219 100644 --- a/runtime/doc/editing.txt +++ b/runtime/doc/editing.txt @@ -1,4 +1,4 @@ -*editing.txt* For Vim version 7.2. Last change: 2008 Aug 09 +*editing.txt* For Vim version 7.2. Last change: 2009 Jun 10 VIM REFERENCE MANUAL by Bram Moolenaar @@ -270,7 +270,7 @@ If you want to keep the changed buffer without saving it, switch on the Normal mode. Otherwise same as |:edit|. *:vie* *:view* -:vie[w] [++opt] [+cmd] file +:vie[w][!] [++opt] [+cmd] file When used in Ex mode: Leave |Ex mode|, go back to Normal mode. Otherwise same as |:edit|, but set 'readonly' option for this buffer. {not in Vi} @@ -462,7 +462,10 @@ converted and illegal bytes. It can be one of three things: ++bad=drop Remove the bad characters. The default is like "++bad=?": Replace each bad character with a question -mark. +mark. In some places an inverted question mark is used (0xBF). + +Note that not all commands use the ++bad argument, even though they do not +give an error when you add it. E.g. |:write|. Note that when reading, the 'fileformat' and 'fileencoding' options will be set to the used format. When writing this doesn't happen, thus a next write @@ -837,7 +840,7 @@ USING THE ARGUMENT LIST Example: > :args *.c :argdo set ff=unix | update -This sets the 'fileformat' option to "unix" and writes the file if is now +This sets the 'fileformat' option to "unix" and writes the file if it is now changed. This is done for all *.c files. Example: > @@ -1456,6 +1459,17 @@ If you don't get warned often enough you can use the following command. may be specified by name, number or with a pattern. + *E813* *E814* +Vim will reload the buffer if you chose to. If a window is visible that +contains this buffer, the reloading will happen in the context of this window. +Otherwise a special window is used, so that most autocommands will work. You +can't close this window. A few other restrictions apply. Best is to make +sure nothing happens outside of the current buffer. E.g., setting +window-local options may end up in the wrong window. Splitting the window, +doing something there and closing it should be OK (if there are no side +effects from other autocommands). Closing unrelated windows and buffers will +get you into trouble. + Before writing a file the timestamp is checked. If it has changed, Vim will ask if you really want to overwrite the file: diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index afa38a493..b813706a5 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.2. Last change: 2008 Nov 27 +*eval.txt* For Vim version 7.2. Last change: 2010 Jan 05 VIM REFERENCE MANUAL by Bram Moolenaar @@ -853,7 +853,8 @@ expr8[expr1] item of String or |List| *expr-[]* *E111* If expr8 is a Number or String this results in a String that contains the expr1'th single byte from expr8. expr8 is used as a String, expr1 as a -Number. Note that this doesn't recognize multi-byte encodings. +Number. This doesn't recognize multi-byte encodings, see |byteidx()| for +an alternative. Index zero gives the first character. This is like it works in C. Careful: text column numbers start with one! Example, to get the character under the @@ -878,8 +879,8 @@ expr8[expr1a : expr1b] substring or sublist *expr-[:]* If expr8 is a Number or String this results in the substring with the bytes from expr1a to and including expr1b. expr8 is used as a String, expr1a and -expr1b are used as a Number. Note that this doesn't recognize multi-byte -encodings. +expr1b are used as a Number. This doesn't recognize multi-byte encodings, see +|byteidx()| for computing the indexes. If expr1a is omitted zero is used. If expr1b is omitted the length of the string minus one is used. @@ -895,7 +896,8 @@ Examples: > :let c = name[-2:-2] " last but one byte of a string :let s = line(".")[4:] " from the fifth byte to the end :let s = s[:-3] " remove last two bytes - +< + *sublist* *slice* If expr8 is a |List| this results in a new |List| with the items indicated by the indexes expr1a and expr1b. This works like with a String, as explained just above, except that indexes out of range cause an error. Examples: > @@ -1190,6 +1192,7 @@ They can be used in: Thus not in: - other scripts sourced from this one - mappings +- menus - etc. Script variables can be used to avoid conflicts with global variable names. @@ -1280,7 +1283,8 @@ v:beval_winnr The number of the window, over which the mouse pointer is. Only valid while evaluating the 'balloonexpr' option. *v:char* *char-variable* -v:char Argument for evaluating 'formatexpr'. +v:char Argument for evaluating 'formatexpr' and used for the typed + character when using in an abbreviation |map-|. *v:charconvert_from* *charconvert_from-variable* v:charconvert_from @@ -1317,6 +1321,8 @@ v:count The count given for the last Normal mode command. Can be used :map _x :echo "the count is " . v:count < Note: The is required to remove the line range that you get when typing ':' after a count. + When there are two counts, as in "3d2w", they are multiplied, + just like what happens in the command, "d6w" for the example. Also used for evaluating the 'formatexpr' option. "count" also works, for backwards compatibility. @@ -1677,9 +1683,9 @@ ceil( {expr}) Float round {expr} up changenr() Number current change number char2nr( {expr}) Number ASCII value of first char in {expr} cindent( {lnum}) Number C indent for line {lnum} -clearmatches() None clear all matches +clearmatches() none clear all matches col( {expr}) Number column nr of cursor or mark -complete({startcol}, {matches}) String set Insert mode completion +complete( {startcol}, {matches}) none set Insert mode completion complete_add( {expr}) Number add completion match complete_check() Number check for key typed during completion confirm( {msg} [, {choices} [, {default} [, {type}]]]) @@ -1704,7 +1710,7 @@ eval( {string}) any evaluate {string} into its value eventhandler( ) Number TRUE if inside an event handler executable( {expr}) Number 1 if executable {expr} exists exists( {expr}) Number TRUE if {expr} exists -extend({expr1}, {expr2} [, {expr3}]) +extend( {expr1}, {expr2} [, {expr3}]) List/Dict insert items of {expr2} into {expr1} expand( {expr} [, {flag}]) String expand special keywords in {expr} feedkeys( {string} [, {mode}]) Number add key sequence to typeahead buffer @@ -1746,7 +1752,7 @@ getftime( {fname}) Number last modification time of file getftype( {fname}) String description of type of file {fname} getline( {lnum}) String line {lnum} of current buffer getline( {lnum}, {end}) List lines {lnum} to {end} of current buffer -getloclist({nr}) List list of location list items +getloclist( {nr}) List list of location list items getmatches() List list of current matches getpid() Number process ID of Vim getpos( {expr}) List position of cursor, mark, etc. @@ -1815,9 +1821,9 @@ matchlist( {expr}, {pat}[, {start}[, {count}]]) List match and submatches of {pat} in {expr} matchstr( {expr}, {pat}[, {start}[, {count}]]) String {count}'th match of {pat} in {expr} -max({list}) Number maximum value of items in {list} -min({list}) Number minimum value of items in {list} -mkdir({name} [, {path} [, {prot}]]) +max( {list}) Number maximum value of items in {list} +min( {list}) Number minimum value of items in {list} +mkdir( {name} [, {path} [, {prot}]]) Number create directory {name} mode( [expr]) String current editing mode nextnonblank( {lnum}) Number line nr of non-blank line >= {lnum} @@ -1829,7 +1835,7 @@ printf( {fmt}, {expr1}...) String format text pumvisible() Number whether popup menu is visible range( {expr} [, {max} [, {stride}]]) List items from {expr} to {max} -readfile({fname} [, {binary} [, {max}]]) +readfile( {fname} [, {binary} [, {max}]]) List get list of lines from file {fname} reltime( [{start} [, {end}]]) List get time value reltimestr( {time}) String turn time value into a String @@ -1850,7 +1856,7 @@ reverse( {list}) List reverse {list} in-place round( {expr}) Float round off {expr} search( {pattern} [, {flags} [, {stopline} [, {timeout}]]]) Number search for {pattern} -searchdecl({name} [, {global} [, {thisblock}]]) +searchdecl( {name} [, {global} [, {thisblock}]]) Number search for variable declaration searchpair( {start}, {middle}, {end} [, {flags} [, {skip} [...]]]) Number search for other end of start/end pair @@ -1867,7 +1873,7 @@ setline( {lnum}, {line}) Number set line {lnum} to {line} setloclist( {nr}, {list}[, {action}]) Number modify location list using {list} setmatches( {list}) Number restore a list of matches -setpos( {expr}, {list}) none set the {expr} position to {list} +setpos( {expr}, {list}) Number set the {expr} position to {list} setqflist( {list}[, {action}]) Number modify quickfix list using {list} setreg( {n}, {v}[, {opt}]) Number set register to value and type settabwinvar( {tabnr}, {winnr}, {varname}, {val}) set {varname} in window @@ -1905,7 +1911,7 @@ synID( {lnum}, {col}, {trans}) Number syntax ID at {lnum} and {col} synIDattr( {synID}, {what} [, {mode}]) String attribute {what} of syntax ID {synID} synIDtrans( {synID}) Number translated syntax ID of {synID} -synstack({lnum}, {col}) List stack of syntax IDs at {lnum} and {col} +synstack( {lnum}, {col}) List stack of syntax IDs at {lnum} and {col} system( {expr} [, {input}]) String output of shell command/filter {expr} tabpagebuflist( [{arg}]) List list of buffer numbers in tab page tabpagenr( [{arg}]) Number number of current or last tab page @@ -1929,10 +1935,10 @@ winheight( {nr}) Number height of window {nr} winline() Number window line of the cursor winnr( [{expr}]) Number number of current window winrestcmd() String returns command to restore window sizes -winrestview({dict}) None restore view of current window +winrestview( {dict}) none restore view of current window winsaveview() Dict save view of current window winwidth( {nr}) Number width of window {nr} -writefile({list}, {fname} [, {binary}]) +writefile( {list}, {fname} [, {binary}]) Number write list of lines to file {fname} abs({expr}) *abs()* @@ -2245,7 +2251,7 @@ complete({startcol}, {matches}) *complete()* *E785* {matches} must be a |List|. Each |List| item is one match. See |complete-items| for the kind of items that are possible. Note that the after calling this function you need to avoid - inserting anything that would completion to stop. + inserting anything that would cause completion to stop. The match can be selected with CTRL-N and CTRL-P as usual with Insert mode completion. The popup menu will appear if specified, see |ins-completion-menu|. @@ -2477,7 +2483,7 @@ empty({expr}) *empty()* Return the Number 1 if {expr} is empty, zero otherwise. A |List| or |Dictionary| is empty when it does not have any items. A Number is empty when its value is zero. - For a long |List| this is much faster then comparing the + For a long |List| this is much faster than comparing the length with zero. escape({string}, {chars}) *escape()* @@ -3053,7 +3059,7 @@ getcharmod() *getcharmod()* 128 Macintosh only: command Only the modifiers that have not been included in the character itself are obtained. Thus Shift-a results in "A" - with no modifier. + without a modifier. getcmdline() *getcmdline()* Return the current command-line. Only works when the command @@ -3181,7 +3187,7 @@ getloclist({nr}) *getloclist()* window {nr}. When {nr} is zero the current window is used. For a location list window, the displayed location list is returned. For an invalid window number {nr}, an empty list is - returned. Otherwise, same as getqflist(). + returned. Otherwise, same as |getqflist()|. getmatches() *getmatches()* Returns a |List| with all matches previously defined by @@ -3478,7 +3484,9 @@ hostname() *hostname()* iconv({expr}, {from}, {to}) *iconv()* The result is a String, which is the text {expr} converted from encoding {from} to encoding {to}. - When the conversion fails an empty string is returned. + When the conversion completely fails an empty string is + returned. When some characters could not be converted they + are replaced with "?". The encoding names are whatever the iconv() library function can accept, see ":!man 3 iconv". Most conversions require Vim to be compiled with the |+iconv| @@ -3503,7 +3511,10 @@ indent({lnum}) The result is a Number, which is indent of line {lnum} in the index({list}, {expr} [, {start} [, {ic}]]) *index()* Return the lowest index in |List| {list} where the item has a - value equal to {expr}. + value equal to {expr}. There is no automatic conversion, so + the String "4" is different from the Number 4. And the number + 4 is different from the Float 4.0. The value of 'ignorecase' + is not used here, case always matters. If {start} is given then start looking at the item with index {start} (may be negative for an item relative to the end). When {ic} is given and it is non-zero, ignore case. Otherwise @@ -3516,9 +3527,9 @@ index({list}, {expr} [, {start} [, {ic}]]) *index()* input({prompt} [, {text} [, {completion}]]) *input()* The result is a String, which is whatever the user typed on - the command-line. The parameter is either a prompt string, or - a blank string (for no prompt). A '\n' can be used in the - prompt to start a new line. + the command-line. The {prompt} argument is either a prompt + string, or a blank string (for no prompt). A '\n' can be used + in the prompt to start a new line. The highlighting set with |:echohl| is used for the prompt. The input is entered just like a command-line, with the same editing commands and mappings. There is a separate history @@ -3528,8 +3539,9 @@ input({prompt} [, {text} [, {completion}]]) *input()* : echo "Cheers!" :endif < - If the optional {text} is present and not empty, this is used - for the default reply, as if the user typed this. Example: > + If the optional {text} argument is present and not empty, this + is used for the default reply, as if the user typed this. + Example: > :let color = input("Color? ", "white") < The optional {completion} argument specifies the type of @@ -3559,8 +3571,8 @@ input({prompt} [, {text} [, {completion}]]) *input()* :endfunction inputdialog({prompt} [, {text} [, {cancelreturn}]]) *inputdialog()* - Like input(), but when the GUI is running and text dialogs are - supported, a dialog window pops up to input the text. + Like |input()|, but when the GUI is running and text dialogs + are supported, a dialog window pops up to input the text. Example: > :let n = inputdialog("value for shiftwidth", &sw) :if n != "" @@ -3581,7 +3593,7 @@ inputlist({textlist}) *inputlist()* above the first item a negative number is returned. When clicking on the prompt one more than the length of {textlist} is returned. - Make sure {textlist} has less then 'lines' entries, otherwise + Make sure {textlist} has less than 'lines' entries, otherwise it won't work. It's a good idea to put the entry number at the start of the string. And put a prompt in the first item. Example: > @@ -3589,7 +3601,7 @@ inputlist({textlist}) *inputlist()* \ '2. green', '3. blue']) inputrestore() *inputrestore()* - Restore typeahead that was saved with a previous inputsave(). + Restore typeahead that was saved with a previous |inputsave()|. Should be called the same number of times inputsave() is called. Calling it more often is harmless though. Returns 1 when there is nothing to restore, 0 otherwise. @@ -3719,14 +3731,14 @@ libcall({libname}, {funcname}, {argument}) the DLL is not in the usual places. For Unix: When compiling your own plugins, remember that the object code must be compiled as position-independent ('PIC'). - {only in Win32 on some Unix versions, when the |+libcall| + {only in Win32 and some Unix versions, when the |+libcall| feature is present} Examples: > :echo libcall("libc.so", "getenv", "HOME") < *libcallnr()* libcallnr({libname}, {funcname}, {argument}) - Just like libcall(), but used for a function that returns an + Just like |libcall()|, but used for a function that returns an int instead of a string. {only in Win32 on some Unix versions, when the |+libcall| feature is present} @@ -3759,7 +3771,7 @@ line({expr}) The result is a Number, which is the line number of the file < *last-position-jump* This autocommand jumps to the last known position in a file just after opening it, if the '" mark is set: > - :au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif + :au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g`\"" | endif line2byte({lnum}) *line2byte()* Return the byte count from the start of the buffer for line @@ -3990,8 +4002,8 @@ matchdelete({id}) *matchdelete()* *E802* *E803* be deleted in one operation by |clearmatches()|. matchend({expr}, {pat}[, {start}[, {count}]]) *matchend()* - Same as match(), but return the index of first character after - the match. Example: > + Same as |match()|, but return the index of first character + after the match. Example: > :echo matchend("testing", "ing") < results in "7". *strspn()* *strcspn()* @@ -4001,15 +4013,15 @@ matchend({expr}, {pat}[, {start}[, {count}]]) *matchend()* :let span = matchend(line, '[^a-zA-Z]') < Except that -1 is returned when there are no matches. - The {start}, if given, has the same meaning as for match(). > + The {start}, if given, has the same meaning as for |match()|. > :echo matchend("testing", "ing", 2) < results in "7". > :echo matchend("testing", "ing", 5) < result is "-1". - When {expr} is a |List| the result is equal to match(). + When {expr} is a |List| the result is equal to |match()|. matchlist({expr}, {pat}[, {start}[, {count}]]) *matchlist()* - Same as match(), but return a |List|. The first item in the + Same as |match()|, but return a |List|. The first item in the list is the matched string, same as what matchstr() would return. Following items are submatches, like "\1", "\2", etc. in |:substitute|. When an optional submatch didn't match an @@ -4023,7 +4035,7 @@ matchstr({expr}, {pat}[, {start}[, {count}]]) *matchstr()* :echo matchstr("testing", "ing") < results in "ing". When there is no match "" is returned. - The {start}, if given, has the same meaning as for match(). > + The {start}, if given, has the same meaning as for |match()|. > :echo matchstr("testing", "ing", 2) < results in "ing". > :echo matchstr("testing", "ing", 5) @@ -4497,9 +4509,9 @@ remote_send({server}, {string} [, {idvar}]) < remove({list}, {idx} [, {end}]) *remove()* Without {end}: Remove the item at {idx} from |List| {list} and - return it. + return the item. With {end}: Remove items from {idx} to {end} (inclusive) and - return a list with these items. When {idx} points to the same + return a List with these items. When {idx} points to the same item as {end} a list with one item is returned. When {end} points to an item before {idx} this is an error. See |list-index| for possible values of {idx} and {end}. @@ -4750,7 +4762,7 @@ searchpair({start}, {middle}, {end} [, {flags} [, {skip} *searchpairpos()* searchpairpos({start}, {middle}, {end} [, {flags} [, {skip} [, {stopline} [, {timeout}]]]]) - Same as searchpair(), but returns a |List| with the line and + Same as |searchpair()|, but returns a |List| with the line and column position of the match. The first element of the |List| is the line number and the second element is the byte index of the column position of the match. If no match is found, @@ -4870,7 +4882,8 @@ setpos({expr}, {list}) Does not change the jumplist. "lnum" and "col" are the position in the buffer. The first - column is 1. Use a zero "lnum" to delete a mark. + column is 1. Use a zero "lnum" to delete a mark. If "col" is + smaller than 1 then 1 is used. The "off" number is only used when 'virtualedit' is set. Then it is the offset in screen columns from the start of the @@ -4989,7 +5002,7 @@ setwinvar({nr}, {varname}, {val}) *setwinvar()* :call setwinvar(2, "myvar", "foobar") shellescape({string} [, {special}]) *shellescape()* - Escape {string} for use as shell command argument. + Escape {string} for use as a shell command argument. On MS-Windows and MS-DOS, when 'shellslash' is not set, it will enclose {string} in double quotes and double all double quotes within {string}. @@ -5051,15 +5064,20 @@ sort({list} [, {func}]) *sort()* *E702* When {func} is given and it is one then case is ignored. When {func} is a |Funcref| or a function name, this function is called to compare items. The function is invoked with two - items as argument and must return zero if they are equal, 1 if - the first one sorts after the second one, -1 if the first one - sorts before the second one. Example: > + items as argument and must return zero if they are equal, 1 or + bigger if the first one sorts after the second one, -1 or + smaller if the first one sorts before the second one. + Example: > func MyCompare(i1, i2) return a:i1 == a:i2 ? 0 : a:i1 > a:i2 ? 1 : -1 endfunc let sortedlist = sort(mylist, "MyCompare") +< A shorter compare version for this specific simple case, which + ignores overflow: > + func MyCompare(i1, i2) + return a:i1 - a:i2 + endfunc < - *soundfold()* soundfold({word}) Return the sound-folded equivalent of {word}. Uses the first @@ -5508,10 +5526,7 @@ tempname() *tempname()* *temp-file-name* is different for at least 26 consecutive calls. Example: > :let tmpfile = tempname() :exe "redir > " . tmpfile -< For Unix, the file will be in a private directory (only - accessible by the current user) to avoid security problems - (e.g., a symlink attack or other people reading your file). - When Vim exits the directory and all files in it are deleted. +< For Unix, the file will be in a private directory |tempfile|. For MS-Windows forward slashes are used when the 'shellslash' option is set or when 'shellcmdflag' starts with '-'. @@ -6575,15 +6590,19 @@ This would call the function "my_func_whizz(parameter)". removed without effect. Removing any later item means it will not be found. Thus the following example works (an inefficient way to make a list empty): > - :for item in mylist - :call remove(mylist, 0) - :endfor + for item in mylist + call remove(mylist, 0) + endfor < Note that reordering the list (e.g., with sort() or reverse()) may have unexpected effects. Note that the type of each list item should be identical to avoid errors for the type of {var} changing. Unlet the variable at the end of the loop - to allow multiple item types. + to allow multiple item types: > + for item in ["foo", ["bar"]] + echo item + unlet item " E706 without this + endfor :for [{var1}, {var2}, ...] in {listlist} :endfo[r] @@ -6652,7 +6671,7 @@ This would call the function "my_func_whizz(parameter)". :try | edit | catch /^Vim(edit):E\d\+/ | echo "error" | endtry < *:cat* *:catch* *E603* *E604* *E605* -:cat[ch] /{pattern}/ The following commands until the next ":catch", +:cat[ch] /{pattern}/ The following commands until the next |:catch|, |:finally|, or |:endtry| that belongs to the same |:try| as the ":catch" are executed when an exception matching {pattern} is being thrown and has not yet @@ -6825,7 +6844,7 @@ This would call the function "my_func_whizz(parameter)". :execute 'while i < 5 | echo i | let i = i + 1 | endwhile' < - *:comment* + *:exe-comment* ":execute", ":echo" and ":echon" cannot be followed by a comment directly, because they see the '"' as the start of a string. But, you can use '|' followed by a @@ -7831,7 +7850,7 @@ a "E600: Missing :endtry" error message is given, see |except-single-line|. Printing in Binary ~ > - :" The function Nr2Bin() returns the Hex string of a number. + :" The function Nr2Bin() returns the binary string representation of a number. :func Nr2Bin(nr) : let n = a:nr : let r = "" diff --git a/runtime/doc/evim-pl.1 b/runtime/doc/evim-pl.1 index 284b5bcb9..490ee3a7c 100644 --- a/runtime/doc/evim-pl.1 +++ b/runtime/doc/evim-pl.1 @@ -14,11 +14,11 @@ uruchamia .B Vima i ustawia opcje tak by zachowywa³ siê jak edytor bez trybów. To jest ca³y czas Vim ale u¿ywany jako edytor wska¿-i-kliknij. -Zachowanie w stlu Notepada dla MS-Windows. +Zachowanie w stylu Notepada dla MS-Windows. .B eVim bêdzie zawsze uruchomiony w GUI by w³±czyæ menu i pasek narzêdzi. .PP -Przeznaczony tylko dla ludzi, którzy naprawdê nie potrafi± pracowaæ +Przeznaczony tylko dla ludzi, którzy naprawdê nie mog± pracowaæ z Vimem w normalny sposób. Edycja bêdzie o wiele mniej efektywna. .PP .B eview @@ -31,8 +31,8 @@ Opcja 'insertmode' jest ustawiona by mo tekst. .br Mapowania s± ustawione tak by Kopiowanie i Wklejanie dzia³a³o -z klawiszami MS-Windows. CTRL-X wycina tekst, CTRL-C kopiuje -a CTRL-V wkleja. U¿yj CTRL-Q by uzyskaæ oryginalne znaczenie +z klawiszami MS-Windows. CTRL-X wycina, CTRL-C kopiuje a CTRL-V +wkleja tekst. U¿yj CTRL-Q by uzyskaæ oryginalne przeznaczenie CTRL-V. .SH OPCJE Zobacz vim(1). @@ -42,7 +42,7 @@ Zobacz vim(1). Skrypt uruchamiania dla eVima. .SH ZNANY JAKO Znany jako "Vim dla frajerów". -Je¶li u¿ywasz evima oczekuje siê, ¿e wyjmiesz chusteczkê do nosa, +Je¶li u¿ywasz eVima oczekuje siê, ¿e wyjmiesz chusteczkê do nosa, zrobisz wêzê³ w ka¿dym rogu i bêdziesz to nosi³ na g³owie. .SH ZOBACZ TAK¯E vim(1) diff --git a/runtime/doc/evim-pl.UTF-8.1 b/runtime/doc/evim-pl.UTF-8.1 index da940c0a7..096a12add 100644 --- a/runtime/doc/evim-pl.UTF-8.1 +++ b/runtime/doc/evim-pl.UTF-8.1 @@ -14,11 +14,11 @@ uruchamia .B Vima i ustawia opcje tak by zachowywaÅ‚ siÄ™ jak edytor bez trybów. To jest caÅ‚y czas Vim ale używany jako edytor wskaż-i-kliknij. -Zachowanie w stlu Notepada dla MS-Windows. +Zachowanie w stylu Notepada dla MS-Windows. .B eVim bÄ™dzie zawsze uruchomiony w GUI by wÅ‚Ä…czyć menu i pasek narzÄ™dzi. .PP -Przeznaczony tylko dla ludzi, którzy naprawdÄ™ nie potrafiÄ… pracować +Przeznaczony tylko dla ludzi, którzy naprawdÄ™ nie mogÄ… pracować z Vimem w normalny sposób. Edycja bÄ™dzie o wiele mniej efektywna. .PP .B eview @@ -31,8 +31,8 @@ Opcja 'insertmode' jest ustawiona by można byÅ‚o od razu wpisywać tekst. .br Mapowania sÄ… ustawione tak by Kopiowanie i Wklejanie dziaÅ‚aÅ‚o -z klawiszami MS-Windows. CTRL-X wycina tekst, CTRL-C kopiuje -a CTRL-V wkleja. Użyj CTRL-Q by uzyskać oryginalne znaczenie +z klawiszami MS-Windows. CTRL-X wycina, CTRL-C kopiuje a CTRL-V +wkleja tekst. Użyj CTRL-Q by uzyskać oryginalne przeznaczenie CTRL-V. .SH OPCJE Zobacz vim(1). @@ -42,7 +42,7 @@ Zobacz vim(1). Skrypt uruchamiania dla eVima. .SH ZNANY JAKO Znany jako "Vim dla frajerów". -JeÅ›li używasz evima oczekuje siÄ™, że wyjmiesz chusteczkÄ™ do nosa, +JeÅ›li używasz eVima oczekuje siÄ™, że wyjmiesz chusteczkÄ™ do nosa, zrobisz wÄ™zęł w każdym rogu i bÄ™dziesz to nosiÅ‚ na gÅ‚owie. .SH ZOBACZ TAKÅ»E vim(1) diff --git a/runtime/doc/fold.txt b/runtime/doc/fold.txt index 7c117a8fd..5d465f44f 100644 --- a/runtime/doc/fold.txt +++ b/runtime/doc/fold.txt @@ -1,10 +1,10 @@ -*fold.txt* For Vim version 7.2. Last change: 2007 May 11 +*fold.txt* For Vim version 7.2. Last change: 2009 Dec 22 VIM REFERENCE MANUAL by Bram Moolenaar -Folding *Folding* *folding* +Folding *Folding* *folding* *folds* You can find an introduction on folding in chapter 28 of the user manual. |usr_28.txt| diff --git a/runtime/doc/ft_ada.txt b/runtime/doc/ft_ada.txt index 6f328e625..94b5d8e84 100644 --- a/runtime/doc/ft_ada.txt +++ b/runtime/doc/ft_ada.txt @@ -82,7 +82,7 @@ The Ada plug-in provides support for: - comment handling (|'comments'|, |'commentstring'|) The plug-in only activates the features of the Ada mode whenever an Ada -files is opened and add adds Ada related entries to the main and pop-up menu. +file is opened and adds Ada related entries to the main and pop-up menu. ============================================================================== 3. Omni Completion ~ @@ -142,7 +142,7 @@ support yet. 4. Compiler Support ~ *ada-compiler* -The Ada mode supports more then one Ada compiler and will automatically load the +The Ada mode supports more than one Ada compiler and will automatically load the compiler set in|g:ada_default_compiler|whenever an Ada source is opened. The provided compiler plug-ins are split into the actual compiler plug-in and a collection of support functions and variables. This allows the easy @@ -154,7 +154,7 @@ environment. *compiler-gnat* GNAT is the only free (beer and speech) Ada compiler available. There are -several version available which differentiate in the licence terms used. +several versions available which differ in the licence terms used. The GNAT compiler plug-in will perform a compile on pressing and then immediately shows the result. You can set the project file to be used by @@ -163,7 +163,7 @@ setting: > call g:gnat.Set_Project_File ('my_project.gpr') Setting a project file will also create a Vim session (|views-sessions|) so - -like with the GPS - opened files, window positions etc. will remembered +like with the GPS - opened files, window positions etc. will be remembered separately for all projects. *gnat_members* @@ -228,9 +228,9 @@ and HP Ada) is a fairly dated Ada 83 compiler. Support is basic: will compile the current unit. The Dec Ada compiler expects the package name and not the file name to be -passed a parameter. The compiler plug-in supports the usual file name -convention to convert the file into a unit name. For separates both '-' and -'__' are allowed. +passed as a parameter. The compiler plug-in supports the usual file name +convention to convert the file into a unit name. Both '-' and '__' are allowed +as separators. *decada_members* DEC ADA OBJECT ~ @@ -262,7 +262,7 @@ g:decada.Error_Format| string *g:ada_standard_types* g:ada_standard_types bool (true when exists) - Highlight types in package Standard (e.g., "Float") + Highlight types in package Standard (e.g., "Float"). *g:ada_space_errors* *g:ada_no_trail_space_error* @@ -279,13 +279,13 @@ g:ada_space_errors bool (true when exists) *g:ada_line_errors* g:ada_line_errors bool (true when exists) - Highlight lines which are to long. Note: This highlighting + Highlight lines which are too long. Note: This highlighting option is quite CPU intensive. *g:ada_rainbow_color* g:ada_rainbow_color bool (true when exists) Use rainbow colours for '(' and ')'. You need the - rainbow_parenthesis for this to work + rainbow_parenthesis for this to work. *g:ada_folding* g:ada_folding set ('sigpft') @@ -313,7 +313,7 @@ g:ada_folding set ('sigpft') *g:ada_abbrev* g:ada_abbrev bool (true when exists) - Add some abbreviations. This feature more or less superseded + Add some abbreviations. This feature is more or less superseded by the various completion methods. *g:ada_withuse_ordinary* @@ -359,12 +359,12 @@ g:ada_with_gnat_project_files bool (true when exists) *g:ada_default_compiler* g:ada_default_compiler string - set default compiler. Currently supported is 'gnat' and + set default compiler. Currently supported are 'gnat' and 'decada'. -An "exists" type is a boolean is considered true when the variable is defined -and false when the variable is undefined. The value which the variable is -set makes no difference. +An "exists" type is a boolean considered true when the variable is defined and +false when the variable is undefined. The value to which the variable is set +makes no difference. ------------------------------------------------------------------------------ 5.3 Commands ~ @@ -372,10 +372,10 @@ set makes no difference. :AdaRainbow *:AdaRainbow* Toggles rainbow colour (|g:ada_rainbow_color|) mode for - '(' and ')' + '(' and ')'. :AdaLines *:AdaLines* - Toggles line error (|g:ada_line_errors|) display + Toggles line error (|g:ada_line_errors|) display. :AdaSpaces *:AdaSpaces* Toggles space error (|g:ada_space_errors|) display. @@ -424,7 +424,7 @@ All constants are locked. See |:lockvar| for details. *g:ada#WordRegex* g:ada#WordRegex string - Regular expression to search for Ada words + Regular expression to search for Ada words. *g:ada#DotWordRegex* g:ada#DotWordRegex string @@ -432,7 +432,7 @@ g:ada#DotWordRegex string *g:ada#Comment* g:ada#Comment string - Regular expression to search for Ada comments + Regular expression to search for Ada comments. *g:ada#Keywords* g:ada#Keywords list of dictionaries @@ -454,7 +454,7 @@ ada#Word([{line}, {col}]) *ada#Word()* ada#List_Tag([{line}, {col}]) *ada#Listtags()* List all occurrences of the Ada entity under the cursor (or at - given line/column) inside the quick-fix window + given line/column) inside the quick-fix window. ada#Jump_Tag ({ident}, {mode}) *ada#Jump_Tag()* List all occurrences of the Ada entity under the cursor (or at @@ -482,8 +482,8 @@ gnat#New () 8. Extra Plugins ~ *ada-extra-plugins* -You can optionally install the following extra plug-in. They work well with Ada -and enhance the ability of the Ada mode.: +You can optionally install the following extra plug-ins. They work well with +Ada and enhance the ability of the Ada mode: backup.vim http://www.vim.org/scripts/script.php?script_id=1537 @@ -501,7 +501,7 @@ nerd_comments.vim matchit.vim http://www.vim.org/scripts/script.php?script_id=39 '%' jumping for any language. The normal '%' jump only works for '{}' - style languages. The Ada mode will set the needed search patters. + style languages. The Ada mode will set the needed search patterns. taglist.vim http://www.vim.org/scripts/script.php?script_id=273 diff --git a/runtime/doc/ft_sql.txt b/runtime/doc/ft_sql.txt index 893a9c35e..9b0903e6e 100644 --- a/runtime/doc/ft_sql.txt +++ b/runtime/doc/ft_sql.txt @@ -1,4 +1,4 @@ -*ft_sql.txt* For Vim version 7.2. Last change: Wed Apr 26 2006 3:05:33 PM +*sql.txt* For Vim version 7.2. Last change: 2009 Nov 03 by David Fishburn @@ -15,7 +15,8 @@ features for navigation, indentation and syntax highlighting. 1.4 Macros |sql-macros| 2. SQL Dialects |sql-dialects| 2.1 SQLSetType |SQLSetType| - 2.2 SQL Dialect Default |sql-type-default| + 2.2 SQLGetType |SQLGetType| + 2.3 SQL Dialect Default |sql-type-default| 3. Adding new SQL Dialects |sql-adding-dialects| 4. OMNI SQL Completion |sql-completion| 4.1 Static mode |sql-completion-static| @@ -204,7 +205,7 @@ Press any of the following keys: > *sqlanywhere* *oracle* *plsql* *sqlj* *sqlserver* - *mysql* *postgres* *psql* + *mysql* *postgress* *psql* *informix* All relational databases support SQL. There is a portion of SQL that is @@ -231,7 +232,7 @@ be nice to specify a default in your |vimrc|. 2.1 SQLSetType *sqlsettype* *SQLSetType* -------------- -For the people that work with many different databases, it would be nice to be +For the people that work with many different databases, it is nice to be able to flip between the various vendors rules (indent, syntax) on a per buffer basis, at any time. The ftplugin/sql.vim file defines this function: > SQLSetType @@ -259,7 +260,17 @@ of available Vim script names: > :SQL -2.2 SQL Dialect Default *sql-type-default* +2.2 SQLGetType *sqlgettype* *SQLGetType* +-------------- +At anytime you can determine which SQL dialect you are using by calling the +SQLGetType command. The ftplugin/sql.vim file defines this function: > + SQLGetType + +This will echo: > + Current SQL dialect in use:sqlanywhere + + +2.3 SQL Dialect Default *sql-type-default* ----------------------- As mentioned earlier, the default syntax rules for Vim is based on Oracle (PL/SQL). You can override this default by placing one of the following in @@ -331,6 +342,10 @@ The defaults static maps are: > imap T :call sqlcomplete#Map('sqlType') imap s :call sqlcomplete#Map('sqlStatement') +The use of "" can be user chosen by using the following in your |.vimrc| as it +may not work properly on all platforms: > + let g:ftplugin_sql_omni_key = '' +> The static maps (which are based on the syntax highlight groups) follow this format: > imap k :call sqlcomplete#Map('sqlKeyword') @@ -406,21 +421,25 @@ to display a list of tables, procedures, views and columns. > To enable the popup, while in INSERT mode, use the following key combinations for each group (where means hold the CTRL key down while pressing the space bar): - Table List - t - - (the default map assumes tables) - Stored Procedure List - p - View List - v - Column List - c - - Windows platform only - When viewing a popup window displaying the list - of tables, you can press , this will - replace the table currently highlighted with - the column list for that table. - - When viewing a popup window displaying the list - of columns, you can press , this will - replace the column list with the list of tables. - - This allows you to quickly drill down into a - table to view it's columns and back again. + Table List - t + - (the default map assumes tables) + Stored Procedure List - p + View List - v + Column List - c + + Drilling In / Out - When viewing a popup window displaying the list + of tables, you can press , this will + replace the table currently highlighted with + the column list for that table. + - When viewing a popup window displaying the list + of columns, you can press , this will + replace the column list with the list of tables. + - This allows you to quickly drill down into a + table to view it's columns and back again. + - and can be also be chosen via + your |.vimrc| > + let g:ftplugin_sql_omni_key_right = '' + let g:ftplugin_sql_omni_key_left = '' The SQL completion plugin caches various lists that are displayed in the popup window. This makes the re-displaying of these lists very @@ -498,30 +517,24 @@ beginning with those characters. > The SQL completion plugin can also display a list of columns for particular tables. The column completion is trigger via c. -NOTE: The following example uses to trigger a column list while -the popup window is active. This map is only available on the Windows -platforms since *nix does not recognize CTRL and the right arrow held down -together. If you wish to enable this functionality on a *nix platform choose -a key and create one of these mappings (see |sql-completion-maps| for further -details on where to create this imap): > - imap =sqlcomplete#DrillIntoTable() - imap :call sqlcomplete#Map('column') +NOTE: The following example uses to trigger a column list while + the popup window is active. Example of using column completion: - Press t again to display the list of tables. - - When the list is displayed in the completion window, press , + - When the list is displayed in the completion window, press , this will replace the list of tables, with a list of columns for the table highlighted (after the same short delay). - - If you press , this will again replace the column list with the + - If you press , this will again replace the column list with the list of tables. This allows you to drill into tables and column lists very quickly. - - Press again while the same table is highlighted. You will + - Press again while the same table is highlighted. You will notice there is no delay since the column list has been cached. If you change the schema of a cached table you can press R, which clears the SQL completion cache. - - NOTE: and have been designed to work while the + - NOTE: and have been designed to work while the completion window is active. If the completion popup window is - not active, a normal or will be executed. + not active, a normal or will be executed. Lets look how we can build a SQL statement dynamically. A select statement requires a list of columns. There are two ways to build a column list using @@ -529,7 +542,7 @@ the SQL completion plugin. > One column at a time: < 1. After typing SELECT press t to display a list of tables. 2. Choose a table from the list. - 3. Press to display a list of columns. + 3. Press to display a list of columns. 4. Choose the column from the list and press enter. 5. Enter a "," and press c. Generating a column list generally requires having the cursor on a table name. The plugin @@ -632,7 +645,7 @@ your |vimrc|: > - When completing tables, procedure or views and using dbext.vim 3.00 or higher the list of objects will also include the owner name. When completing these objects and omni_sql_include_owner is enabled - the owner name will be replaced. > + the owner name will be be replaced. > omni_sql_precache_syntax_groups < - Default: @@ -684,15 +697,15 @@ plugin. > L < - Displays a comma separated list of columns for a specific table. This should only be used when the completion window is active. > - + < - Displays a list of columns for the table currently highlighted in - the completion window. is not recognized on most Unix + the completion window. is not recognized on most Unix systems, so this maps is only created on the Windows platform. If you would like the same feature on Unix, choose a different key and make the same map in your vimrc. > - + < - Displays the list of tables. - is not recognized on most Unix systems, so this maps is + is not recognized on most Unix systems, so this maps is only created on the Windows platform. If you would like the same feature on Unix, choose a different key and make the same map in your vimrc. > diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt index daf1a9a85..09a833b46 100644 --- a/runtime/doc/gui.txt +++ b/runtime/doc/gui.txt @@ -1,4 +1,4 @@ -*gui.txt* For Vim version 7.2. Last change: 2008 Jun 14 +*gui.txt* For Vim version 7.2. Last change: 2009 Jan 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -35,13 +35,13 @@ GUI version of Vim with: The X11 version of Vim can run both in GUI and in non-GUI mode. See |gui-x11-start|. - *gui-init* *gvimrc* *.gvimrc* *_gvimrc* + *gui-init* *gvimrc* *.gvimrc* *_gvimrc* *$MYGVIMRC* The gvimrc file is where GUI-specific startup commands should be placed. It is always sourced after the |vimrc| file. If you have one then the $MYGVIMRC environment variable has its name. When the GUI starts up initializations are carried out, in this order: -- The 'term' option is set to "builgin_gui" and terminal options are reset to +- The 'term' option is set to "builtin_gui" and terminal options are reset to their default value for the GUI |terminal-options|. - If the system menu file exists, it is sourced. The name of this file is normally "$VIMRUNTIME/menu.vim". You can check this with ":version". Also @@ -473,9 +473,11 @@ this line to your .vimrc file (NOT your .gvimrc file!): > :let did_install_default_menus = 1 If you also want to avoid the Syntax menu: > :let did_install_syntax_menu = 1 -If you do want the Syntax menu but not all the entries for each available -syntax file (which take quite a bit of time to load): > - :let skip_syntax_sel_menu = 1 +The first item in the Syntax menu can be used to show all available filetypes +in the menu (which can take a bit of time to load). If you want to have all +filetypes already present at startup, add: > + :let do_syntax_sel_menu = 1 + < *console-menus* Although this documentation is in the GUI section, you can actually use menus diff --git a/runtime/doc/gui_x11.txt b/runtime/doc/gui_x11.txt index 8baa075dc..99212ac01 100644 --- a/runtime/doc/gui_x11.txt +++ b/runtime/doc/gui_x11.txt @@ -1,4 +1,4 @@ -*gui_x11.txt* For Vim version 7.2. Last change: 2007 Dec 09 +*gui_x11.txt* For Vim version 7.2. Last change: 2009 Oct 28 VIM REFERENCE MANUAL by Bram Moolenaar @@ -540,13 +540,16 @@ Of these three, Vim uses PRIMARY when reading and writing the "* register register. Vim does not access the SECONDARY selection. Examples: (assuming the default option values) -- Select an URL in Visual mode in Vim. Go to a text field in Netscape and - click the middle mouse button. The selected text will be inserted - (hopefully!). -- Select some text in Netscape by dragging with the mouse. Go to Vim and +- Select an URL in Visual mode in Vim. Go to your browser and click the + middle mouse button in the URL text field. The selected text will be + inserted (hopefully!). Note: in Firefox you can set the + middlemouse.contentLoadURL preference to true in about:config, then the + selected URL will be used when pressing middle mouse button in most places + in the window. +- Select some text in your browser by dragging with the mouse. Go to Vim and press the middle mouse button: The selected text is inserted. -- Select some text in Vim and do "+y. Go to Netscape, select some text in a - textfield by dragging with the mouse. Now use the right mouse button and +- Select some text in Vim and do "+y. Go to your browser, select some text in + a textfield by dragging with the mouse. Now use the right mouse button and select "Paste" from the popup menu. The selected text is overwritten by the text from Vim. Note that the text in the "+ register remains available when making a Visual diff --git a/runtime/doc/hangulin.txt b/runtime/doc/hangulin.txt index 2ad19c599..78c00a887 100644 --- a/runtime/doc/hangulin.txt +++ b/runtime/doc/hangulin.txt @@ -1,8 +1,12 @@ -*hangulin.txt* For Vim version 7.2. Last change: 2006 Apr 02 +*hangulin.txt* For Vim version 7.2. Last change: 2009 Jun 24 VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam +NOTE: The |+hangul_input| feature is scheduled to be removed. If you want to +keep it, please send a message to the Vim user maillist. + + Introduction *hangul* ------------ It is to input hangul, the Korean language, with VIM GUI version. @@ -96,6 +100,6 @@ Bug or Comment Send comments, patches and suggestions to: Chi-Deok Hwang - Nam SungHyun + SungHyun Nam vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/help.txt b/runtime/doc/help.txt index 77562f9a1..3ec4ab4e1 100644 --- a/runtime/doc/help.txt +++ b/runtime/doc/help.txt @@ -144,6 +144,7 @@ Special issues ~ |hebrew.txt| Hebrew language support and editing |russian.txt| Russian language support and editing |ft_ada.txt| Ada (the programming language) support +|ft_sql.txt| about the SQL filetype plugin |hangulin.txt| Hangul (Korean) input mode |rileft.txt| right-to-left editing mode diff --git a/runtime/doc/if_ole.txt b/runtime/doc/if_ole.txt index 929fd3928..7df71effb 100644 --- a/runtime/doc/if_ole.txt +++ b/runtime/doc/if_ole.txt @@ -1,4 +1,4 @@ -*if_ole.txt* For Vim version 7.2. Last change: 2007 May 10 +*if_ole.txt* For Vim version 7.2. Last change: 2008 Aug 16 VIM REFERENCE MANUAL by Paul Moore @@ -115,7 +115,7 @@ Example (Visual Basic syntax) > 3. The "normal" command *ole-normal* Due to the way Vim processes OLE Automation commands, combined with the method -of implementation of the ex command :normal, it is not possible to execute the +of implementation of the Ex command :normal, it is not possible to execute the :normal command via OLE automation. Any attempt to do so will fail, probably harmlessly, although possibly in unpredictable ways. diff --git a/runtime/doc/if_pyth.txt b/runtime/doc/if_pyth.txt index 0e5817b0d..d37e9535e 100644 --- a/runtime/doc/if_pyth.txt +++ b/runtime/doc/if_pyth.txt @@ -1,4 +1,4 @@ -*if_pyth.txt* For Vim version 7.2. Last change: 2006 Apr 30 +*if_pyth.txt* For Vim version 7.2. Last change: 2008 Aug 16 VIM REFERENCE MANUAL by Paul Moore @@ -93,7 +93,7 @@ module before using it: > Overview > :py print "Hello" # displays a message - :py vim.command(cmd) # execute an ex command + :py vim.command(cmd) # execute an Ex command :py w = vim.windows[n] # gets window "n" :py cw = vim.current.window # gets the current window :py b = vim.buffers[n] # gets buffer "n" diff --git a/runtime/doc/if_ruby.txt b/runtime/doc/if_ruby.txt index 8e1ef35d8..6ccc56824 100644 --- a/runtime/doc/if_ruby.txt +++ b/runtime/doc/if_ruby.txt @@ -1,4 +1,4 @@ -*if_ruby.txt* For Vim version 7.2. Last change: 2006 Apr 30 +*if_ruby.txt* For Vim version 7.2. Last change: 2008 Aug 16 VIM REFERENCE MANUAL by Shugo Maeda @@ -79,7 +79,7 @@ Ruby code gets all of its access to vim via the "VIM" module. Overview > print "Hello" # displays a message - VIM.command(cmd) # execute an ex command + VIM.command(cmd) # execute an Ex command num = VIM::Window.count # gets the number of windows w = VIM::Window[n] # gets window "n" cw = VIM::Window.current # gets the current window diff --git a/runtime/doc/if_tcl.txt b/runtime/doc/if_tcl.txt index d9b6a9c8f..f6aa90d61 100644 --- a/runtime/doc/if_tcl.txt +++ b/runtime/doc/if_tcl.txt @@ -1,4 +1,4 @@ -*if_tcl.txt* For Vim version 7.2. Last change: 2008 Jun 26 +*if_tcl.txt* For Vim version 7.2. Last change: 2008 Aug 16 VIM REFERENCE MANUAL by Ingo Wilken @@ -83,7 +83,7 @@ The following commands are implemented: > ::vim::beep # Guess. ::vim::buffer {n} # Create Tcl command for one buffer. ::vim::buffer list # Create Tcl commands for all buffers. - ::vim::command [-quiet] {cmd} # Execute an ex command. + ::vim::command [-quiet] {cmd} # Execute an Ex command. ::vim::expr {expr} # Use Vim's expression evaluator. ::vim::option {opt} # Get vim option. ::vim::option {opt} {val} # Set vim option. @@ -116,7 +116,7 @@ Commands: ::vim::command {cmd} *tcl-command* ::vim::command -quiet {cmd} - Execute the vim (ex-mode) command {cmd}. Any ex command that affects + Execute the vim (ex-mode) command {cmd}. Any Ex command that affects a buffer or window uses the current buffer/current window. Does not return a result other than a standard Tcl error code. After this command is completed, the "::vim::current" variable is updated. @@ -210,7 +210,7 @@ Variables: line *tcl-var-line* lnum *tcl-var-lnum* - These global variables are only available if the ":tcldo" ex command + These global variables are only available if the ":tcldo" Ex command is being executed. They contain the text and line number of the current line. When the Tcl command invoked by ":tcldo" is completed, the current line is set to the contents of the "line" variable, unless @@ -233,7 +233,7 @@ Let's assume the name of the window command is stored in the Tcl variable "win", i.e. "$win" calls the command. The following options are available: > $win buffer # Create Tcl command for window's buffer. - $win command {cmd} # Execute ex command in windows context. + $win command {cmd} # Execute Ex command in windows context. $win cursor # Get current cursor position. $win cursor {var} # Set cursor position from array variable. $win cursor {row} {col} # Set cursor position. @@ -312,7 +312,7 @@ Let's assume the name of the buffer command is stored in the Tcl variable "buf", i.e. "$buf" calls the command. The following options are available: > $buf append {n} {str} # Append a line to buffer, after line {n}. - $buf command {cmd} # Execute ex command in buffers context. + $buf command {cmd} # Execute Ex command in buffers context. $buf count # Report number of lines in buffer. $buf delcmd {cmd} # Call Tcl command when buffer is deleted. $buf delete {n} # Delete a single line. @@ -438,7 +438,7 @@ used to display messages in vim. ============================================================================== 7. Known bugs & problems *tcl-bugs* -Calling one of the Tcl ex commands from inside Tcl (via "::vim::command") may +Calling one of the Tcl Ex commands from inside Tcl (via "::vim::command") may have unexpected side effects. The command creates a new interpreter, which has the same abilities as the standard interpreter - making "::vim::command" available in a safe child interpreter therefore makes the child unsafe. (It @@ -487,11 +487,11 @@ This script adds a consecutive number to each line in the current range: incr i ; incr n } -The same can also be done quickly with two ex commands, using ":tcldo": +The same can also be done quickly with two Ex commands, using ":tcldo": :tcl set n 1 :[range]tcldo set line "$n\t$line" ; incr n -This procedure runs an ex command on each buffer (idea stolen from Ron Aaron): +This procedure runs an Ex command on each buffer (idea stolen from Ron Aaron): proc eachbuf { cmd } { foreach b [::vim::buffer list] { $b command $cmd @@ -500,7 +500,7 @@ This procedure runs an ex command on each buffer (idea stolen from Ron Aaron): Use it like this: :tcl eachbuf %s/foo/bar/g Be careful with Tcl's string and backslash substitution, tough. If in doubt, -surround the ex command with curly braces. +surround the Ex command with curly braces. If you want to add some Tcl procedures permanently to vim, just place them in diff --git a/runtime/doc/indent.txt b/runtime/doc/indent.txt index 4d00da257..9ae52cb4f 100644 --- a/runtime/doc/indent.txt +++ b/runtime/doc/indent.txt @@ -1,4 +1,4 @@ -*indent.txt* For Vim version 7.2. Last change: 2008 Jul 30 +*indent.txt* For Vim version 7.2. Last change: 2009 Nov 12 VIM REFERENCE MANUAL by Bram Moolenaar @@ -609,8 +609,9 @@ b:sh_indent_options['continuation-line'] b:sh_indent_options['case-labels'] Amount of indent to add for case labels. + (not actually implemented) -b:sh_indent_options['case-statement'] +b:sh_indent_options['case-statements'] Amount of indent to add for case statements. b:sh_indent_options['case-breaks'] diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index afe151366..4549300fc 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1,4 +1,4 @@ -*index.txt* For Vim version 7.2. Last change: 2008 May 04 +*index.txt* For Vim version 7.2. Last change: 2009 Jul 01 VIM REFERENCE MANUAL by Bram Moolenaar @@ -522,7 +522,7 @@ tag command action in Normal mode ~ |CTRL-W_+| CTRL-W + increase current window height N lines |CTRL-W_-| CTRL-W - decrease current window height N lines |CTRL-W_<| CTRL-W < decrease current window width N columns -|CTRL-W_=| CTRL-W = make all windows the same height +|CTRL-W_=| CTRL-W = make all windows the same height & width |CTRL-W_>| CTRL-W > increase current window width N columns |CTRL-W_H| CTRL-W H move current window to the far left |CTRL-W_J| CTRL-W J move current window to the very bottom @@ -572,7 +572,7 @@ tag command action in Normal mode ~ window N lines high |CTRL-W_t| CTRL-W t go to top window |CTRL-W_v| CTRL-W v split current window vertically, new window - N lines wide + N columns wide |CTRL-W_w| CTRL-W w go to N next window (wrap around) |CTRL-W_x| CTRL-W x exchange current window with window N (default: next window) @@ -1339,6 +1339,7 @@ The commands are sorted on the non-optional part of their name. |:number| :nu[mber] print lines with line number |:nunmap| :nun[map] like ":unmap" but for Normal mode |:nunmenu| :nunme[nu] remove menu for Normal mode +|:oldfiles| :ol[dfiles] list files that have marks in the viminfo file |:open| :o[pen] start open mode (not implemented) |:omap| :om[ap] like ":map" but for Operator-pending mode |:omapclear| :omapc[lear] remove all mappings for Operator-pending mode @@ -1436,7 +1437,7 @@ The commands are sorted on the non-optional part of their name. |:shell| :sh[ell] escape to a shell |:simalt| :sim[alt] Win32 GUI: simulate Windows ALT key |:sign| :sig[n] manipulate signs -|:silent| :sil[ent] Run a command silently +|:silent| :sil[ent] run a command silently |:sleep| :sl[eep] do nothing for a few seconds |:slast| :sla[st] split window and go to last file in the argument list @@ -1525,6 +1526,7 @@ The commands are sorted on the non-optional part of their name. |:unlockvar| :unlo[ckvar] unlock variables |:unmap| :unm[ap] remove mapping |:unmenu| :unme[nu] remove menu +|:unsilent| :uns[ilent] run a command not silently |:update| :up[date] write buffer if modified |:vglobal| :v[global] execute commands for not matching lines |:version| :ve[rsion] print version number and other info diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt index a7915da9a..61360a4aa 100644 --- a/runtime/doc/insert.txt +++ b/runtime/doc/insert.txt @@ -1,4 +1,4 @@ -*insert.txt* For Vim version 7.2. Last change: 2008 Jun 21 +*insert.txt* For Vim version 7.2. Last change: 2009 Jul 14 VIM REFERENCE MANUAL by Bram Moolenaar @@ -123,6 +123,7 @@ CTRL-R {0-9a-z"%#*+:.-=} *i_CTRL-R* ':' the last command-line '.' the last inserted text '-' the last small (less than a line) delete + *i_CTRL-R_=* '=' the expression register: you are prompted to enter an expression (see |expression|) Note that 0x80 (128 decimal) is used for @@ -133,6 +134,8 @@ CTRL-R {0-9a-z"%#*+:.-=} *i_CTRL-R* When the result is a |List| the items are used as lines. They can have line breaks inside too. + When the result is a Float it's automatically + converted to a String. See |registers| about registers. {not in Vi} CTRL-R CTRL-R {0-9a-z"%#*+/:.-=} *i_CTRL-R_CTRL-R* @@ -660,7 +663,8 @@ CTRL-X CTRL-L Search backwards for a line that starts with the CTRL-X CTRL-L After expanding a line you can additionally get the line next to it by typing CTRL-X CTRL-L again, unless - a double CTRL-X is used. + a double CTRL-X is used. Only works for loaded + buffers. Completing keywords in current file *compl-current* @@ -1488,7 +1492,7 @@ with data pulled directly from within a database. For detailed instructions and a tutorial see |omni-sql-completion|. The SQL completion plugin can be used in conjunction with other completion -plugins. For example, the PHP filetype has it's own completion plugin. +plugins. For example, the PHP filetype has its own completion plugin. Since PHP is often used to generate dynamic website by accessing a database, the SQL completion plugin can also be enabled. This allows you to complete PHP code and SQL code at the same time. @@ -1725,14 +1729,9 @@ too long when appending characters a line break is automatically inserted. These two commands will keep on asking for lines, until you type a line containing only a ".". Watch out for lines starting with a backslash, see |line-continuation|. -When these commands are used with |:global| or |:vglobal| then the lines are -obtained from the text following the command. Separate lines with a NL -escaped with a backslash: > - :global/abc/insert\ - one line\ - another line -The final "." is not needed then. -NOTE: ":append" and ":insert" don't work properly in between ":if" and + +NOTE: These commands cannot be used with |:global| or |:vglobal|. +":append" and ":insert" don't work properly in between ":if" and ":endif", ":for" and ":endfor", ":while" and ":endwhile". *:start* *:startinsert* diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt index eddd0c54f..68f11b273 100644 --- a/runtime/doc/intro.txt +++ b/runtime/doc/intro.txt @@ -1,4 +1,4 @@ -*intro.txt* For Vim version 7.2. Last change: 2008 Jun 24 +*intro.txt* For Vim version 7.2. Last change: 2009 Apr 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -43,6 +43,10 @@ between different computers and terminals. Besides the remarks given in this document, there is a separate document for each supported system, see |sys-file-list|. + *pronounce* +Vim is pronounced as one word, like Jim, not vi-ai-em. It's written with a +capital, since it's a name, again like Jim. + This manual is a reference for all the Vim commands and options. This is not an introduction to the use of Vi or Vim, it gets a bit complicated here and there. For beginners, there is a hands-on |tutor|. To learn using Vim, read diff --git a/runtime/doc/map.txt b/runtime/doc/map.txt index e7b93787c..ecc992db4 100644 --- a/runtime/doc/map.txt +++ b/runtime/doc/map.txt @@ -1,4 +1,4 @@ -*map.txt* For Vim version 7.2. Last change: 2008 Aug 09 +*map.txt* For Vim version 7.2. Last change: 2009 Nov 04 VIM REFERENCE MANUAL by Bram Moolenaar @@ -272,9 +272,10 @@ as a special key. 1.3 MAPPING AND MODES *:map-modes* *mapmode-nvo* *mapmode-n* *mapmode-v* *mapmode-o* -There are five sets of mappings +There are six sets of mappings - For Normal mode: When typing commands. - For Visual mode: When typing commands while the Visual area is highlighted. +- For Select mode: like Visual mode but typing text replaces the selection. - For Operator-pending mode: When an operator is pending (after "d", "y", "c", etc.). See below: |omap-info|. - For Insert mode. These are also used in Replace mode. @@ -299,6 +300,9 @@ Overview of which map command works in which mode: Some commands work both in Visual and Select mode, some in only one. Note that quite often "Visual" is mentioned where both Visual and Select mode apply. |Select-mode-mapping| +NOTE: Mapping a printable character in Select mode may confuse the user. It's +better to explicitly use :xmap and :smap for printable characters. Or use +:sunmap after defining the mapping. commands: modes: ~ Visual Select ~ @@ -590,11 +594,14 @@ otherwise you would not be able to use those commands anymore. Here are a few suggestions: - Function keys , , etc.. Also the shifted function keys , , etc. Note that is already used for the help command. -- Meta-keys (with the ALT key pressed). |:map-alt-keys| +- Meta-keys (with the ALT key pressed). Depending on your keybord accented + characters may be used as well. |:map-alt-keys| - Use the '_' or ',' character and then any other character. The "_" and "," commands do exist in Vim (see |_| and |,|), but you probably never use them. - Use a key that is a synonym for another command. For example: CTRL-P and CTRL-N. Use an extra character to allow more mappings. +- The key defined by and one or more other keys. This is especially + useful in scripts. |mapleader| See the file "index" for keys that are not used and thus can be mapped without losing any builtin function. You can also use ":help {key}^D" to find out if @@ -1082,7 +1089,7 @@ feature}. It is possible to define your own Ex commands. A user-defined command can act just like a built-in command (it can have a range or arguments, arguments can be completed as filenames or buffer names, etc), except that when the command -is executed, it is transformed into a normal ex command and then executed. +is executed, it is transformed into a normal Ex command and then executed. For starters: See section |40.2| in the user manual. @@ -1150,7 +1157,7 @@ See |:verbose-cmd| for more information. Command attributes -User-defined commands are treated by Vim just like any other ex commands. They +User-defined commands are treated by Vim just like any other Ex commands. They can have arguments, or have a range specified. Arguments are subject to completion as filenames, buffers, etc. Exactly how this works depends upon the command's attributes, which are specified when the command is defined. @@ -1240,7 +1247,7 @@ The function arguments are: CursorPos the cursor position in it (byte index) The function may use these for determining context. For the "custom" argument, it is not necessary to filter candidates against the (implicit -pattern in) ArgLead. Vim will do filter the candidates with its regexp engine +pattern in) ArgLead. Vim will filter the candidates with its regexp engine after function return, and this is probably more efficient in most cases. For the "customlist" argument, Vim will not filter the returned completion candidates and the user supplied function should filter the candidates. @@ -1256,7 +1263,7 @@ the 'path' option: > :com -nargs=1 -bang -complete=customlist,EditFileComplete \ EditFile edit :fun EditFileComplete(A,L,P) - : return split(globpath(&path, a:ArgLead), "\n") + : return split(globpath(&path, a:A), "\n") :endfun < @@ -1405,7 +1412,7 @@ errors and the "update" command to write modified buffers): > This will invoke: > :call Allargs("%s/foo/bar/ge|update") < -When defining an user command in a script, it will be able to call functions +When defining a user command in a script, it will be able to call functions 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 || is used in a command. diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt index 5b25250f5..164b4b7a6 100644 --- a/runtime/doc/mbyte.txt +++ b/runtime/doc/mbyte.txt @@ -1,4 +1,4 @@ -*mbyte.txt* For Vim version 7.2. Last change: 2008 Jun 21 +*mbyte.txt* For Vim version 7.2. Last change: 2009 Nov 17 VIM REFERENCE MANUAL by Bram Moolenaar et al. @@ -555,7 +555,7 @@ Unfortunately, using fonts in X11 is complicated. The name of a single-byte font is a long string. For multi-byte fonts we need several of these... Note: Most of this is no longer relevant for GTK+ 2. Selecting a font via -its XLFD is not supported anymore; see 'guifont' for an example of how to +its XLFD is not supported; see 'guifont' for an example of how to set the font. Do yourself a favor and ignore the |XLFD| and |xfontset| sections below. @@ -1030,7 +1030,7 @@ For Command-line mode the flag is NOT remembered. You are expected to type an Ex command first, which is ASCII. For typing search patterns the 'imsearch' option is used. It can be set to use the same value as for 'iminsert'. - + *lCursor* It is possible to give the GUI cursor another color when the language mappings are being used. This is disabled by default, to avoid that the cursor becomes invisible when you use a non-standard background color. Here is an example to @@ -1246,21 +1246,37 @@ character sets. Therefore it is possible to write text in any language using Unicode (with a few rarely used languages excluded). And it's mostly possible to mix these languages in one file, which is impossible with other encodings. -Unicode can be encoded in several ways. The two most popular ones are UCS-2, -which uses 16-bit words and UTF-8, which uses one or more bytes for each -character. Vim can support all of these encodings, but always uses UTF-8 +Unicode can be encoded in several ways. The most popular one is UTF-8, which +uses one or more bytes for each character and is backwards compatible with +ASCII. On MS-Windows UTF-16 is also used (previously UCS-2), which uses +16-bit words. Vim can support all of these encodings, but always uses UTF-8 internally. -Vim has comprehensive UTF-8 support. It appears to work in: +Vim has comprehensive UTF-8 support. It works well in: - xterm with utf-8 support enabled - Athena, Motif and GTK GUI - MS-Windows GUI +- several other platforms Double-width characters are supported. This works best with 'guifontwide' or 'guifontset'. When using only 'guifont' the wide characters are drawn in the normal width and a space to fill the gap. Note that the 'guifontset' option is no longer relevant in the GTK+ 2 GUI. + *bom-bytes* +When reading a file a BOM (Byte Order Mark) can be used to recognize the +Unicode encoding: + EF BB BF utf-8 + FF FE utf-16 big endian + FE FF utf-16 little endian + 00 00 FE FF utf-32 big endian + FF FE 00 00 utf-32 little endian + +Utf-8 is the recommended encoding. Note that it's difficult to tell utf-16 +and utf-32 apart. Utf-16 is often used on MS-Windows, utf-32 is not +widespread as file format. + + *mbyte-combining* *mbyte-composing* A composing or combining character is used to change the meaning of the character before it. The combining characters are drawn on top of the @@ -1402,7 +1418,7 @@ options.txt for detailed information. Contributions specifically for the multi-byte features by: Chi-Deok Hwang - Nam SungHyun + SungHyun Nam K.Nagano Taro Muraoka Yasuhiro Matsumoto diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt index dc772c734..0ac2e9961 100644 --- a/runtime/doc/message.txt +++ b/runtime/doc/message.txt @@ -1,4 +1,4 @@ -*message.txt* For Vim version 7.2. Last change: 2007 Aug 19 +*message.txt* For Vim version 7.2. Last change: 2009 Oct 28 VIM REFERENCE MANUAL by Bram Moolenaar @@ -135,8 +135,8 @@ This means that there are not enough colors available for Vim. It will still run, but some of the colors will not appear in the specified color. Try stopping other applications that use many colors, or start them after starting gvim. -Netscape is known to consume a lot of colors. You can avoid this by telling -it to use its own colormap: > +Browsers are known to consume a lot of colors. You can avoid this with +netscape by telling it to use its own colormap: > netscape -install Or tell it to limit to a certain number of colors (64 should work well): > netscape -ncols 64 @@ -567,7 +567,7 @@ allowed for the command that was used. Unable to open swap file for "{filename}", recovery impossible Vim was not able to create a swap file. You can still edit the file, but if -Vim unexpected exits the changes will be lost. And Vim may consume a lot of +Vim unexpectedly exits the changes will be lost. And Vim may consume a lot of memory when editing a big file. You may want to change the 'directory' option to avoid this error. See |swap-file|. @@ -758,9 +758,9 @@ and the screen is about to be redrawn: -> Press 'k', , 'u', 'b' or 'g' to scroll back in the messages. This works the same way as at the |more-prompt|. Only works when 'compatible' is off and 'more' is on. --> Pressing 'j', 'd' or is ignored when messages scrolled off the top - of the screen, 'compatible' is off and 'more' is on, to avoid that typing - one 'j' too many causes the messages to disappear. +-> Pressing 'j', 'f', 'd' or is ignored when messages scrolled off the + top of the screen, 'compatible' is off and 'more' is on, to avoid that + typing one 'j' or 'f' too many causes the messages to disappear. -> Press to copy (yank) a modeless selection to the clipboard register. -> Use a menu. The characters defined for Cmdline-mode are used. -> When 'mouse' contains the 'r' flag, clicking the left mouse button works @@ -795,7 +795,7 @@ group. Type effect ~ or or j or one more line d down a page (half a screen) - or down a screen + or f or down a screen G down all the way, until the hit-enter prompt diff --git a/runtime/doc/motion.txt b/runtime/doc/motion.txt index f3364b61f..0b5afe709 100644 --- a/runtime/doc/motion.txt +++ b/runtime/doc/motion.txt @@ -1,4 +1,4 @@ -*motion.txt* For Vim version 7.2. Last change: 2008 Aug 03 +*motion.txt* For Vim version 7.2. Last change: 2009 Sep 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -151,6 +151,11 @@ CTRL-V When used after an operator, before the motion command: Force ============================================================================== 2. Left-right motions *left-right-motions* +These commands move the cursor to the specified column in the current line. +They stop at the first column and at the end of the line, except "$", which +may move to one of the next lines. See 'whichwrap' option to make some of the +commands move across line boundaries. + h or *h* or ** CTRL-H or *CTRL-H* ** @@ -234,7 +239,7 @@ g$ or g When lines wrap ('wrap' on): To the last character of *bar* | To screen column [count] in the current line. - |exclusive| motion. + |exclusive| motion. Ceci n'est pas une pipe. *f* f{char} To [count]'th occurrence of {char} to the right. The @@ -270,11 +275,6 @@ T{char} Till after [count]'th occurrence of {char} to the , Repeat latest f, t, F or T in opposite direction [count] times. -These commands move the cursor to the specified column in the current line. -They stop at the first column and at the end of the line, except "$", which -may move to one of the next lines. See 'whichwrap' option to make some of the -commands move across line boundaries. - ============================================================================== 3. Up-down motions *up-down-motions* @@ -325,9 +325,9 @@ gg Goto line [count], default first line, on the first non-blank character |linewise|. If 'startofline' not set, keep the same column. -:[range] Set the cursor on the specified line number. If - there are several numbers, the last one is used. - +:[range] Set the cursor on the last line number in [range]. + [range] can also be just one line number, e.g., ":1" + or ":'m". *N%* {count}% Go to {count} percentage in the file, on the first non-blank in the line |linewise|. To compute the new @@ -637,7 +637,8 @@ a` *v_a`* *a`* When the cursor starts on a quote, Vim will figure out which quote pairs form a string by searching from the start of the line. - Any trailing or leading white space is included. + Any trailing white space is included, unless there is + none, then leading white space is included. When used in Visual mode it is made characterwise. Repeating this object in Visual mode another string is included. A count is currently not used. diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 84cff6857..e1786133f 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 7.2. Last change: 2008 Nov 25 +*options.txt* For Vim version 7.2. Last change: 2010 Jan 06 VIM REFERENCE MANUAL by Bram Moolenaar @@ -743,8 +743,8 @@ A jump table for the options with a short description can be found at |Q_op|. within a word (initial, medial, final and stand-alone). b) the enabling of the ability to compose characters c) the enabling of the required combining of some characters - When disabled the character display reverts back to each character's - true stand-alone form. + When disabled the display shows each character's true stand-alone + form. Arabic is a complex language which requires other settings, for further details see |arabic.txt|. @@ -813,11 +813,11 @@ A jump table for the options with a short description can be found at |Q_op|. When 'background' is set Vim will adjust the default color groups for the new value. But the colors used for syntax highlighting will not change. *g:colors_name* - When a color scheme is loaded (the "colors_name" variable is set) + When a color scheme is loaded (the "g:colors_name" variable is set) setting 'background' will cause the color scheme to be reloaded. If the color scheme adjusts to the value of 'background' this will work. However, if the color scheme sets 'background' itself the effect may - be undone. First delete the "colors_name" variable when needed. + be undone. First delete the "g:colors_name" variable when needed. When setting 'background' to the default value with: > :set background& @@ -959,7 +959,8 @@ A jump table for the options with a short description can be found at |Q_op|. {not in Vi} List of directories for the backup file, separated with commas. - The backup file will be created in the first directory in the list - where this is possible. + where this is possible. The directory must exist, Vim will not + create it for you. - Empty means that no backup file will be created ('patchmode' is impossible!). Writing may fail because of this. - A directory "." means to put the backup file in the same directory @@ -1143,7 +1144,7 @@ A jump table for the options with a short description can be found at |Q_op|. Some applications use the BOM to recognize the encoding of the file. Often used for UCS-2 files on MS-Windows. For other applications it causes trouble, for example: "cat file1 file2" makes the BOM of file2 - appear halfway the resulting file. + appear halfway the resulting file. Gcc doesn't accept a BOM. When Vim reads a file and 'fileencodings' starts with "ucs-bom", a check for the presence of the BOM is done and 'bomb' set accordingly. Unless 'binary' is set, it is removed from the first line, so that you @@ -1759,8 +1760,8 @@ A jump table for the options with a short description can be found at |Q_op|. set and to the Vim default value when 'compatible' is reset. NOTE: This option is set to the POSIX default value at startup when the Vi default value would be used and the $VIM_POSIX environment - variable exists |posix|. This means tries to behave like the POSIX - specification. + variable exists |posix|. This means Vim tries to behave like the + POSIX specification. contains behavior ~ *cpo-a* @@ -2386,6 +2387,10 @@ A jump table for the options with a short description can be found at |Q_op|. This is specified with 'fileencoding'. The conversion is done with iconv() or as specified with 'charconvert'. + If you need to know whether 'encoding' is a multi-byte encoding, you + can use: > + if has("multi_byte_encoding") +< Normally 'encoding' will be equal to your current locale. This will be the default if Vim recognizes your environment settings. If 'encoding' is not set to the current locale, 'termencoding' must be @@ -2446,6 +2451,9 @@ A jump table for the options with a short description can be found at |Q_op|. 'eadirection' option tells in which direction the size is affected. Changing the height and width of a window can be avoided by setting 'winfixheight' and 'winfixwidth', respectively. + If a window size is specified when creating a new window sizes are + currently not equalized (it's complicated, but may be implemented in + the future). *'equalprg'* *'ep'* 'equalprg' 'ep' string (default "") @@ -2453,7 +2461,8 @@ A jump table for the options with a short description can be found at |Q_op|. {not in Vi} External program to use for "=" command. When this option is empty the internal formatting functions are used; either 'lisp', 'cindent' - or 'indentexpr'. + or 'indentexpr'. When Vim was compiled without internal formatting, + the "indent" program is used. Environment variables are expanded |:set_env|. See |option-backslash| about including spaces and backslashes. This option cannot be set from a |modeline| or in the |sandbox|, for @@ -2550,13 +2559,17 @@ A jump table for the options with a short description can be found at |Q_op|. {not in Vi} Sets the character encoding for the file of this buffer. When 'fileencoding' is different from 'encoding', conversion will be - done when reading and writing the file. + done when writing the file. For reading see below. When 'fileencoding' is empty, the same value as 'encoding' will be used (no conversion when reading or writing a file). + Conversion will also be done when 'encoding' and 'fileencoding' are + both a Unicode encoding and 'fileencoding' is not utf-8. That's + because internally Unicode is always stored as utf-8. WARNING: Conversion can cause loss of information! When - 'encoding' is "utf-8" conversion is most likely done in a way - that the reverse conversion results in the same text. When - 'encoding' is not "utf-8" some characters may be lost! + 'encoding' is "utf-8" or another Unicode encoding, conversion + is most likely done in a way that the reverse conversion + results in the same text. When 'encoding' is not "utf-8" some + characters may be lost! See 'encoding' for the possible values. Additionally, values may be specified that can be handled by the converter, see |mbyte-conversion|. @@ -2843,6 +2856,8 @@ A jump table for the options with a short description can be found at |Q_op|. The expression may be evaluated in the |sandbox|, see |sandbox-option|. + This option can't be set from a |modeline| when the 'diff' option is + on. It is not allowed to change text or jump to another window while evaluating 'foldexpr' |textlock|. @@ -3235,7 +3250,7 @@ A jump table for the options with a short description can be found at |Q_op|. the case of X). The font names given should be "normal" fonts. Vim will try to find the related bold and italic fonts. - For Win32, GTK, Mac OS and Photon: > + For Win32, GTK, Motif, Mac OS and Photon: > :set guifont=* < will bring up a font requester, where you can pick the font you want. @@ -3244,8 +3259,13 @@ A jump table for the options with a short description can be found at |Q_op|. For the GTK+ 2 GUI the font name looks like this: > :set guifont=Andale\ Mono\ 11 -< That's all. XLFDs are no longer accepted. - +< That's all. XLFDs are not used. For Chinese this is reported to work + well: > + if has("gui_gtk2") + set guifont=Bitstream\ Vera\ Sans\ Mono\ 12,Fixed\ 12 + set guifontwide=Microsoft\ Yahei\ 12,WenQuanYi\ Zen\ Hei\ 12 + endif +< For Mac OSX you can use something like this: > :set guifont=Monaco:h10 < Also see 'macatsui', it can help fix display problems. @@ -3491,7 +3511,9 @@ A jump table for the options with a short description can be found at |Q_op|. 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. - + You can include a line break. Simplest method is to use |:let|: > + :let &guitabtooltip = "line one\nline two" +< *'helpfile'* *'hf'* 'helpfile' 'hf' string (default (MSDOS) "$VIMRUNTIME\doc\help.txt" @@ -3776,7 +3798,7 @@ A jump table for the options with a short description can be found at |Q_op|. English characters directly, e.g., when it's used to type accented characters with dead keys. - *'imdisable'* *'imd'* *'nodisable'* *'noimd'* + *'imdisable'* *'imd'* *'noimdisable'* *'noimd'* 'imdisable' 'imd' boolean (default off, on for some systems (SGI)) global {not in Vi} @@ -4092,8 +4114,8 @@ A jump table for the options with a short description can be found at |Q_op|. displayed as , with the hexadecimal value of the byte. When 'display' contains "uhex" all unprintable characters are displayed as . - The NonText highlighting will be used for unprintable characters. - |hl-NonText| + The SpecialKey highlighting will be used for unprintable characters. + |hl-SpecialKey| Multi-byte characters 256 and above are always included, only the characters up to 255 are specified with this option. When a character @@ -4330,10 +4352,17 @@ A jump table for the options with a short description can be found at |Q_op|. *'list'* *'nolist'* 'list' boolean (default off) local to window - List mode: Show tabs as CTRL-I, show end of line with $. Useful to - see the difference between tabs and spaces and for trailing blanks. - Note that this will also affect formatting (set with 'textwidth' or - 'wrapmargin') when 'cpoptions' includes 'L'. See 'listchars' for + List mode: Show tabs as CTRL-I is displayed, display $ after end of + line. Useful to see the difference between tabs and spaces and for + trailing blanks. Further changed by the 'listchars' option. + + The cursor is displayed at the start of the space a Tab character + occupies, not at the end as usual in Normal mode. To get this cursor + position while displaying Tabs with spaces, use: > + :set list lcs=tab\ \ +< + Note that list mode will also affect formatting (set with 'textwidth' + or 'wrapmargin') when 'cpoptions' includes 'L'. See 'listchars' for changing the way tabs are displayed. *'listchars'* *'lcs'* @@ -4516,15 +4545,15 @@ A jump table for the options with a short description can be found at |Q_op|. {not in Vi} Maximum amount of memory (in Kbyte) to use for one buffer. When this limit is reached allocating extra memory for a buffer will cause - other memory to be freed. Maximum value 2000000. Use this to work - without a limit. Also see 'maxmemtot'. + other memory to be freed. The maximum usable value is about 2000000. + Use this to work without a limit. Also see 'maxmemtot'. *'maxmempattern'* *'mmp'* 'maxmempattern' 'mmp' number (default 1000) global {not in Vi} Maximum amount of memory (in Kbyte) to use for pattern matching. - Maximum value 2000000. Use this to work without a limit. + The maximum value is about 2000000. Use this to work without a limit. *E363* When Vim runs into the limit it gives an error message and mostly behaves like CTRL-C was typed. @@ -4539,9 +4568,11 @@ A jump table for the options with a short description can be found at |Q_op|. available) global {not in Vi} - Maximum amount of memory (in Kbyte) to use for all buffers together. - Maximum value 2000000. Use this to work without a limit. Also see - 'maxmem'. + Maximum amount of memory in Kbyte to use for all buffers together. + The maximum usable value is about 2000000 (2 Gbyte). Use this to work + without a limit. On 64 bit machines higher values might work. But + hey, do you really need more than 2 Gbyte for text editing? + Also see 'maxmem'. *'menuitems'* *'mis'* 'menuitems' 'mis' number (default 25) @@ -5607,8 +5638,8 @@ A jump table for the options with a short description can be found at |Q_op|. winsize window sizes Don't include both "curdir" and "sesdir". - When "curdir" nor "sesdir" is included, file names are stored with - absolute paths. + When neither "curdir" nor "sesdir" is included, file names are stored + with absolute paths. "slash" and "unix" are useful on Windows when sharing session files with Unix. The Unix version of Vim cannot source dos format scripts, but the Windows version of Vim can source unix format scripts. @@ -5884,8 +5915,12 @@ A jump table for the options with a short description can be found at |Q_op|. {not available when compiled without the |+linebreak| feature} String to put at the start of lines that have been wrapped. Useful - values are "> " or "+++ ". - Only printable single-cell characters are allowed, excluding and + values are "> " or "+++ ": > + :set showbreak=>\ +< Note the backslash to escape the trailing space. It's easier like + this: > + :let &showbreak = '+++ ' +< Only printable single-cell characters are allowed, excluding and comma (in a future version the comma might be used to separate the part that is shown at the end and at the start of a line). The characters are highlighted according to the '@' flag in @@ -5906,7 +5941,8 @@ A jump table for the options with a short description can be found at |Q_op|. In Visual mode the size of the selected area is shown: - When selecting characters within a line, the number of characters. - When selecting more than one line, the number of lines. - - When selecting a block, the size in screen characters: linesxcolumns. + - When selecting a block, the size in screen characters: + {lines}x{columns}. NOTE: This option is set to the Vi default value when 'compatible' is set and to the Vim default value when 'compatible' is reset. @@ -6641,8 +6677,9 @@ A jump table for the options with a short description can be found at |Q_op|. of '2' in the "!_TAG_FILE_SORTED" line for this. A tag file can be case-fold sorted with the -f switch to "sort" in most unices, as in the command: "sort -f -o tags tags". For "Exuberant ctags" version - 5.3 or higher the -f or --fold-case-sort switch can be used for this - as well. Note that case must be folded to uppercase for this to work. + 5.x or higher (at least 5.5) the --sort=foldcase switch can be used + for this as well. Note that case must be folded to uppercase for this + to work. When 'tagbsearch' is off, tags searching is slower when a full match exists, but faster when no full match exists. Tags in unsorted tags @@ -7252,9 +7289,9 @@ A jump table for the options with a short description can be found at |Q_op|. *'viminfo'* *'vi'* *E526* *E527* *E528* 'viminfo' 'vi' string (Vi default: "", Vim default for MS-DOS, - Windows and OS/2: '20,<50,s10,h,rA:,rB:, - for Amiga: '20,<50,s10,h,rdf0:,rdf1:,rdf2: - for others: '20,<50,s10,h) + Windows and OS/2: '100,<50,s10,h,rA:,rB:, + for Amiga: '100,<50,s10,h,rdf0:,rdf1:,rdf2: + for others: '100,<50,s10,h) global {not in Vi} {not available when compiled without the |+viminfo| @@ -7727,6 +7764,8 @@ A jump table for the options with a short description can be found at |Q_op|. :set sidescroll=5 :set listchars+=precedes:<,extends:> < See 'sidescroll', 'listchars' and |wrap-off|. + This option can't be set from a |modeline| when the 'diff' option is + on. *'wrapmargin'* *'wm'* 'wrapmargin' 'wm' number (default 0) diff --git a/runtime/doc/os_390.txt b/runtime/doc/os_390.txt index 04ca16aff..f06163879 100644 --- a/runtime/doc/os_390.txt +++ b/runtime/doc/os_390.txt @@ -1,4 +1,4 @@ -*os_390.txt* For Vim version 7.2. Last change: 2005 Mar 29 +*os_390.txt* For Vim version 7.2. Last change: 2008 Dec 17 VIM REFERENCE MANUAL by Ralf Schandl @@ -282,7 +282,7 @@ not an exhaustive summary of all the modifications made to the code base. 5.6-390c: I grepped through the source and examined every spot with a character - involved in a operation (+-). I hope I now found all EBCDIC/ASCII + involved in an operation (+-). I hope I now found all EBCDIC/ASCII stuff, but .... Fixed: @@ -311,7 +311,7 @@ not an exhaustive summary of all the modifications made to the code base. - added special compiler and linker options if building with X11 - configure: - after created via autoconf hand-edited it to make the test for - ICEConnectionNumber work. This is a autoconf problem. OS/390 UNIX + ICEConnectionNumber work. This is an autoconf problem. OS/390 UNIX needs -lX11 for this. - Makefile - Don't include the lib directories ('-L...') into the variable diff --git a/runtime/doc/os_vms.txt b/runtime/doc/os_vms.txt index 0d7590628..39efcf646 100644 --- a/runtime/doc/os_vms.txt +++ b/runtime/doc/os_vms.txt @@ -1,4 +1,4 @@ -*os_vms.txt* For Vim version 7.2. Last change: 2008 Aug 19 +*os_vms.txt* For Vim version 7.2. Last change: 2009 Oct 28 VIM REFERENCE MANUAL @@ -139,9 +139,9 @@ Use: > define/nolog VIMRUNTIME device:[path.vim.vim60] define/nolog TMP device:[path.tmp] -to get vim.exe to find its document, filetype, and syntax files, and to +To get vim.exe to find its document, filetype, and syntax files, and to specify a directory where temporary files will be located. Copy the "runtime" -subdirectory of the vim distribution to vimruntime. +subdirectory of the Vim distribution to vimruntime. Logicals $VIMRUNTIME and $TMP are optional. @@ -217,7 +217,7 @@ You just have to define the "whole" path: > $ define VIM "[""user password""]::device:" $ vi*m :== "mcr VIM:VIM.EXE" -as for example: > +As for example: > $ define VIM "PLUTO::RF10:[UTIL.VIM]" $ define VIM "PLUTO""ZAY mypass""::RF10:[UTIL.VIM]" ! if passwd required @@ -234,7 +234,7 @@ then add to the SYS$STARTUP:SYLOGICALS.COM > $ define/nolog/sys VIM device: $ define/nolog/sys TMP SYS$SCRATCH -and to the SYS$STARTUP:SYLOGIN.COM > +And to the SYS$STARTUP:SYLOGIN.COM > $ vi*m :== mcr VIM:VIM.EXE $ gv*im:== spawn/nowait/input=NLA0 mcr VIM:VIM.EXE -g -GEOMETRY 80x40 @@ -396,7 +396,7 @@ It is possible to use Vim as an internode editor. vi """username passwd"":::;" -example: > +Example: > vi "pluto""zay passwd""::RF10:TEST.C;1" Note: syntax is very important, otherwise VMS will recognize more parameters @@ -418,7 +418,7 @@ and run the command procedure below: > $ end: Note: Never use it in a clustered environment (you do not need it), loading -could be very-very slow, but even faster then a local Emacs. :-) +could be very-very slow, but even faster than a local Emacs. :-) (Zoltan Arpadffy, Vim 5.6) @@ -575,12 +575,12 @@ boxes that is meant to solve GNU problems on OpenVMS. 8.12 diff-mode -Vim 6.0 and higher supports vim diff-mode (See |new-diff-mode|, |diff-mode| +Vim 6.0 and higher supports Vim diff-mode (See |new-diff-mode|, |diff-mode| and |08.7|). This uses the external program 'diff' and expects a Unix-like output format from diff. The standard VMS diff has a different output -format. To use vim on VMS in diff-mode, you need to: +format. To use Vim on VMS in diff-mode, you need to: 1 Install a Unix-like diff program, e.g. GNU diff - 2 Tell vim to use the Unix-like diff for diff-mode. + 2 Tell Vim to use the Unix-like diff for diff-mode. You can download GNU diff from the VIM-VMS website, it is one of the GNU tools in http://www.polarhome.com/vim/files/gnu_tools.zip. I suggest to @@ -594,7 +594,7 @@ prompt: > GDIFF :== $GNU:DIFF.EXE -Now you need to tell vim to use the new diff program. Take the example +Now you need to tell Vim to use the new diff program. Take the example settings from |diff-diffexpr| and change the call to the external diff program to the new diff on VMS. Add this to your .vimrc file: > @@ -615,7 +615,7 @@ program to the new diff on VMS. Add this to your .vimrc file: > endfunction endif -You can now use vim in diff-mode, e.g. to compare two files in read-only +You can now use Vim in diff-mode, e.g. to compare two files in read-only mode: > $ VIM -D/R @@ -638,7 +638,7 @@ You can now compare files in 4 ways: > 8.13 Allow '$' in C keywords DEC C uses many identifiers with '$' in them. This is not allowed in ANSI C, -and vim recognises the '$' as the end of the identifier. You can change this +and Vim recognises the '$' as the end of the identifier. You can change this with the |iskeyword|command. Add this command to your .vimrc file: > @@ -667,7 +667,7 @@ start it with: > 8.14 Slow start in console mode issue -As GUI/GTK Vim works equally well in console mode, many administartors +As GUI/GTK Vim works equally well in console mode, many administrators deploy those executables system wide. Unfortunately, on a remote slow connections GUI/GTK executables behave rather slow when user wants to run Vim just in the console mode - because of X environment detection timeout. @@ -680,7 +680,7 @@ both GUI/GTK build and just console build executables, like below: > |----- syntax vimrc (system rc files) gvimrc - gvim.exe (the remaned GUI or GTK built vim.exe) + gvim.exe (the renamed GUI or GTK built vim.exe) vim.exe (the console only executable) Define system symbols like below in for ex in LOGIN.COM or SYLOGIN.COM: > @@ -713,11 +713,11 @@ View of Cluster from system ID 11655 node: TOR ¦ ODIN ¦ VMS V7.3-2 ¦ MEMBER ¦ +---------------------------------+ -It is convinient to have a common VIM directory but execute different +It is convenient to have a common VIM directory but execute different executables. There are more solutions for this problem: -solution 1. all executables in the same directory with different names +Solution 1. All executables in the same directory with different names This is easily done with the following script that can be added to the login.com or sylogin.com: > @@ -737,7 +737,7 @@ to the login.com or sylogin.com: > $ vi*m :== mcr vim:VIM.EXE_IA64 $ endif -solution 2. different directories: > +Solution 2. Different directories: > $ if f$getsyi("NODE_HWTYPE") .eqs. "VAX" $ then @@ -757,8 +757,8 @@ solution 2. different directories: > $! VIMRUNTIME must be defined in order to find runtime files $ define/nolog VIMRUNTIME RF10:[UTIL.VIM72] -A good examle for this approach is the [GNU]gnu_tools.com script from GNU_TOOLS.ZIP -package downloadable from http://www.polarhome.com/vim/ +A good example for this approach is the [GNU]gnu_tools.com script from +GNU_TOOLS.ZIP package downloadable from http://www.polarhome.com/vim/ (Zoltan Arpadffy, Vim 7.2) diff --git a/runtime/doc/pattern.txt b/runtime/doc/pattern.txt index 77a450552..56341c915 100644 --- a/runtime/doc/pattern.txt +++ b/runtime/doc/pattern.txt @@ -1,4 +1,4 @@ -*pattern.txt* For Vim version 7.2. Last change: 2008 Jul 16 +*pattern.txt* For Vim version 7.2. Last change: 2008 Nov 18 VIM REFERENCE MANUAL by Bram Moolenaar @@ -32,12 +32,13 @@ explanations are in chapter 27 |usr_27.txt|. |linewise|. */* -/ Search forward for the [count]'th latest used - pattern |last-pattern| with latest used |{offset}|. +/ Search forward for the [count]'th occurrence of the + latest used pattern |last-pattern| with latest used + |{offset}|. -//{offset} Search forward for the [count]'th latest used - pattern |last-pattern| with new |{offset}|. If - {offset} is empty no offset is used. +//{offset} Search forward for the [count]'th occurrence of the + latest used pattern |last-pattern| with new + |{offset}|. If {offset} is empty no offset is used. *?* ?{pattern}[?] Search backward for the [count]'th previous @@ -48,12 +49,13 @@ explanations are in chapter 27 |usr_27.txt|. down |linewise|. *?* -? Search backward for the [count]'th latest used - pattern |last-pattern| with latest used |{offset}|. +? Search backward for the [count]'th occurrence of the + latest used pattern |last-pattern| with latest used + |{offset}|. -??{offset} Search backward for the [count]'th latest used - pattern |last-pattern| with new |{offset}|. If - {offset} is empty no offset is used. +??{offset} Search backward for the [count]'th occurrence of the + latest used pattern |last-pattern| with new + |{offset}|. If {offset} is empty no offset is used. *n* n Repeat the latest "/" or "?" [count] times. @@ -507,7 +509,7 @@ Character classes {not in Vi}: */character-classes* |/\Z| \Z \Z ignore differences in Unicode "combining characters". Useful when searching voweled Hebrew or Arabic text. -|/\%d| \%d \%d match specified decimal character (eg \%d123 +|/\%d| \%d \%d match specified decimal character (eg \%d123) |/\%x| \%x \%x match specified hex character (eg \%x2a) |/\%o| \%o \%o match specified octal character (eg \%o040) |/\%u| \%u \%u match specified multibyte character (eg \%u20ac) @@ -794,7 +796,11 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on): */\%V* \%V Match inside the Visual area. When Visual mode has already been stopped match in the area that |gv| would reselect. - Only works for the current buffer. + This is a |/zero-width| match. To make sure the whole pattern is + inside the Visual area put it at the start and end of the pattern, + e.g.: > + /\%Vfoo.*bar\%V +< Only works for the current buffer. */\%#* *cursor-position* \%# Matches with the cursor position. Only works when matching in a @@ -877,10 +883,13 @@ $ At end of pattern or in front of "\|", "\)" or "\n" ('magic' on): this will clearly show when the match is updated or not. To match the text up to column 17: > /.*\%17v -< Column 17 is not included, because that's where the "\%17v" matches, - and since this is a |/zero-width| match, column 17 isn't included in - the match. This does the same: > - /.*\%<18v +< Column 17 is included, because that's where the "\%17v" matches, + even though this is a |/zero-width| match. Adding a dot to match the + next character has the same result: > + /.*\%17v. +< This command does the same thing, but also matches when there is no + character in column 17: > + /.*\%<18v. < Character classes: {not in Vi} diff --git a/runtime/doc/pi_getscript.txt b/runtime/doc/pi_getscript.txt index 3ac15692b..1ea67c2b1 100644 --- a/runtime/doc/pi_getscript.txt +++ b/runtime/doc/pi_getscript.txt @@ -1,11 +1,11 @@ -*pi_getscript.txt* For Vim version 7.2. Last change: 2008 Jun 29 +*pi_getscript.txt* For Vim version 7.0. Last change: 2009 Oct 14 > GETSCRIPT REFERENCE MANUAL by Charles E. Campbell, Jr. < Authors: Charles E. Campbell, Jr. (remove NOSPAM from the email address) *GetLatestVimScripts-copyright* -Copyright: (c) 2004-2006 by Charles E. Campbell, Jr. *glvs-copyright* +Copyright: (c) 2004-2009 by Charles E. Campbell, Jr. *glvs-copyright* The VIM LICENSE applies to getscript.vim and pi_getscript.txt (see |copyright|) except use "getscript" instead of "Vim". No warranty, express or implied. @@ -51,7 +51,7 @@ The GetLatestVimScripts.dist file serves as an example and a template for your own personal list. Feel free to remove all the scripts mentioned within it; the "important" part of it is the first two lines. -Your computer needs to have wget for GetLatestVimScripts to do its work. +Your computer needs to have wget or curl for GetLatestVimScripts to do its work. 1. if compressed: gunzip getscript.vba.gz 2. Unix: @@ -76,7 +76,7 @@ Your computer needs to have wget for GetLatestVimScripts to do its work. ============================================================================== 3. GetLatestVimScripts Usage *glvs-usage* *:GLVS* -Unless its been defined elsewhere, > +Unless it has been defined elsewhere, > :GLVS will invoke GetLatestVimScripts(). If some other plugin has defined that command, then you may type @@ -136,7 +136,7 @@ insures that GetLatestVimScripts will assume that the script it has is out-of-date. The SourceID is extracted by GetLatestVimScripts from the script's page on -vim.sf.net; whenever its greater than the one stored in the +vim.sf.net; whenever it is greater than the one stored in the GetLatestVimScripts.dat file, the script will be downloaded (see |GetLatestVimScripts_dat|). @@ -176,6 +176,8 @@ Note: the first two lines are required, but essentially act as comments. ============================================================================== 5. GetLatestVimScripts Friendly Plugins *getscript-plugins* *glvs-plugins* + (this section is for plugin authors)~ + If a plugin author includes the following comment anywhere in their plugin, GetLatestVimScripts will find it and use it to automatically build the user's GetLatestVimScripts.dat files: @@ -191,11 +193,20 @@ plus any additional lines describing any plugin dependencies it may have. Same format, of course! If your command is auto-installable (see |glvs-autoinstall|), and most scripts -are, then you may include :AutoInstall: at the start of "yourscriptname". +are, then you may include :AutoInstall: just before "yourscriptname": +> + src_id + v + " GetLatestVimScripts: ### ### :AutoInstall: yourscriptname + ^ + scriptid +< +NOTE: :AutoInstall: is a plugin-author option, not a GetLatestVimScripts.dat~ + entry!~ GetLatestVimScripts commands for those scripts are then appended, if not -already present, to the user's GetLatest/GetLatestVimScripts.dat file. Its a -relatively painless way to automate the acquisition of any scripts your +already present, to the user's GetLatest/GetLatestVimScripts.dat file. It is +a relatively painless way to automate the acquisition of any scripts your plugins depend upon. Now, as an author, you probably don't want GetLatestVimScripts to download @@ -290,14 +301,19 @@ after/syntax/c.vim contained in it to overwrite a user's c.vim. This variable holds the options to be used with the g:GetLatestVimScripts_wget command. > - g:getLatestVimScripts_allowautoinstall + g:GetLatestVimScripts_allowautoinstall < default= 1 This variable indicates whether GetLatestVimScripts is allowed - to attempt to automatically install scripts. Note that it - doesn't understand vimballs (yet). Furthermore, the plugin - author has to have explicitly indicated that his/her plugin - is automatically installable. - + to attempt to automatically install scripts. Furthermore, the + plugin author has to have explicitly indicated that his/her + plugin is automatically installable (via the :AutoInstall: + keyword in the GetLatestVimScripts comment line). +> + g:GetLatestVimScripts_autoinstalldir +< default= $HOME/.vim (linux) + default= $HOME/vimfiles (windows) + Override where :AutoInstall: scripts will be installed. + Doesn't override vimball installation. ============================================================================== 8. GetLatestVimScripts Algorithm *glvs-algorithm* *glvs-alg* @@ -336,8 +352,10 @@ The AutoInstall process will: 9. GetLatestVimScripts History *getscript-history* *glvs-hist* {{{1 v31 Jun 29, 2008 : * (Bill McCarthy) fixed having hls enabled with getscript + * (David Schaefer) the acd option interferes with vimballs + Solution: bypass the acd option v30 Jun 13, 2008 : * GLVS now checks for existence of fnameescape() and will - issue an error message if its not supported + issue an error message if it is not supported v29 Jan 07, 2008 : * Bram M pointed out that cpo is a global option and that getscriptPlugin.vim was setting it but not restoring it. v28 Jan 02, 2008 : * improved shell quoting character handling, cygwin diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt index aefe987ad..7635af288 100644 --- a/runtime/doc/pi_netrw.txt +++ b/runtime/doc/pi_netrw.txt @@ -1,8 +1,22 @@ -*pi_netrw.txt* For Vim version 7.2. Last change: 2008 Aug 08 +*pi_netrw.txt* For Vim version 7.2. Last change: 2009 Dec 28 ----------------------------------------------------- NETRW REFERENCE MANUAL by Charles E. Campbell, Jr. ----------------------------------------------------- +Author: Charles E. Campbell, Jr. + (remove NOSPAM from Campbell's email first) + +Copyright: Copyright (C) 2009 Charles E Campbell, Jr *netrw-copyright* + Permission is hereby granted to use and distribute this code, with + or without modifications, provided that this copyright notice is + copied with it. Like anything else that's free, netrw.vim, + netrwPlugin.vim, netrwFileHandlers.vim, netrwSettings.vim, + syntax/netrw.vim, and pi_netrw.txt are provided *as is* and comes + with no warranty of any kind, either expressed or implied. No + guarantees of merchantability. No guarantees of suitability for + any purpose. By using this plugin, you agree that in no event will + the copyright holder be liable for any damages resulting from the + use of this software. *dav* *ftp* *netrw-file* *Nread* *rcp* *scp* @@ -18,6 +32,7 @@ EXTERNAL APPLICATIONS AND PROTOCOLS................|netrw-externapp| READING............................................|netrw-read| WRITING............................................|netrw-write| + SOURCING...........................................|netrw-source| DIRECTORY LISTING..................................|netrw-dirlist| CHANGING THE USERID AND PASSWORD...................|netrw-chgup| VARIABLES AND SETTINGS.............................|netrw-variables| @@ -38,11 +53,12 @@ Browsing With A Horizontally Split Window..........|netrw-o| Browsing With A New Tab............................|netrw-t| Browsing With A Vertically Split Window............|netrw-v| - Change Listing Style...............................|netrw-i| + Change Listing Style.(thin wide long tree).........|netrw-i| Changing To A Bookmarked Directory.................|netrw-gb| Changing To A Predecessor Directory................|netrw-u| Changing To A Successor Directory..................|netrw-U| Customizing Browsing With A User Function..........|netrw-x| + Deleting Bookmarks.................................|netrw-mB| Deleting Files Or Directories......................|netrw-D| Directory Exploring Commands.......................|netrw-explore| Exploring With Stars and Patterns..................|netrw-star| @@ -80,10 +96,12 @@ Renaming Files Or Directories......................|netrw-move| Reversing Sorting Order............................|netrw-r| Selecting Sorting Style............................|netrw-s| + Setting Editing Window.............................|netrw-C| 10. Problems and Fixes...................................|netrw-problems| 11. Debugging Netrw Itself...............................|netrw-debug| 12. History..............................................|netrw-history| -13. Credits..............................................|netrw-credits| +13. Todo.................................................|netrw-todo| +14. Credits..............................................|netrw-credits| {Vi does not have any of this} @@ -91,7 +109,7 @@ 2. Starting With Netrw *netrw-start* {{{1 Netrw makes reading files, writing files, browsing over a network, and -browsing locally easy! First, make sure that you have plugins enabled, so +local browsing easy! First, make sure that you have plugins enabled, so you'll need to have at least the following in your <.vimrc>: (or see |netrw-activate|) > @@ -136,8 +154,11 @@ the directory name is followed by a "/"): > < See |netrw-browse| for more! -There are more protocols supported by netrw just than scp and ftp, too: see the -next section, |netrw-externapp|, for how to use these external applications. +There are more protocols supported by netrw than just scp and ftp, too: see the +next section, |netrw-externapp|, on how to use these external applications with +netrw and vim. + +PREVENTING LOADING If you want to use plugins, but for some reason don't wish to use netrw, then you need to avoid loading both the plugin and the autoload portions of netrw. @@ -150,7 +171,7 @@ You may do so by placing the following two lines in your <.vimrc>: > ============================================================================== 3. Netrw Reference *netrw-ref* {{{1 - Netrw supports several protocols in addition to scp and ftp mentioned + Netrw supports several protocols in addition to scp and ftp as mentioned in |netrw-start|. These include dav, fetch, http,... well, just look at the list in |netrw-externapp|. Each protocol is associated with a variable which holds the default command supporting that protocol. @@ -159,16 +180,35 @@ EXTERNAL APPLICATIONS AND PROTOCOLS *netrw-externapp* {{{2 Protocol Variable Default Value -------- ---------------- ------------- - dav: *g:netrw_dav_cmd* = "cadaver" - fetch: *g:netrw_fetch_cmd* = "fetch -o" if fetch is available - ftp: *g:netrw_ftp_cmd* = "ftp" - http: *g:netrw_http_cmd* = "curl -o" if curl is available - http: g:netrw_http_cmd = "wget -q -O" elseif wget is available - http: g:netrw_http_cmd = "fetch -o" elseif fetch is available - rcp: *g:netrw_rcp_cmd* = "rcp" - rsync: *g:netrw_rsync_cmd* = "rsync -a" - scp: *g:netrw_scp_cmd* = "scp -q" - sftp: *g:netrw_sftp_cmd* = "sftp" + dav: *g:netrw_dav_cmd* = "cadaver" if cadaver is executable + dav: g:netrw_dav_cmd = "curl -o" elseif curl is available + fetch: *g:netrw_fetch_cmd* = "fetch -o" if fetch is available + ftp: *g:netrw_ftp_cmd* = "ftp" + http: *g:netrw_http_cmd* = "elinks" if elinks is available + http: g:netrw_http_cmd = "links" elseif links is available + http: g:netrw_http_cmd = "curl" elseif curl is available + http: g:netrw_http_cmd = "wget" elseif wget is available + http: g:netrw_http_cmd = "fetch" elseif fetch is available + rcp: *g:netrw_rcp_cmd* = "rcp" + rsync: *g:netrw_rsync_cmd* = "rsync -a" + scp: *g:netrw_scp_cmd* = "scp -q" + sftp: *g:netrw_sftp_cmd* = "sftp" + + *g:netrw_http_xcmd* : the option string for http://... protocols are + specified via this variable and may be independently overridden. By + default, the option arguments for the http-handling commands are: > + + elinks : "-source >" + links : "-source >" + curl : "-o" + wget : "-q -O" + fetch : "-o" +< + For example, if your system has elinks, and you'd rather see the + page using an attempt at rendering the text, you may wish to have > + let g:netrw_http_xcmd= "-dump >" +< in your .vimrc. + READING *netrw-read* *netrw-nread* {{{2 @@ -241,8 +281,8 @@ DIRECTORY LISTING *netrw-dirlist* {{{2 :e ftp://[user]@hostname/path/ < For remote directories (ie. those using scp or ftp), that trailing - "/" is necessary (it tells netrw that its to treat it as a directory - to browse instead of a file to download). + "/" is necessary (the slash tells netrw to treat the argument as a + directory to browse instead of a file to download). However, the Nread command can also be used to accomplish this: @@ -275,8 +315,17 @@ preferences. One way to look at them is via the command :NetrwSettings (see settings are described below, in |netrw-browser-options|, and in |netrw-externapp|: - *b:netrw_lastfile* last file Network-read/written retained on a per-buffer - basis (supports plain :Nw ) + *b:netrw_lastfile* last file Network-read/written retained on a + per-buffer basis (supports plain :Nw ) + + *g:netrw_chgwin* specifies a window number where file edits will take + place. (also see |netrw-C|) + (default) not defined + + *g:Netrw_funcref* specifies a function to be called when netrw edits + a file. The file is first edited, and then the + function reference (|Funcref|) is called. + (default) not defined *g:netrw_ftp* if it doesn't exist, use default ftp =0 use default ftp (uid password) @@ -285,7 +334,7 @@ settings are described below, in |netrw-browser-options|, and in value of this variable to see if the alternate ftp method works for your setup. - *g:netrw_extracmd* default: doesn't exist + *g:netrw_ftpextracmd* default: doesn't exist If this variable exists, then any string it contains will be placed into the commands set to your ftp client. As an example: @@ -305,8 +354,8 @@ settings are described below, in |netrw-browser-options|, and in *g:netrw_nogx* if this variable exists, then the "gx" map will not be available (see |netrw-gx|) - *g:netrw_uid* (ftp) user-id, retained on a per-session basis - *s:netrw_passwd* (ftp) password, retained on a per-session basis + *g:netrw_uid* (ftp) user-id, retained on a per-vim-session basis + *s:netrw_passwd* (ftp) password, retained on a per-vim-session basis *g:netrw_preview* =0 (default) preview window shown in a horizontally split window @@ -317,6 +366,13 @@ settings are described below, in |netrw-browser-options|, and in *g:netrw_scpport* = "-P" : option to use to set port for scp *g:netrw_sshport* = "-p" : option to use to set port for ssh + *g:netrw_sepchr* =\0xff + =\0x01 for enc == euc-jp (and perhaps it should be for + others, too, please let me + know) + Separates priority codes from filenames internally. + See |netrw-p12|. + *g:netrw_silent* =0 : transfers done normally =1 : transfers done silently @@ -380,6 +436,30 @@ series of commands (typically ftp) which it issues to an external program from/written to a temporary file (under Unix/Linux, /tmp/...) which the script will clean up. +Now, a word about Jan Minář's "FTP User Name and Password Disclosure"; first, +ftp is not a secure protocol. User names and passwords are transmitted "in +the clear" over the internet; any snooper tool can pick these up; this is not +a netrw thing, this is a ftp thing. If you're concerned about this, please +try to use scp or sftp instead. + +Netrw re-uses the user id and password during the same vim session and so long +as the remote hostname remains the same. + +Jan seems to be a bit confused about how netrw handles ftp; normally multiple +commands are performed in a "ftp session", and he seems to feel that the +uid/password should only be retained over one ftp session. However, netrw +does every ftp operation in a separate "ftp session"; so remembering the +uid/password for just one "ftp session" would be the same as not remembering +the uid/password at all. IMHO this would rapidly grow tiresome as one +browsed remote directories, for example. + +On the other hand, thanks go to Jan M. for pointing out the many +vulnerabilities that netrw (and vim itself) had had in handling "crafted" +filenames. The |shellescape()| and |fnameescape()| functions were written in +response by Bram Moolenaar to handle these sort of problems, and netrw has +been modified to use them. Still, my advice is, if the "filename" looks like +a vim command that you aren't comfortable with having executed, don't open it. + *netrw-putty* *netrw-pscp* *netrw-psftp* One may modify any protocol's implementing external application by setting a variable (ex. scp uses the variable g:netrw_scp_cmd, which is defaulted to @@ -396,8 +476,8 @@ file). Thus, concerned users may decide to write a NetReadFixup() function that will clean up after reading with their ftp. Some Unix systems (ie., FreeBSD) provide a utility called "fetch" which uses the ftp protocol but is not noisy and more convenient, actually, for to use. -Consequently, if "fetch" is executable, it will be used to do reads for -ftp://... (and http://...) . See |netrw-var| for more about this. +Consequently, if "fetch" is available (ie. executable), it may be preferable +to use it for ftp://... based transfers. For rcp, scp, sftp, and http, one may use network-oriented file transfers transparently; ie. @@ -405,7 +485,7 @@ transparently; ie. vim rcp://[user@]machine/path vim scp://[user@]machine/path < -If your ftp supports <.netrc>, then it too can be just as transparently used +If your ftp supports <.netrc>, then it too can be transparently used if the needed triad of machine name, user id, and password are present in that file. Your ftp must be able to use the <.netrc> file on its own, however. > @@ -568,9 +648,8 @@ below, a {netfile} is an url to a remote file. :[range]Nw[rite] {netfile} [{netfile}]... Write the specified lines to the {netfile}. -:Nr[ead] Read the specified lines into the current - buffer from the file specified in - b:netrw_lastfile. +:Nr[ead] Read the lines from the file specified in b:netrw_lastfile + into the current buffer. :Nr[ead] {netfile} {netfile}... Read the {netfile} after the current line. @@ -633,12 +712,9 @@ set in the user's <.vimrc> file: (see also |netrw-settings| |netrw-protocol|) to be ignored. b:netrw_lastfile Holds latest method/machine/path. b:netrw_line Holds current line number (during NetWrite) - g:netrw_passwd Holds current password for ftp. g:netrw_silent =0 transfers done normally =1 transfers done silently g:netrw_uid Holds current user-id for ftp. - =1 use alternate ftp (user uid password) - (see |netrw-options|) g:netrw_use_nt_rcp =0 don't use WinNT/2K/XP's rcp (default) =1 use WinNT/2K/XP's rcp, binary mode g:netrw_win95ftp =0 use unix-style ftp even if win95/98/ME/etc @@ -654,9 +730,10 @@ temporarily. Variable Meaning -------- ------------------------------------ < - g:netrw_method Index indicating rcp/ftp+.netrc/ftp + b:netrw_method Index indicating rcp/ftp+.netrc/ftp + w:netrw_method (same as b:netrw_method) g:netrw_machine Holds machine name parsed from input - g:netrw_fname Holds filename being accessed > + b:netrw_fname Holds filename being accessed > ------------------------------------------------------------ < *netrw-protocol* @@ -678,7 +755,8 @@ variables listed below, and may be modified by the user. read via ftp automatically transformed however they wish by NetReadFixup() - g:netrw_dav_cmd variable ="cadaver" + g:netrw_dav_cmd variable ="cadaver" if cadaver is executable + g:netrw_dav_cmd variable ="curl -o" elseif curl is executable g:netrw_fetch_cmd variable ="fetch -o" if fetch is available g:netrw_ftp_cmd variable ="ftp" g:netrw_http_cmd variable ="fetch -o" if fetch is available @@ -745,7 +823,7 @@ renders the server treatment as "trusted". *netrw-fixup* *netreadfixup* If your ftp for whatever reason generates unwanted lines (such as AUTH -messages) you may write a NetReadFixup(tmpfile) function: +messages) you may write a NetReadFixup() function: > function! NetReadFixup(method,line1,line2) " a:line1: first new line in current file @@ -782,7 +860,7 @@ itself: ============================================================================== 9. Browsing *netrw-browsing* *netrw-browse* *netrw-help* {{{1 - *netrw-browser* *netrw-dir* *netrw-list* + *netrw-browser* *netrw-dir* *netrw-list* INTRODUCTION TO BROWSING *netrw-intro-browse* {{{2 (Quick References: |netrw-quickmaps| |netrw-quickcoms|) @@ -818,7 +896,7 @@ where [protocol] is typically scp or ftp. As an example, try: > vim ftp://ftp.home.vim.org/pub/vim/ < -For local directories, the trailing slash is not required. Again, because its +For local directories, the trailing slash is not required. Again, because it's easy to miss: to browse remote directories, the url must terminate with a slash! @@ -830,6 +908,7 @@ There are several things you can do to affect the browser's display of files: * To change the listing style, press the "i" key (|netrw-i|). Currently there are four styles: thin, long, wide, and tree. + To make that change "permanent", see |g:netrw_liststyle|. * To hide files (don't want to see those xyz~ files anymore?) see |netrw-ctrl-h|. @@ -838,6 +917,18 @@ There are several things you can do to affect the browser's display of files: See |netrw-browse-cmds| for all the things you can do with netrw! + *netrw-getftype* *netrw-filigree* *netrw-ftype* +The |getftype()| function is used to append a bit of filigree to indicate +filetype to locally listed files: + + directory : / + executable : * + fifo : | + links : @ + sockets : = + +The filigree also affects the |g:netrw_sort_sequence|. + QUICK HELP *netrw-quickhelp* {{{2 (Use ctrl-] to select a topic)~ @@ -876,11 +967,11 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2 hiding (suppress display of files matching g:netrw_list_hide) showing (display only files which match g:netrw_list_hide) c Make browsing directory the current directory |netrw-c| + C Setting the editing window |netrw-C| d Make a directory |netrw-d| D Attempt to remove the file(s)/directory(ies) |netrw-D| gb Go to previous bookmarked directory |netrw-gb| gh Quick hide/unhide of dot-files |netrw-gh| - gi Display information on file |netrw-qf| Edit file hiding list |netrw-ctrl-h| i Cycle between thin, long, wide, and tree listings |netrw-i| Causes Netrw to refresh the directory listing |netrw-ctrl-l| @@ -892,18 +983,19 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2 mh Toggle marked file suffices' presence on hiding list |netrw-mh| mm Move marked files to marked-file target directory |netrw-mm| mp Print marked files |netrw-mp| - mr Mark files satisfying a |regexp| |netrw-mr| + mr Mark files satisfying a shell-style |regexp| |netrw-mr| mt Current browsing directory becomes markfile target |netrw-mt| mT Apply ctags to marked files |netrw-mT| mu Unmark all marked files |netrw-mu| mx Apply arbitrary shell command to marked files |netrw-mx| mz Compress/decompress marked files |netrw-mz| o Enter the file/directory under the cursor in a new |netrw-o| - browser window. A horizontal split is used. + browser window. A horizontal split is used. O Obtain a file specified by cursor |netrw-O| p Preview the file |netrw-p| P Browse in the previously used window |netrw-P| - q List bookmarked directories and history |netrw-qb| + qb List bookmarked directories and history |netrw-qb| + qf Display information on file |netrw-qf| r Reverse sorting order |netrw-r| R Rename the designed file(s)/directory(ies) |netrw-R| s Select sorting style: by name, time, or file size |netrw-s| @@ -912,11 +1004,12 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2 u Change to recently-visited directory |netrw-u| U Change to subsequently-visited directory |netrw-U| v Enter the file/directory under the cursor in a new |netrw-v| - browser window. A vertical split is used. + browser window. A vertical split is used. x View file with an associated program |netrw-x| % Open a new file in netrw's current directory |netrw-%| + *netrw-mouse* *netrw-leftmouse* *netrw-middlemouse* *netrw-rightmouse* (gvim only) selects word under mouse as if a had been pressed (ie. edit file, change directory) (gvim only) same as P selecting word under mouse; @@ -929,7 +1022,7 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2 * the user doesn't already have a <2-leftmouse> mapping defined before netrw is autoloaded, then a double clicked leftmouse button will return - to the netrw browser window. + to the netrw browser window. See |g:netrw_retmap|. (gvim only) like mf, will mark files *netrw-quickcom* *netrw-quickcoms* @@ -946,13 +1039,18 @@ QUICK REFERENCE: COMMANDS *netrw-explore-cmds* *netrw-browse-cmds* {{{2 :Vexplore[!] [dir] Vertical Split & Explore...............|netrw-explore| BOOKMARKING A DIRECTORY *netrw-mb* *netrw-bookmark* *netrw-bookmarks* {{{2 + One may easily "bookmark" a directory by using > - {cnt}mb + mb < -Any count may be used. One may use viminfo's "!" option (|'viminfo'|) to -retain bookmarks between vim sessions. See |netrw-gb| for how to return -to a bookmark and |netrw-qb| for how to list them. +Bookmarks are retained in between sessions in a $HOME/.netrwbook file, and are +kept in sorted order. + +Related Topics: + |netrw-gb| how to return (go) to a bookmark + |netrw-mB| how to delete bookmarks + |netrw-qb| how to list bookmarks BROWSING *netrw-cr* {{{2 @@ -960,7 +1058,7 @@ BROWSING *netrw-cr* {{{2 Browsing is simple: move the cursor onto a file or directory of interest. Hitting the (the return key) will select the file or directory. Directories will themselves be listed, and files will be opened using the -protocol given in the original read request. +protocol given in the original read request. CAVEAT: There are four forms of listing (see |netrw-i|). Netrw assumes that two or more spaces delimit filenames and directory names for the long and @@ -975,8 +1073,8 @@ horizontally or vertically, respectively. When the option is set to three, a will cause the file to appear in a new tab. -When using the gui (gvim) one may select a file by pressing the -button. In addtion, if +When using the gui (gvim), one may select a file by pressing the +button. In addition, if *|g:netrw_retmap| == 1 AND (its default value is 0) * in a netrw-selected file, AND @@ -1017,19 +1115,19 @@ new window and cursor at the bottom, have let g:netrw_alto = 1 -in your <.vimrc>. (also see |netrw-t| |netrw-v|) - -There is only one tree listing buffer; using "o" on a displayed subdirectory -will split the screen, but the same buffer will be shown twice. +in your <.vimrc>. (also see |netrw-t| |netrw-T| |netrw-v|) Associated setting variables: |g:netrw_alto| |g:netrw_winsize| -BROWSING WITH A NEW TAB *netrw-t* {{{2 +BROWSING WITH A NEW TAB *netrw-t* *netrw-T* {{{2 Normally one enters a file or directory using the . The "t" map -allows one to open a new window hold the new directory listing or file in a -new tab. (also see: |netrw-o| |netrw-v|) +allows one to open a new window holding the new directory listing or file in +a new tab. The "T" version puts the file or directory into a background tab +(see |gT|) + +Related actions: |netrw-o| |netrw-v| BROWSING WITH A VERTICALLY SPLIT WINDOW *netrw-v* {{{2 @@ -1044,18 +1142,19 @@ window and cursor at the right, have let g:netrw_altv = 1 -in your <.vimrc>. (also see: |netrw-o| |netrw-t|) +in your <.vimrc>. (also see: |netrw-o| |netrw-t| |netrw-T|) -There is only one tree listing buffer; using "v" on a displayed subdirectory +There is only one tree listing buffer; using "v" on a displayed subdirectory will split the screen, but the same buffer will be shown twice. Associated setting variable: |g:netrw_altv| |g:netrw_winsize| -CHANGE LISTING STYLE *netrw-i* {{{2 + +CHANGE LISTING STYLE (THIN LONG WIDE TREE) *netrw-i* {{{2 The "i" map cycles between the thin, long, wide, and tree listing formats. -The short listing format gives just the files' and directories' names. +The thin listing format gives just the files' and directories' names. The long listing is either based on the "ls" command via ssh for remote directories or displays the filename, file size (in bytes), and the time and @@ -1071,13 +1170,23 @@ This listing format is the most compact. The tree listing format has a top directory followed by files and directories preceded by a "|". One may open and close directories by pressing the -key while atop the directory name. There is only one tree listing buffer; -hence, using "v" or "o" on a subdirectory will only show the same buffer, -twice. +key while atop the directory name. + +One may make a preferred listing style your default; see |g:netrw_liststyle|. +As an example, by putting the following line in your .vimrc, > + let g:netrw_liststyle= 4 +the tree style will become your default listing style. Associated setting variables: |g:netrw_liststyle| |g:netrw_maxfilenamelen| |g:netrw_timefmt| |g:netrw_list_cmd| +CHANGE FILE PERMISSION *netrw-gp* {{{2 + +"gp" will ask you for a new permission for the file named under the cursor. +Currently, this only works for local files. + +Associated setting variables: |g:netrw_chgperm| + CHANGING TO A BOOKMARKED DIRECTORY *netrw-gb* {{{2 @@ -1085,8 +1194,12 @@ To change directory back to a bookmarked directory, use {cnt}gb -Any count may be used to reference any of the bookmarks. See |netrw-mb| on -how to bookmark a directory and |netrw-qb| on how to list bookmarks. +Any count may be used to reference any of the bookmarks. + +Related Topics: + |netrw-mB| how to delete bookmarks + |netrw-mb| how to make a bookmark + |netrw-qb| how to list bookmarks CHANGING TO A PREDECESSOR DIRECTORY *netrw-u* *netrw-updir* {{{2 @@ -1141,7 +1254,7 @@ Netrw determines which special handler by the following method: If g:netrw_browsex_viewer == '-', then netrwFileHandler() will be invoked first (see |netrw_filehandler|). - * for Windows 32 or 64, the url and FileProtocolHandler dlls are used. + * for Windows 32 or 64, the url and FileProtocolHandler dlls are used. * for Gnome (with gnome-open): gnome-open is used. * for KDE (with kfmclient) : kfmclient is used. * for Mac OS X : open is used. @@ -1161,7 +1274,7 @@ the handler function must exist for it to be called! NFH_html("scp://user@host/some/path/mypgm.html") < Users may write their own netrw File Handler functions to support more -suffixes with special handling. See for +suffixes with special handling. See for examples on how to make file handler functions. As an example: > " NFH_suffix(filename) @@ -1175,11 +1288,11 @@ characters (except for the underscore) in them. To support suffices that contain such characters, netrw will first convert the suffix using the following table: > - @ -> AT ! -> EXCLAMATION % -> PERCENT - : -> COLON = -> EQUAL ? -> QUESTION + @ -> AT ! -> EXCLAMATION % -> PERCENT + : -> COLON = -> EQUAL ? -> QUESTION , -> COMMA - -> MINUS ; -> SEMICOLON - $ -> DOLLAR + -> PLUS ~ -> TILDE -< + $ -> DOLLAR + -> PLUS ~ -> TILDE +< So, for example: > file.rcs,v -> NFH_rcsCOMMAv() @@ -1191,6 +1304,18 @@ with a request. Associated setting variable: |g:netrw_browsex_viewer| *netrw-curdir* +DELETING BOOKMARKS *netrw-mB* {{{2 + +To delete a bookmark, use > + + {cnt}mB +< +Related Topics: + |netrw-gb| how to return (go) to a bookmark + |netrw-mb| how to make a bookmark + |netrw-qb| how to list bookmarks + + DELETING FILES OR DIRECTORIES *netrw-delete* *netrw-D* *netrw-del* {{{2 If files have not been marked with |netrw-mf|: (local marked file list) @@ -1232,12 +1357,12 @@ Associated setting variable: |g:netrw_local_rmdir| |g:netrw_rm_cmd| *netrw-rexplore* *netrw-sexplore* *netrw-texplore* *netrw-vexplore* DIRECTORY EXPLORATION COMMANDS {{{2 - :Explore[!] [dir]... Explore directory of current file *:Explore* - :Hexplore[!] [dir]... Horizontal Split & Explore *:Hexplore* - :Rexplore ... Return to Explorer *:Rexplore* - :Sexplore[!] [dir]... Split&Explore directory of current file *:Sexplore* - :Texplore [dir]... Tab & Explore *:Texplore* - :Vexplore[!] [dir]... Vertical Split & Explore *:Vexplore* + :[N]Explore[!] [dir]... Explore directory of current file *:Explore* + :[N]Hexplore[!] [dir]... Horizontal Split & Explore *:Hexplore* + :Rexplore ... Return to Explorer *:Rexplore* + :[N]Sexplore[!] [dir]... Split&Explore current file's directory *:Sexplore* + :Texplore [dir]... Tab & Explore *:Texplore* + :[N]Vexplore[!] [dir]... Vertical Split & Explore *:Vexplore* Used with :Explore **/pattern : (also see |netrw-starstar|) :Nexplore............. go to next matching file *:Nexplore* @@ -1259,17 +1384,21 @@ DIRECTORY EXPLORATION COMMANDS {{{2 :Vexplore! [dir] does an :Explore with |:rightbelow| vertical splitting. :Texplore [dir] does a tabnew before generating the browser window -By default, these commands use the current file's directory. However, one -may explicitly provide a directory (path) to use. +By default, these commands use the current file's directory. However, one may +explicitly provide a directory (path) to use. -The |g:netrw_winsize| variable also is used, if specified by the user, to -size Hexplore and Vexplore windows. +The [N] will override |g:netrw_winsize| to specify the quantity of rows and/or +columns the new explorer window should have. + +Otherwise, the |g:netrw_winsize| variable, if it has been specified by the +user, is used to control the quantity of rows and/or columns new explorer +windows should have. :Rexplore This command is a little different from the others. When one edits a file, for example by pressing when atop a file in a netrw browser window, :Rexplore will return the display to - that of the last netrw browser window. Its a command version - of <2-leftmouse> (which is only available under gvim and + that of the last netrw browser window. It is a command version + of the <2-leftmouse> map (which is only available under gvim and cooperative terms). @@ -1282,11 +1411,11 @@ the request. > */filepat files in current directory which satisfy filepat **/filepat files in current directory or below which satisfy the - file pattern + file pattern *//pattern files in the current directory which contain the - pattern (vimgrep is used) + pattern (vimgrep is used) **//pattern files in the current directory or below which contain - the pattern (vimgrep is used) + the pattern (vimgrep is used) < The cursor will be placed on the first file in the list. One may then continue to go to subsequent files on that list via |:Nexplore| or to @@ -1339,6 +1468,18 @@ be the only ones displayed (see |netrw-a|). The "gh" mapping (see |netrw-gh|) quickly alternates between the usual hiding list and the hiding of files or directories that begin with ".". +As an example, > + let g:netrw_list_hide= '\(^\|\s\s\)\zs\.\S\+' +Effectively, this makes the effect of a |netrw-gh| command the initial setting. +What it means: + + \(^\|\s\s\) : if the line begins with the following, -or- + two consecutive spaces are encountered + \zs : start the hiding match now + \. : if it now begins with a dot + \S\+ : and is followed by one or more non-whitespace + characters + Associated setting variables: |g:netrw_hide| |g:netrw_list_hide| Associated topics: |netrw-a| |netrw-gh| |netrw-mh| @@ -1349,7 +1490,12 @@ When "Sorted by" is name, one may specify priority via the sorting sequence (g:netrw_sort_sequence). The sorting sequence typically prioritizes the name-listing by suffix, although any pattern will do. Patterns are delimited by commas. The default sorting sequence is (all one line): -> + +For Unix: > + '[\/]$,\ '[\/]$,\.[a-np-z]$,\.h$,\.c$,\.cpp$,*,\.o$,\.obj$,\.info$, \.swp$,\.bak$,\~$' < @@ -1508,11 +1654,15 @@ passwords: LISTING BOOKMARKS AND HISTORY *netrw-qb* *netrw-listbookmark* {{{2 -Pressing "qb" (query bookmarks) will list the bookmarked directories and -directory traversal history (query). - -(see |netrw-mb|, |netrw-gb|, |netrw-u|, and |netrw-U|) +Pressing "qb" (query bookmarks) will list both the bookmarked directories and +directory traversal history. +Related Topics: + |netrw-gb| how to return (go) to a bookmark + |netrw-mb| how to make a bookmark + |netrw-mB| how to delete bookmarks + |netrw-u| change to a predecessor directory via the history stack + |netrw-U| change to a successor directory via the history stack MAKING A NEW DIRECTORY *netrw-d* {{{2 @@ -1584,10 +1734,11 @@ MARKING FILES BY REGULAR EXPRESSION *netrw-mr* {{{2 (also see |netrw-mf|) One may also mark files by pressing "mr"; netrw will then issue a prompt, -"Enter regexp: ". You may then enter a regular expression such as \.c$ . -All files in the current directory will then be marked. Note that the -regular expressions are vim-style |regexp| ones, not shell ones. So -entering *.c probably isn't what you want! +"Enter regexp: ". You may then enter a shell-style regular expression such +as *.c$ (see |glob()|). For remote systems, glob() doesn't work -- so netrw +converts "*" into ".*" (see |regexp|) and marks files based on that. In the +future I may make it possible to use |regexp|s instead of glob()-style +expressions (yet-another-option). MARKED FILES: ARBITRARY COMMAND *netrw-mx* {{{2 @@ -1670,7 +1821,7 @@ MARKED FILES: MOVING *netrw-mm* {{{2 first or do the copy and then delete yourself using mc and D. Use at your own risk! -Select a target directory with mT (|netrw-mt|). Then change directory, +Select a target directory with mt (|netrw-mt|). Then change directory, select file(s) (see |netrw-mf|), and press "mm". Associated setting variable: |g:netrw_localmovecmd| |g:netrw_ssh_cmd| @@ -1695,7 +1846,7 @@ MARKED FILES: TAGGING *netrw-mT* {{{2 (See |netrw-mf| and |netrw-mr| for how to mark files) (uses the global marked file list) -The "mt" mapping will apply the command in |g:netrw_ctags| (by default, its +The "mT" mapping will apply the command in |g:netrw_ctags| (by default, it is "ctags") to marked files. For remote browsing, in order to create a tags file netrw will use ssh (see |g:netrw_ssh_cmd|), and so ssh must be available for this to work on remote systems. For your local system, see |ctags| on how to @@ -1743,7 +1894,7 @@ The "mu" mapping will unmark all currently marked files. NETRW BROWSER VARIABLES *netrw-browser-options* *netrw-browser-var* {{{2 -(if you're interestd in the netrw file transfer settings, see |netrw-options|) +(if you're interested in the netrw file transfer settings, see |netrw-options|) The browser provides settings in the form of variables which you may modify; by placing these settings in your <.vimrc>, you may customize @@ -1760,12 +1911,21 @@ your browsing preferences. (see also: |netrw-settings|) by setting this variable (see |netrw-v|) default: =&spr (see |'spr'|) + *g:netrw_banner* enable/suppress the banner + =0: suppress the banner + =1: banner is enabled (default) + NOTE: suppressing the banner is a new feature + which may cause problems. + *g:netrw_browse_split* when browsing, will open the file by: =0: re-using the same window - =1: horizontally splitting the window first - =2: vertically splitting the window first + =1: horizontally splitting the window first + =2: vertically splitting the window first =3: open file in new tab =4: act like "P" (ie. open previous window) + Note that |g:netrw_preview| may be used + to get vertical splitting instead of + horizontal splitting. *g:netrw_browsex_viewer* specify user's preference for a viewer: > "kfmclient exec" @@ -1776,6 +1936,10 @@ your browsing preferences. (see also: |netrw-settings|) a script/function to handle the given extension. (see |netrw_filehandler|). + *g:netrw_chgperm* Unix/Linux: "chmod PERM FILENAME" + Windows: "cacls FILENAME /e /p PERM" + Used to change access permission for a file. + *g:netrw_compress* ="gzip" Will compress marked files with this command @@ -1783,6 +1947,16 @@ your browsing preferences. (see also: |netrw-settings|) *g:netrw_ctags* ="ctags" The default external program used to create tags + *g:netrw_cursorline* = 1 (default) + will use the |'cursorline'| local setting when + |g:netrw_liststyle| ==0 (thin listing) or + |g:netrw_liststyle| ==1 (long listing) or + |g:netrw_liststyle| ==3 (tree listing) + (ie. doesn't affect the wide listing) + =0: off + =2: like ==1, but the wide listing gets both + cursorline and |'cursorcolumn'|locally set + *g:netrw_decompress* = { ".gz" : "gunzip" , ".bz2" : "bunzip2" , ".zip" : "unzip" , @@ -1815,7 +1989,7 @@ your browsing preferences. (see also: |netrw-settings|) versus speed. *g:netrw_fname_escape* =' ?&;%' - Used on filenames before remote reading/writing + Used on filenames before remote reading/writing *g:netrw_ftp_browse_reject* ftp can produce a number of errors and warnings that can show up as "directories" and "files" @@ -1849,12 +2023,18 @@ your browsing preferences. (see also: |netrw-settings|) otherwise "dir" *g:netrw_glob_escape* ='[]*?`{~$' - These characters in directory names are + These characters in directory names are escaped before applying glob() *g:netrw_hide* if true, the hiding list is used default: =0 + *g:netrw_home* The home directory for where bookmarks and + history are saved (as .netrwbook and + .netrwhist). + default: the first directory on the + |'runtimepath'| + *g:netrw_keepdir* =1 (default) keep current directory immune from the browsing directory. =0 keep the current directory the same as the @@ -1878,12 +2058,12 @@ your browsing preferences. (see also: |netrw-settings|) default: "" *g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin - ="copy" Windows + ="copy" Windows Copies marked files (|netrw-mf|) to target directory (|netrw-mt|, |netrw-mc|) *g:netrw_localmovecmd* ="mv" Linux/Unix/MacOS/Cygwin - ="move" Windows + ="move" Windows Moves marked files (|netrw-mf|) to target directory (|netrw-mt|, |netrw-mm|) @@ -1903,11 +2083,31 @@ your browsing preferences. (see also: |netrw-settings|) *g:netrw_mkdir_cmd* command for making a remote directory default: "ssh USEPORT HOSTNAME mkdir" - *g:netrw_retmap* if it exists and is set to one, then - <2-leftmouse> will be mapped for easy + *g:netrw_mousemaps* =1 (default) enables the mouse buttons + while browsing: + leftmouse : open file/directory + shift-leftmouse : mark file + middlemouse : same as P + rightmouse : remove file/directory + =0: disables mouse maps + + *g:netrw_retmap* if it exists and is set to one, then: + * if in a netrw-selected file, AND + * no normal-mode <2-leftmouse> mapping exists, + then the <2-leftmouse> will be mapped for easy return to the netrw browser window. - (example: click once to select and open - a file, double-click to return) + example: click once to select and open a file, + double-click to return. + + Note that one may instead choose to: + * let g:netrw_retmap= 1, AND + * nmap YourChoice NetrwReturn + and have another mapping instead of + <2-leftmouse> to invoke the return. + + You may also use the |:Rexplore| command to do + the same thing. + default: =0 *g:netrw_rm_cmd* command for removing files @@ -1934,12 +2134,14 @@ your browsing preferences. (see also: |netrw-settings|) < default: "" *g:netrw_sort_sequence* when sorting by name, first sort by the - comma-separated pattern sequence + comma-separated pattern sequence. Note that + the filigree added to indicate filetypes + should be accounted for in your pattern. default: '[\/]$,*,\.bak$,\.o$,\.h$, \.info$,\.swp$,\.obj$' *g:netrw_special_syntax* If true, then certain files will be shown - in special syntax in the browser: + in special syntax in the browser: netrwBak : *.bak netrwCompress: *.gz *.bz2 *.Z *.zip @@ -1974,7 +2176,7 @@ your browsing preferences. (see also: |netrw-settings|) *g:netrw_tmpfile_escape* =' &;' - escape() is applied to all temporary files + escape() is applied to all temporary files to escape these characters. *g:netrw_timefmt* specify format string to vim's strftime(). @@ -1988,7 +2190,7 @@ your browsing preferences. (see also: |netrw-settings|) default: "%c" *g:netrw_use_noswf* netrw normally avoids writing swapfiles - for browser buffers. However, under some + for browser buffers. However, under some systems this apparently is causing nasty ml_get errors to appear; if you're getting ml_get errors, try putting @@ -2000,18 +2202,18 @@ your browsing preferences. (see also: |netrw-settings|) |:Hexplore| or |:Vexplore|. default: "" - *g:netrw_xstrlen* Controls how netrw computes a string - including multi-byte characters' string + *g:netrw_xstrlen* Controls how netrw computes string lengths, + including multi-byte characters' string length. (thanks to N Weibull, T Mechelynck) =0: uses Vim's built-in strlen() - =1: number of codepoints (Latin + a combining + =1: number of codepoints (Latin a + combining circumflex is two codepoints) (DEFAULT) =2: number of spacing codepoints (Latin a + - combining circumflex is one spacing + combining circumflex is one spacing codepoint; a hard tab is one; wide and narrow CJK are one each; etc.) =3: virtual length (counting tabs as anything - between 1 and |'tabstop'|, wide CJJK as 2 + between 1 and |'tabstop'|, wide CJK as 2 rather than 1, Arabic alif as zero when immediately preceded by lam, one otherwise, etc) @@ -2162,6 +2364,16 @@ Related topics: |netrw-r| |netrw-S| Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| +SETTING EDITING WINDOW *netrw-C* {{{2 + +One may select a netrw window for editing with the "C" mapping, or by setting +g:netrw_chgwin to the selected window number. Subsequent selection of a file +to edit (|netrw-cr|) will use that window. + +Related topics: |netrw-cr| +Associated setting variables: |g:netrw_chgwin| + + 10. Problems and Fixes *netrw-problems* {{{1 (This section is likely to grow as I get feedback) @@ -2183,7 +2395,7 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| Windows' ftp has a minimal support for ls (ie. it doesn't accept sorting options). It doesn't support the -F which gives an explanatory character (ABC/ for "ABC is a directory"). - Netrw then uses "dir" to get both its short and long listings. + Netrw then uses "dir" to get both its thin and long listings. If you think your ftp does support a full-up ls, put the following into your <.vimrc>: > @@ -2238,7 +2450,7 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| Put the following line in your |.vimrc|: > let g:netrw_keepdir= 0 -< +< *netrw-p7* P7. I use Chinese (or other non-ascii) characters in my filenames, and netrw (Explore, Sexplore, Hexplore, etc) doesn't display them! @@ -2266,7 +2478,7 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| (Marlin Unruh) This program also works for me. It's a single executable, so he/she can copy it into the Windows\System32 - folder and create a shortcut to it. + folder and create a shortcut to it. (Dudley Fox) You might also wish to consider plink, as it sounds most similar to what you are looking for. plink is an @@ -2274,12 +2486,12 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| http://the.earth.li/~sgtatham/putty/0.58/htmldoc/Chapter7.html#plink - (Vissale Neang) Maybe you can try OpenSSH for windows, which + (Vissale Neang) Maybe you can try OpenSSH for windows, which can be obtained from: http://sshwindows.sourceforge.net/ - It doesn't need the full Cygwin package. + It doesn't need the full Cygwin package. (Antoine Mechelynck) For individual Unix-like programs needed for work in a native-Windows environment, I recommend getting @@ -2290,7 +2502,7 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| Unlike Cygwin, which sets up a Unix-like virtual machine on top of Windows, GnuWin32 is a rewrite of Unix utilities with Windows system calls, and its programs works quite well in the - cmd.exe "Dos box". + cmd.exe "Dos box". (dave) Download WinSCP and use that to connect to the server. In Preferences > Editors, set gvim as your editor: @@ -2317,7 +2529,7 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| How to use a private key with 'pscp': > http://www.tartarus.org/~simon/puttydoc/Chapter5.html - 5.2.4 Using public key authentication with PSCP + 5.2.4 Using public key authentication with PSCP < (Ben Schmidt) I find the ssh included with cwRsync is brilliant, and install cwRsync or cwRsyncServer on most @@ -2375,6 +2587,16 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence| in the browser window and then press the to select the file. + *netrw-p12* + P12. My directory isn't sorting correctly, or unwanted letters are + appearing in the listed filenames, or things aren't lining + up properly in the wide listing, ... + + This may be due to an encoding problem. I myself usually use + utf-8, but really only use ascii (ie. bytes from 32-126). + Multibyte encodings use two (or more) bytes per character. + You may need to change |g:netrw_sepchr| and/or |g:netrw_xstrlen|. + ============================================================================== 11. Debugging Netrw Itself *netrw-debug* {{{1 @@ -2420,7 +2642,7 @@ which is loaded automatically at startup (assuming :set nocp). read/write your file over the network in a separate tab. To save the file, use > - :wincmd j + :tabnext :set bt= :w! DBG < Please send that information to 's maintainer, > @@ -2429,6 +2651,94 @@ which is loaded automatically at startup (assuming :set nocp). ============================================================================== 12. History *netrw-history* {{{1 + v136: Jan 14, 2009 * extended |g:Netrw_funcref| to also handle lists + of function references + Jan 14, 2009 * (reported by Marvin Renich) with spell check + enabled, some filenamess will still being + displayed as spelling errors. + Apr 13, 2009 * (Björn Winckler) writing a file using + remote scp caused syntax highlighting problem. + Solution: avoid syntax/syntax.vim's + au Filetype * syntax setting autocommand by + checking that the current buffer has the + netrw filetype before attempting a doau + in s:NetrwSafeOptions(). + Apr 14, 2009 * (asgeo1) suggested the "T" map (|netrw-T|) + Apr 14, 2009 * marking wasn't working on executable and + other special filenames + Apr 20, 2009 * (Dennis Benzinger) files opened via http have + their syntax filetype auto-detected + Jun 19, 2009 * (Yukihiro Nakadaira) help document improvements + Jul 22, 2009 * g:netrw_browse_split will honor the + |'equalalways'| setting. + Jul 29, 2009 * implemented "I" mapping to toggle banner + (this is experimental and still being debugged) + Sep 19, 2009 * (Mike McEwan) writes via ftp now send both + g:netrw_ftpmode and g:netrw_ftpextracmd (if the + latter exists) + Dec 02, 2009 * netrw uses vimgrep several places; it now uses + "noautocmd vimgrep" (should be speedier). + Dec 03, 2009 * changed back to using -source instead of -dump + for elinks-using commands. (requested by James + Vega and Karsten Hopp) + v135: Oct 29, 2008 * using |simplify()| on directory names + (supporting handling ".."s in directory names) + Oct 31, 2008 * added special file highlighting for core dumps + under Unix/Linux. The default sorting sequence + now also gives core dumps priority. + Nov 10, 2008 * uses a call to netrw#Nread() instead of Nread + to avoid having to use fnameescape() + * fixed a tree redrawing problem (open directory, + open subdir, close subdir, close dir) + Nov 19, 2008 * sprinkled some histdel("/",-1)s through the code + in an attempt to prevent netrw from changing + the search history. + Jan 02, 2009 * |g:Netrw_funcref| included + Jan 05, 2009 * Explore */ **/ *// **// all clear explorer + variables + Jan 05, 2009 * (Panagiotis Louridas) extended s:WinPath() + to remove cygdrive from non-cygwin Windows + paths. Improved the determination as to + whether or not to do so. + Jan 13, 2009 * included contains=@NoSpell in every syntax + group for syntax/netrw.vim . + v134: Sep 30, 2008 * (Sander Marechal) provided a bugfix involving + the use of the |netrw-t| command with a remote + directory. + Sep 30, 2008 * using "x" on a remote jpg was failing; fixed. + Oct 03, 2008 * bookmarks now go on a list and are stored to + the first directory on the |'runtimepath'| in + the hopes of making their retention reliable. + History now also goes to that directory. + Oct 07, 2008 * Included check that vim 7.0 or later is in use. + Oct 07, 2008 * Improved |g:netrw_retmap| handling. + Oct 12, 2008 * Based upon Sébastien Migniot's suggestion, if + cadaver isn't available then netrw will try to + use curl for the dav://... protocol. + Oct 13, 2008 * added @*/ to netrw buffers' |'iskeyword'|setting + This lets mf (|netrw-mf|) mark directories, links + and executables. + Oct 13, 2008 * avoids a second NetrwBrowse() refresh when + g:netrw_fastbrowse is <= 1 (slow, medium speed) + Oct 22, 2008 * |g:netrw_http_xcmd| may now be overridden + independently of |g:netrw_http_cmd|. + Oct 23, 2008 * [N] added to the various Explore commands to + let users specify the width/height of new + explorer windows, overriding |g:netrw_winsize|. + v133: Aug 10, 2008 * NetReadFixup() for win95 was missing some "a:"s + Aug 12, 2008 * (Jan Minář) an error condition in NetrwMethod() + wasn't being used, resulting in "b:netrw_fname + undefined" errors + Aug 12, 2008 * (François Ingeirest) asked that "hi link" be + changed to hi default link in the netrw syntax + files. + Aug 12, 2008 * using s:NetrwUnmarkList() more often. Filenames + were being left on the global list when removed + from the buffer-local lists. + Aug 14, 2008 * (Joshua Clayton) an errant extra ")" was left in + the rcp-handling portion of NetRead(). + Sep 03, 2008 * added |'cursorline'| highlighting to thin, long, + and tree displays. v132: Aug 06, 2008 * Fixed marked file-based obtain Aug 08, 2008 * sourcing a file via ftp from a netrw-generated buffer (or any buffer with |'nobl'|) left an @@ -2543,8 +2853,8 @@ which is loaded automatically at startup (assuming :set nocp). * executable files now displayed with trailing (*) * symbolically linked files now displayed with trailing (@) - * Somewhen, s:NetrwMarkFileMove() got damaged. Its - now restored (missing an endif, for example). + * Somewhen, s:NetrwMarkFileMove() got damaged. It + * is now restored (missing an endif, for example). * |netrw-mu| implemented (unmarking marked files) * many bugs have been removed from the marked file system (tnx to Mark S. for feedback) @@ -2615,7 +2925,7 @@ which is loaded automatically at startup (assuming :set nocp). the end of the s:NetrwBrowseChgDir() function; they're now at the end of every if..elseif..else block. The edit-a-file one is not quite at the end - of its block; instead, its just before the edit. + of its block; instead, it's just before the edit. Restores user options, then this new placement allows ftplugins, autocmds, etc to change settings (ex. ftplugin/cpp.vim sets cindent). @@ -2652,7 +2962,7 @@ which is loaded automatically at startup (assuming :set nocp). marked files. v110: May 10, 2007 * added [ and ] maps to NetrwTreeListing May 25, 2007 * |g:netrw_preview| included - May 29, 2007 * modifed netrw#NetBrowseX to consistently use + May 29, 2007 * modified netrw#NetBrowseX to consistently use g:netrw_shq instead of hardcoded quotes, and modified the snippet that sets up redir so Windows machines use "nul" instead of @@ -2668,7 +2978,7 @@ which is loaded automatically at startup (assuming :set nocp). decipher the name. May 07, 2007 * g:netrw_use_errorwindow now allows one to have error messages go to a reliable window - or to use a less reliable but recallable + or to use a less reliable but recallable echoerr method May 07, 2007 * g:netrw_scpport and g:netrw_sshport support use of -P and -p, respectively, to set port @@ -3113,7 +3423,16 @@ which is loaded automatically at startup (assuming :set nocp). ============================================================================== -12. Credits *netrw-credits* {{{1 +13. Todo *netrw-todo* {{{1 + +07/29/09 : banner :|g:netrw_banner| can be used to suppress the + suppression banner. This feature is new and experimental, + so its in the process of being debugged. +09/04/09 : "gp" : See if it can be made to work for remote systems. + : See if it can be made to work with marked files. + +============================================================================== +14. Credits *netrw-credits* {{{1 Vim editor by Bram Moolenaar (Thanks, Bram!) dav support by C Campbell diff --git a/runtime/doc/pi_tar.txt b/runtime/doc/pi_tar.txt index 582a25d62..30cc5dde9 100644 --- a/runtime/doc/pi_tar.txt +++ b/runtime/doc/pi_tar.txt @@ -1,4 +1,4 @@ -*pi_tar.txt* For Vim version 7.2. Last change: 2008 Aug 09 +*pi_tar.txt* For Vim version 7.2. Last change: 2009 Dec 28 +====================+ | Tar File Interface | @@ -26,6 +26,33 @@ Copyright 2005-2008: The GPL (gnu public license) applies to *tar-copyright* also write to the file. Currently, one may not make a new file in tar archives via the plugin. + *:Untarvim* + UNTARVIM~ + + :Untarvim [vimhome] + + This command copies, if necessary, the tarball to the .vim or vimfiles + directory using the first writable directory in the |'runtimepath'| + when no [vimhome] is specified. Otherwise, the [vimhome] argument + allows the user to specify that directory, instead. + + The copy is done using the command in *g:tar_copycmd* , which is > + cp for cygwin, unix, macunix + copy for windows (32, 95, 64, 16) +< The extraction is done with the command specified with + *g:tar_extractcmd* , which by default is > + "tar -xf" +< + PREVENTING LOADING~ + + If for some reason you do not wish to use vim to examine tar'd files, + you may put the following two variables into your <.vimrc> to prevent + the tar plugin from loading: > + + let g:loaded_tarPlugin= 1 + let g:loaded_tar = 1 +< + ============================================================================== 3. Options *tar-options* @@ -38,14 +65,15 @@ Copyright 2005-2008: The GPL (gnu public license) applies to *tar-copyright* *g:tar_cmd* "tar" the name of the tar program *g:tar_nomax* 0 if true, file window will not be maximized *g:tar_secure* undef if exists: - "--" will be used to prevent unwanted + "--"s will be used to prevent unwanted option expansion in tar commands. Please be sure that your tar command accepts "--"; Posix compliant tar - utilities do accept it. + utilities do accept them. if not exists: - The tar plugin will reject any member - files that begin with "-" + The tar plugin will reject any tar + files or member files that begin with + "-" Not all tar's support the "--" which is why it isn't default. *g:tar_writeoptions* "uf" used to update/replace a file @@ -54,6 +82,9 @@ Copyright 2005-2008: The GPL (gnu public license) applies to *tar-copyright* ============================================================================== 4. History *tar-history* + + v24 Apr 07, 2009 * :Untarvim command implemented + Sep 28, 2009 * Added lzma support v22 Aug 08, 2008 * security fixes v16 Jun 06, 2008 * tarfile:: used instead of tarfile: when editing files inside tarballs. Fixes a problem with tarballs called diff --git a/runtime/doc/pi_vimball.txt b/runtime/doc/pi_vimball.txt index 143396e01..885131e29 100644 --- a/runtime/doc/pi_vimball.txt +++ b/runtime/doc/pi_vimball.txt @@ -1,4 +1,4 @@ -*pi_vimball.txt* For Vim version 7.2. Last change: 2008 Jul 30 +*pi_vimball.txt* For Vim version 7.2. Last change: 2009 Dec 28 ---------------- Vimball Archiver @@ -6,7 +6,7 @@ Author: Charles E. Campbell, Jr. (remove NOSPAM from Campbell's email first) -Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright* +Copyright: (c) 2004-2009 by Charles E. Campbell, Jr. *Vimball-copyright* The VIM LICENSE applies to Vimball.vim, and Vimball.txt (see |copyright|) except use "Vimball" instead of "Vim". No warranty, express or implied. @@ -55,7 +55,7 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright* ============================================================================== 3. Vimball Manual *vimball-manual* - *:MkVimball* +MAKING A VIMBALL *:MkVimball* :[range]MkVimball[!] filename [path] The range is composed of lines holding paths to files to be included @@ -79,28 +79,33 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright* "filename.vba" file, overwriting it if it already exists. This behavior resembles that for |:w|. - *g:vimball_mkdir* + If you wish to force slashes into the filename, that can also be done + by using the exclamation mark (ie. :MkVimball! path/filename). + + The tip at http://vim.wikia.com/wiki/Using_VimBall_with_%27Make%27 + has a good idea on how to automate the production of vimballs using + make. + + +MAKING DIRECTORIES VIA VIMBALLS *g:vimball_mkdir* + First, the |mkdir()| command is tried (not all systems support it). - If it doesn't exist, then g:vimball_mkdir doesn't exist, it is set to: + If it doesn't exist, then if g:vimball_mkdir doesn't exist, it is set + as follows: > |g:netrw_local_mkdir|, if it exists - "mkdir", if it is executable - "makedir", if it is executable - Otherwise, it is undefined. - One may explicitly specify the directory making command using + "mkdir" , if it is executable + "makedir" , if it is executable + Otherwise , it is undefined. +< One may explicitly specify the directory making command using g:vimball_mkdir. This command is used to make directories that are needed as indicated by the vimball. - *g:vimball_home* - You may override the use of the |'runtimepath'| by specifying a - variable, g:vimball_home. - Path Preprocessing *g:vimball_path_escape* +CONTROLLING THE VIMBALL EXTRACTION DIRECTORY *g:vimball_home* - Paths used in vimball are preprocessed by s:Path(); in addition, - certain characters are escaped (by prepending a backslash). The - characters are in g:vimball_path_escape, and may be overridden by - the user in his/her .vimrc initialization script. + You may override the use of the |'runtimepath'| by specifying a + variable, g:vimball_home. *vimball-extract* vim filename.vba @@ -112,12 +117,16 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright* file holds the "Vimball Archiver by Charles E. Campbell, Jr., Ph.D." line. - :VimballList *:VimballList* +LISTING FILES IN A VIMBALL *:VimballList* + + :VimballList This command will tell Vimball to list the files in the archive, along with their lengths in lines. - :UseVimball [path] *:UseVimball* +MANUALLY INVOKING VIMBALL EXTRACTION *:UseVimball* + + :UseVimball [path] This command is contained within the vimball itself; it invokes the vimball#Vimball() routine which is responsible for unpacking the @@ -126,7 +135,9 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright* installation, thereby overriding the automatic choice of the first existing directory on the |'runtimepath'|. - :RmVimball vimballfile [path] *:RmVimball* +REMOVING A VIMBALL *:RmVimball* + + :RmVimball vimballfile [path] This command removes all files generated by the specified vimball (but not any directories it may have made). One may choose a path @@ -136,10 +147,29 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright* containing a record of what files need to be removed for all vimballs used thus far. +PREVENTING LOADING + + If for some reason you don't want to be able to extract plugins + using vimballs: you may prevent the loading of vimball.vim by + putting the following two variables in your <.vimrc>: > + + let g:loaded_vimballPlugin= 1 + let g:loaded_vimball = 1 +< ============================================================================== 4. Vimball History *vimball-history* {{{1 + 30 : Dec 08, 2008 * fnameescape() inserted to protect error + messaging using corrupted filenames from + causing problems + * RmVimball supports filenames that would + otherwise be considered to have "magic" + characters (ie. Abc[1].vba) + Feb 18, 2009 * s:Escape(), g:vimball_shq, and g:netrw_shq + removed (shellescape() used directly) + Oct 05, 2009 * (Nikolai Weibull) suggested that MkVimball + be allowed to use slashes in the filename. 26 : May 27, 2008 * g:vimball_mkdir usage installed. Makes the $HOME/.vim (or $HOME\vimfiles) directory if necessary. diff --git a/runtime/doc/print.txt b/runtime/doc/print.txt index 440152dec..a4a2ffef8 100644 --- a/runtime/doc/print.txt +++ b/runtime/doc/print.txt @@ -1,4 +1,4 @@ -*print.txt* For Vim version 7.2. Last change: 2008 Apr 30 +*print.txt* For Vim version 7.2. Last change: 2008 Dec 17 VIM REFERENCE MANUAL by Bram Moolenaar @@ -704,7 +704,7 @@ print output, turn it over and place it back in the paper feeder. Now print even.ps with your platform's print command. All the even pages should now appear on the back of the odd pages. -There a couple of points to bear in mind: +There are a couple of points to bear in mind: 1. Position of the first page. If the first page is on top of the printout when printing the odd pages then you need to reverse the order that the odd diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt index 6734170e5..b73431511 100644 --- a/runtime/doc/quickfix.txt +++ b/runtime/doc/quickfix.txt @@ -1,4 +1,4 @@ -*quickfix.txt* For Vim version 7.2. Last change: 2008 Mar 14 +*quickfix.txt* For Vim version 7.2. Last change: 2009 May 24 VIM REFERENCE MANUAL by Bram Moolenaar @@ -630,14 +630,20 @@ id-utils) in a similar way to its compiler integration (see |:make| above). Just like ":grep", but instead of making a new list of errors the matches are appended to the current list. Example: > - :grep nothing % + :call setqflist([]) :bufdo grepadd! something % < The first command makes a new error list which is empty. The second command executes "grepadd" for each listed buffer. Note the use of ! to avoid that ":grepadd" jumps to the first error, which is not allowed with |:bufdo|. - + An example that uses the argument list and avoids + errors for files without matches: > + :silent argdo try + \ | grepadd! something % + \ | catch /E480:/ + \ | endtry" +< *:lgrepa* *:lgrepadd* :lgrepa[dd][!] [arguments] Same as ":grepadd", except the location list for the diff --git a/runtime/doc/quickref.txt b/runtime/doc/quickref.txt index 9589e8687..78599cfe4 100644 --- a/runtime/doc/quickref.txt +++ b/runtime/doc/quickref.txt @@ -1,4 +1,4 @@ -*quickref.txt* For Vim version 7.2. Last change: 2008 Jan 22 +*quickref.txt* For Vim version 7.2. Last change: 2009 Jan 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -40,13 +40,13 @@ N is used to indicate an optional count that can be given before the command. |^| ^ to first non-blank character in the line |$| N $ to the last character in the line (N-1 lines lower) (also: key) -|g0| N g0 to first character in screen line (differs from "0" +|g0| g0 to first character in screen line (differs from "0" when lines wrap) -|g^| N g^ to first non-blank character in screen line (differs +|g^| g^ to first non-blank character in screen line (differs from "^" when lines wrap) |g$| N g$ to last character in screen line (differs from "$" when lines wrap) -|gm| N gm to middle of the screen line +|gm| gm to middle of the screen line |bar| N | to column N (default: 1) |f| N f{char} to the Nth occurrence of {char} to the right |F| N F{char} to the Nth occurrence of {char} to the left diff --git a/runtime/doc/quotes.txt b/runtime/doc/quotes.txt index 98d435742..e6f211203 100644 --- a/runtime/doc/quotes.txt +++ b/runtime/doc/quotes.txt @@ -247,7 +247,7 @@ transition - as an Editor it is so much better in many ways: keyboard layout, memory usage, text alteration to name 3. (Mark Adam) In fact, now if I want to know what a particular setting does in vi, I fire up -VIM and check out it's help! (Nikhil Patel, USA) +VIM and check out its help! (Nikhil Patel, USA) As a vi user, VIM has made working with text a far more pleasant task than before I encountered this program. (Steinar Knutsen, Norway) diff --git a/runtime/doc/recover.txt b/runtime/doc/recover.txt index b82ea670a..f97acd0ac 100644 --- a/runtime/doc/recover.txt +++ b/runtime/doc/recover.txt @@ -1,4 +1,4 @@ -*recover.txt* For Vim version 7.2. Last change: 2006 Apr 24 +*recover.txt* For Vim version 7.2. Last change: 2009 Apr 18 VIM REFERENCE MANUAL by Bram Moolenaar @@ -181,7 +181,7 @@ parts of the original file were not written to disk. Be sure that the recovery was successful before overwriting the original file or deleting the swap file. It is good practice to write the recovered file elsewhere and run 'diff' to find out if the changes you want are in the -recovered file. +recovered file. Or use |:DiffOrig|. 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. diff --git a/runtime/doc/repeat.txt b/runtime/doc/repeat.txt index 7dbd49455..16a1b2cf0 100644 --- a/runtime/doc/repeat.txt +++ b/runtime/doc/repeat.txt @@ -1,4 +1,4 @@ -*repeat.txt* For Vim version 7.2. Last change: 2007 Aug 12 +*repeat.txt* For Vim version 7.2. Last change: 2009 Nov 04 VIM REFERENCE MANUAL by Bram Moolenaar @@ -332,6 +332,12 @@ Note however that trailing whitespace in the line before it cannot be inserted freely; it depends on the position where a command is split up whether additional whitespace is allowed or not. +When a space is required it's best to put it right after the backslash. A +space at the end of a line is hard to see and may be accidentally deleted. > + :syn match Comment + \ "very long regexp" + \ keepend + There is a problem with the ":append" and ":insert" commands: > :1append \asdf diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt index 93b3ad875..8a559dde8 100644 --- a/runtime/doc/spell.txt +++ b/runtime/doc/spell.txt @@ -1,4 +1,4 @@ -*spell.txt* For Vim version 7.2. Last change: 2008 Nov 30 +*spell.txt* For Vim version 7.2. Last change: 2009 Oct 28 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1279,7 +1279,7 @@ compound word. The word itself is not a good word. Example: *spell-ONLYINCOMPOUND* The ONLYINCOMPOUND does exactly the same as NEEDCOMPOUND. Supported for -compatiblity with Hunspell. +compatibility with Hunspell. *spell-COMPOUNDMIN* The minimal character length of a word used for compounding is specified with diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt index 4c126516c..868ac0a32 100644 --- a/runtime/doc/starting.txt +++ b/runtime/doc/starting.txt @@ -1,4 +1,4 @@ -*starting.txt* For Vim version 7.2. Last change: 2008 Nov 09 +*starting.txt* For Vim version 7.2. Last change: 2009 Dec 31 VIM REFERENCE MANUAL by Bram Moolenaar @@ -338,12 +338,19 @@ a slash. Thus "-R" means recovery and "-/R" readonly. *-C* -C Compatible mode. Sets the 'compatible' option. You can use this to get 'compatible', even though a .vimrc file exists. - But the command ":set nocompatible" overrules it anyway. - Also see |compatible-default|. {not in Vi} + Keep in mind that the command ":set nocompatible" in some + plugin or startup script overrules this, so you may end up + with 'nocmpatible' anyway. To find out, use: > + :verbose set compatible? +< Several plugins won't work with 'compatible' set. You may + want to set it after startup this way: > + vim "+set cp" filename +< Also see |compatible-default|. {not in Vi} *-N* -N Not compatible mode. Resets the 'compatible' option. You can - use this to get 'nocompatible', when there is no .vimrc file. + use this to get 'nocompatible', when there is no .vimrc file + or when using "-u NONE". Also see |compatible-default|. {not in Vi} *-y* *easy* @@ -361,6 +368,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly. Can also be done with ":set updatecount=0". You can switch it on again by setting the 'updatecount' option to some value, e.g., ":set uc=100". + NOTE: Don't combine -n with -b, making -nb, because that has a + different meaning: |-nb|. 'updatecount' is set to 0 AFTER executing commands from a vimrc file, but before the GUI initializations. Thus it overrides a setting for 'updatecount' in a vimrc file, but not @@ -593,17 +602,8 @@ a slash. Thus "-R" means recovery and "-/R" readonly. it. The second form specifies a file to read connection info from. The third form specifies the hostname, address and password for connecting to Netbeans. |netbeans-run| - -Example for using a script file to change a name in several files: - Create a file "subs.vi" containing substitute commands and a :wq - command: > - :%s/Jones/Smith/g - :%s/Allen/Peter/g - :wq -< - Execute Vim on all files you want to change: > - - foreach i ( *.let ) vim -s subs.vi $i + {only available when compiled with the |+netbeans_intg| + feature; if not then -nb will make Vim exit} If the executable is called "view", Vim will start in Readonly mode. This is useful if you can make a hard or symbolic link from "view" to "vim". @@ -777,10 +777,11 @@ accordingly. Vim proceeds in this order: nocp" command if you like. For the Macintosh the $VIMRUNTIME/macmap.vim is read. - *VIMINIT* *.vimrc* *_vimrc* *EXINIT* *.exrc* *_exrc* + *VIMINIT* *.vimrc* *_vimrc* *EXINIT* *.exrc* *_exrc* *$MYVIMRC* c. Four places are searched for initializations. The first that exists is used, the others are ignored. The $MYVIMRC environment variable is - set to the file that was first found, unless $MYVIMRC was already set. + set to the file that was first found, unless $MYVIMRC was already set + and when using VIMINIT. - The environment variable VIMINIT (see also |compatible-default|) (*) The value of $VIMINIT is used as an Ex command line. - The user vimrc file(s): @@ -969,7 +970,8 @@ part of the line in the tags file) is always done in secure mode. This works just like executing a command from a vimrc/exrc in the current directory. *slow-start* -If Vim takes a long time to start up, there may be a few causes: +If Vim takes a long time to start up, use the |--startuptime| argument to find +out what happens. There are a few common causes: - If the Unix version was compiled with the GUI and/or X11 (check the output of ":version" for "+GUI" and "+X11"), it may need to load shared libraries and connect to the X11 server. Try compiling a version with GUI and X11 @@ -990,7 +992,7 @@ there is not enough room, you will see only part of it). *info-message* The |--help| and |--version| arguments cause Vim to print a message and then -exit. Normally the message is send to stdout, thus can be redirected to a +exit. Normally the message is sent to stdout, thus can be redirected to a file with: > vim --help >file @@ -1441,7 +1443,7 @@ requires Vim to be compiled with the |+iconv| feature. Filenames are not converted. -MANUALLY READING AND WRITING +MANUALLY READING AND WRITING *viminfo-read-write* Two commands can be used to read and write the viminfo file manually. This can be used to exchange registers between two running Vim programs: First @@ -1504,7 +1506,7 @@ most of the information will be restored). the list is edited. If you get the |press-enter| prompt you can press "q" and still get the prompt to enter a file number. - Use ! to abondon a modified buffer. |abandon| + Use ! to abandon a modified buffer. |abandon| {not when compiled with tiny or small features} vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 6ab0741fb..4b92ac14a 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.2. Last change: 2008 Jul 22 +*syntax.txt* For Vim version 7.2. Last change: 2009 Dec 19 VIM REFERENCE MANUAL by Bram Moolenaar @@ -113,6 +113,9 @@ this works, look in the file: :syntax off $VIMRUNTIME/syntax/nosyntax.vim Also see |syntax-loading|. +NOTE: If displaying long lines is slow and switching off syntax highlighting +makes it fast, consider setting the 'synmaxcol' option to a lower value. + ============================================================================== 2. Syntax files *:syn-files* @@ -198,8 +201,12 @@ that you write the syntax file in a directory that is early in 'runtimepath'. Vim will only load the first syntax file found. -NAMING CONVENTIONS - *group-name* *{group-name}* *E669* *W18* +NAMING CONVENTIONS *group-name* *{group-name}* *E669* *W18* + +A syntax group name is to be used for syntax items that match the same kind of +thing. These are then linked to a highlight group that specifies the color. +A syntax group name doesn't specify any color or attributes itself. + The name for a highlight or syntax group must consist of ASCII letters, digits and the underscore. As a regexp: "[a-zA-Z0-9_]*" @@ -379,8 +386,8 @@ Or use the ":TOhtml" user command. It is defined in a standard plugin. :10,40TOhtml -After you save the resulting file, you can view it with any HTML viewer, such -as Netscape. The colors should be exactly the same as you see them in Vim. +After you save the resulting file, you can view it with any browser. The +colors should be exactly the same as you see them in Vim. To restrict the conversion to a range of lines set "html_start_line" and "html_end_line" to the first and last line to be converted. Example, using @@ -398,15 +405,45 @@ Force to omit the line numbers by using a zero value: > Go back to the default to use 'number' by deleting the variable: > :unlet html_number_lines -Closed folds are put in the HTML as they are displayed. If you don't want -this, use the |zR| command before invoking 2html, or use: > - :let html_ignore_folding = 1 - By default, HTML optimized for old browsers is generated. If you prefer using cascading style sheets (CSS1) for the attributes (resulting in considerably shorter and valid HTML 4 file), use: > :let html_use_css = 1 +Closed folds are put in the HTML as they are displayed. If you don't want +this, use the |zR| command before invoking 2html, or use: > + :let html_ignore_folding = 1 + +You may want to generate HTML that includes all the data within the folds, and +allow the user to view the folded data similar to how they would in Vim. To +generate this dynamic fold information, use: > + :let html_dynamic_folds = 1 + +Using html_dynamic_folds will imply html_use_css, because it would be far too +difficult to do it for old browsers. However, html_ignore_folding overrides +html_dynamic_folds. + +Using html_dynamic_folds will default to generating a foldcolumn in the html +similar to Vim's foldcolumn, that will use javascript to open and close the +folds in the HTML document. The width of this foldcolumn starts at the current +setting of |'foldcolumn'| but grows to fit the greatest foldlevel in your +document. If you do not want to show a foldcolumn at all, use: > + :let html_no_foldcolumn = 1 + +Using this option, there will be no foldcolumn available to open the folds in +the HTML. For this reason, another option is provided: html_hover_unfold. +Enabling this option will use CSS 2.0 to allow a user to open a fold by +hovering the mouse pointer over it. Note that old browsers (notably Internet +Explorer 6) will not support this feature. Browser-specific markup for IE6 is +included to fall back to the normal CSS1 code so that the folds show up +correctly for this browser, but they will not be openable without a +foldcolumn. Note that using html_hover_unfold will allow modern browsers with +disabled javascript to view closed folds. To use this option, use: > + :let html_hover_unfold = 1 + +Setting html_no_foldcolumn with html_dynamic_folds will automatically set +html_hover_unfold, because otherwise the folds wouldn't be dynamic. + By default "
" and "
" is used around the text. This makes it show up as you see it in Vim, but without wrapping. If you prefer wrapping, at the risk of making some things look a bit different, use: > @@ -525,9 +562,10 @@ files are included: pic PIC assembly (currently for PIC16F84) The most flexible is to add a line in your assembly file containing: > - :asmsyntax=nasm + asmsyntax=nasm Replace "nasm" with the name of the real assembly syntax. This line must be -one of the first five lines in the file. +one of the first five lines in the file. No non-white text must be +immediately before or after this text. The syntax type can always be overruled for a specific buffer by setting the b:asmsyntax variable: > @@ -2529,11 +2567,13 @@ If you notice highlighting errors while scrolling backwards, which are fixed when redrawing with CTRL-L, try setting the "tcsh_minlines" internal variable to a larger number: > - :let tcsh_minlines = 100 + :let tcsh_minlines = 1000 -This will make the syntax synchronization start 100 lines before the first -displayed line. The default value is 15. The disadvantage of using a larger -number is that redrawing can become slow. +This will make the syntax synchronization start 1000 lines before the first +displayed line. If you set "tcsh_minlines" to "fromstart", then +synchronization is done from the start of the file. The default value for +tcsh_minlines is 100. The disadvantage of using a larger number is that +redrawing can become slow. TEX *tex.vim* *ft-tex-syntax* @@ -3414,8 +3454,9 @@ Notes: - The highlighted area will never be outside of the matched text. - A negative offset for an end pattern may not always work, because the end pattern may be detected when the highlighting should already have stopped. -- Until Vim 7.2 the offsets were counted in bytes instead of characters. This - didn't work well for multi-byte characters. +- Before Vim 7.2 the offsets were counted in bytes instead of characters. + This didn't work well for multi-byte characters, so it was changed with the + Vim 7.2 release. - The start of a match cannot be in a line other than where the pattern matched. This doesn't work: "a\nb"ms=e. You can make the highlighting start in another line, this does work: "a\nb"hs=e. @@ -3466,7 +3507,8 @@ expected, but there are a few exceptions. When using a start pattern with an offset, the start of the match is not allowed to start in a following line. The highlighting can start in a -following line though. +following line though. Using the "\zs" item also requires that the start of +the match doesn't move to another line. The skip pattern can include the "\n", but the search for an end pattern will continue in the first character of the next line, also when that character is @@ -3832,10 +3874,11 @@ in their own color. :colo[rscheme] {name} Load color scheme {name}. This searches 'runtimepath' for the file "colors/{name}.vim. The first one that is found is loaded. - To see the name of the currently active color scheme - (if there is one): > + To see the name of the currently active color scheme: > :echo g:colors_name -< Doesn't work recursively, thus you can't use +< When using the default colors you will get an E121 + error. + Doesn't work recursively, thus you can't use ":colorscheme" in a color scheme script. After the color scheme has been loaded the |ColorScheme| autocommand event is triggered. @@ -4032,7 +4075,7 @@ ctermbg={color-nr} *highlight-ctermbg* colors. When a colorscheme is being used, changing 'background' causes it to be reloaded, which may reset all colors (including Normal). First - delete the "colors_name" variable when you don't want this. + delete the "g:colors_name" variable when you don't want this. When you have set "ctermfg" or "ctermbg" for the Normal group, Vim needs to reset the color when exiting. This is done with the "op" diff --git a/runtime/doc/tags b/runtime/doc/tags index cf872e7a0..a36ceb85d 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -4,6 +4,8 @@ $ motion.txt /*$* $HOME options.txt /*$HOME* $HOME-use version5.txt /*$HOME-use* +$MYGVIMRC gui.txt /*$MYGVIMRC* +$MYVIMRC starting.txt /*$MYVIMRC* $VIM starting.txt /*$VIM* $VIM-use version5.txt /*$VIM-use* $VIMRUNTIME starting.txt /*$VIMRUNTIME* @@ -481,7 +483,6 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* 'nodg' options.txt /*'nodg'* 'nodiff' options.txt /*'nodiff'* 'nodigraph' options.txt /*'nodigraph'* -'nodisable' options.txt /*'nodisable'* 'noea' options.txt /*'noea'* 'noeb' options.txt /*'noeb'* 'noed' options.txt /*'noed'* @@ -518,6 +519,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* 'noimc' options.txt /*'noimc'* 'noimcmdline' options.txt /*'noimcmdline'* 'noimd' options.txt /*'noimd'* +'noimdisable' options.txt /*'noimdisable'* 'noincsearch' options.txt /*'noincsearch'* 'noinf' options.txt /*'noinf'* 'noinfercase' options.txt /*'noinfercase'* @@ -1169,6 +1171,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* +signs various.txt /*+signs* +smartindent various.txt /*+smartindent* +sniff various.txt /*+sniff* ++startuptime various.txt /*+startuptime* +statusline various.txt /*+statusline* +sun_workshop various.txt /*+sun_workshop* +syntax various.txt /*+syntax* @@ -1230,6 +1233,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* --serverlist remote.txt /*--serverlist* --servername remote.txt /*--servername* --socketid starting.txt /*--socketid* +--startuptime starting.txt /*--startuptime* --version starting.txt /*--version* --windowid starting.txt /*--windowid* -A starting.txt /*-A* @@ -1771,6 +1775,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* :Sexplore pi_netrw.txt /*:Sexplore* :TOhtml syntax.txt /*:TOhtml* :Texplore pi_netrw.txt /*:Texplore* +:Untarvim pi_tar.txt /*:Untarvim* :UseVimball pi_vimball.txt /*:UseVimball* :Vexplore pi_netrw.txt /*:Vexplore* :VimballList pi_vimball.txt /*:VimballList* @@ -1781,6 +1786,9 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* :_! cmdline.txt /*:_!* :_# cmdline.txt /*:_#* :_## cmdline.txt /*:_##* +:_#0 cmdline.txt /*:_#0* +:_#< cmdline.txt /*:_#<* +:_#n cmdline.txt /*:_#n* :_% cmdline.txt /*:_%* :_%: cmdline.txt /*:_%:* :_%< cmdline.txt /*:_%<* @@ -1971,7 +1979,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* :command-range map.txt /*:command-range* :command-register map.txt /*:command-register* :command-verbose map.txt /*:command-verbose* -:comment eval.txt /*:comment* +:comment cmdline.txt /*:comment* :comp quickfix.txt /*:comp* :compiler quickfix.txt /*:compiler* :con eval.txt /*:con* @@ -2087,6 +2095,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* :enew! editing.txt /*:enew!* :ex editing.txt /*:ex* :exe eval.txt /*:exe* +:exe-comment eval.txt /*:exe-comment* :execute eval.txt /*:execute* :exi editing.txt /*:exi* :exit editing.txt /*:exit* @@ -2434,6 +2443,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* :nunme gui.txt /*:nunme* :nunmenu gui.txt /*:nunmenu* :o vi_diff.txt /*:o* +:ol starting.txt /*:ol* +:oldfiles starting.txt /*:oldfiles* :om map.txt /*:om* :omap map.txt /*:omap* :omap_l map.txt /*:omap_l* @@ -2862,6 +2873,8 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME* :unme gui.txt /*:unme* :unmenu gui.txt /*:unmenu* :unmenu-all gui.txt /*:unmenu-all* +:uns various.txt /*:uns* +:unsilent various.txt /*:unsilent* :up editing.txt /*:up* :update editing.txt /*:update* :v repeat.txt /*:v* @@ -4102,7 +4115,15 @@ E805 eval.txt /*E805* E806 eval.txt /*E806* E807 eval.txt /*E807* E808 eval.txt /*E808* +E809 cmdline.txt /*E809* E81 map.txt /*E81* +E810 diff.txt /*E810* +E811 autocmd.txt /*E811* +E812 autocmd.txt /*E812* +E813 editing.txt /*E813* +E814 editing.txt /*E814* +E815 if_mzsch.txt /*E815* +E816 diff.txt /*E816* E82 message.txt /*E82* E83 message.txt /*E83* E84 windows.txt /*E84* @@ -4304,6 +4325,7 @@ Ruby if_ruby.txt /*Ruby* Russian russian.txt /*Russian* S change.txt /*S* SHELL starting.txt /*SHELL* +SQLGetType ft_sql.txt /*SQLGetType* SQLSetType ft_sql.txt /*SQLSetType* Select visual.txt /*Select* Select-mode visual.txt /*Select-mode* @@ -4660,6 +4682,7 @@ blockwise-operators visual.txt /*blockwise-operators* blockwise-register change.txt /*blockwise-register* blockwise-visual visual.txt /*blockwise-visual* bold syntax.txt /*bold* +bom-bytes mbyte.txt /*bom-bytes* book intro.txt /*book* bookmark usr_03.txt /*bookmark* boolean options.txt /*boolean* @@ -4698,6 +4721,11 @@ bzip2 pi_gzip.txt /*bzip2* c change.txt /*c* c.vim syntax.txt /*c.vim* cW change.txt /*cW* +c_# cmdline.txt /*c_#* +c_## cmdline.txt /*c_##* +c_#< cmdline.txt /*c_#<* +c_#n cmdline.txt /*c_#n* +c_% cmdline.txt /*c_%* c_ cmdline.txt /*c_* c_ cmdline.txt /*c_* c_ cmdline.txt /*c_* @@ -4733,6 +4761,7 @@ c_CTRL-B cmdline.txt /*c_CTRL-B* c_CTRL-C cmdline.txt /*c_CTRL-C* c_CTRL-D cmdline.txt /*c_CTRL-D* c_CTRL-E cmdline.txt /*c_CTRL-E* +c_CTRL-F cmdline.txt /*c_CTRL-F* c_CTRL-H cmdline.txt /*c_CTRL-H* c_CTRL-I cmdline.txt /*c_CTRL-I* c_CTRL-J cmdline.txt /*c_CTRL-J* @@ -4773,6 +4802,7 @@ cc change.txt /*cc* ceil() eval.txt /*ceil()* ch.vim syntax.txt /*ch.vim* change-list-jumps motion.txt /*change-list-jumps* +change-name tips.txt /*change-name* change-tabs change.txt /*change-tabs* change.txt change.txt /*change.txt* changed-5.1 version5.txt /*changed-5.1* @@ -4836,6 +4866,7 @@ collapse tips.txt /*collapse* color-xterm syntax.txt /*color-xterm* coloring syntax.txt /*coloring* colortest.vim syntax.txt /*colortest.vim* +command-line-window cmdline.txt /*command-line-window* command-mode intro.txt /*command-mode* compatible-default starting.txt /*compatible-default* compile-changes-5 version5.txt /*compile-changes-5* @@ -5022,6 +5053,7 @@ daw motion.txt /*daw* dd change.txt /*dd* debug-gcc debug.txt /*debug-gcc* debug-highlight debugger.txt /*debug-highlight* +debug-leaks debug.txt /*debug-leaks* debug-minidump debug.txt /*debug-minidump* debug-mode repeat.txt /*debug-mode* debug-scripts repeat.txt /*debug-scripts* @@ -5368,6 +5400,7 @@ foldend-variable eval.txt /*foldend-variable* folding fold.txt /*folding* foldlevel() eval.txt /*foldlevel()* foldlevel-variable eval.txt /*foldlevel-variable* +folds fold.txt /*folds* foldstart-variable eval.txt /*foldstart-variable* foldtext() eval.txt /*foldtext()* foldtextresult() eval.txt /*foldtextresult()* @@ -5512,7 +5545,6 @@ ft-xml-omni insert.txt /*ft-xml-omni* ft-xml-syntax syntax.txt /*ft-xml-syntax* ft-xpm-syntax syntax.txt /*ft-xpm-syntax* ft_ada.txt ft_ada.txt /*ft_ada.txt* -ft_sql.txt ft_sql.txt /*ft_sql.txt* ftdetect filetype.txt /*ftdetect* ftp pi_netrw.txt /*ftp* ftplugin usr_41.txt /*ftplugin* @@ -5544,6 +5576,7 @@ g- undo.txt /*g-* g0 motion.txt /*g0* g8 various.txt /*g8* g:NetrwTopLvlMenu pi_netrw.txt /*g:NetrwTopLvlMenu* +g:Netrw_funcref pi_netrw.txt /*g:Netrw_funcref* g:ada#Comment ft_ada.txt /*g:ada#Comment* g:ada#Ctags_Kinds ft_ada.txt /*g:ada#Ctags_Kinds* g:ada#DotWordRegex ft_ada.txt /*g:ada#DotWordRegex* @@ -5586,14 +5619,17 @@ g:gnat.Tags() ft_ada.txt /*g:gnat.Tags()* g:gnat.Tags_Command ft_ada.txt /*g:gnat.Tags_Command* g:netrw_alto pi_netrw.txt /*g:netrw_alto* g:netrw_altv pi_netrw.txt /*g:netrw_altv* +g:netrw_banner pi_netrw.txt /*g:netrw_banner* g:netrw_browse_split pi_netrw.txt /*g:netrw_browse_split* g:netrw_browsex_viewer pi_netrw.txt /*g:netrw_browsex_viewer* +g:netrw_chgperm pi_netrw.txt /*g:netrw_chgperm* +g:netrw_chgwin pi_netrw.txt /*g:netrw_chgwin* g:netrw_compress pi_netrw.txt /*g:netrw_compress* g:netrw_ctags pi_netrw.txt /*g:netrw_ctags* +g:netrw_cursorline pi_netrw.txt /*g:netrw_cursorline* g:netrw_cygwin pi_netrw.txt /*g:netrw_cygwin* g:netrw_dav_cmd pi_netrw.txt /*g:netrw_dav_cmd* g:netrw_decompress pi_netrw.txt /*g:netrw_decompress* -g:netrw_extracmd pi_netrw.txt /*g:netrw_extracmd* g:netrw_fastbrowse pi_netrw.txt /*g:netrw_fastbrowse* g:netrw_fetch_cmd pi_netrw.txt /*g:netrw_fetch_cmd* g:netrw_fname_escape pi_netrw.txt /*g:netrw_fname_escape* @@ -5603,10 +5639,13 @@ g:netrw_ftp_cmd pi_netrw.txt /*g:netrw_ftp_cmd* g:netrw_ftp_list_cmd pi_netrw.txt /*g:netrw_ftp_list_cmd* g:netrw_ftp_sizelist_cmd pi_netrw.txt /*g:netrw_ftp_sizelist_cmd* g:netrw_ftp_timelist_cmd pi_netrw.txt /*g:netrw_ftp_timelist_cmd* +g:netrw_ftpextracmd pi_netrw.txt /*g:netrw_ftpextracmd* g:netrw_ftpmode pi_netrw.txt /*g:netrw_ftpmode* g:netrw_glob_escape pi_netrw.txt /*g:netrw_glob_escape* g:netrw_hide pi_netrw.txt /*g:netrw_hide* +g:netrw_home pi_netrw.txt /*g:netrw_home* g:netrw_http_cmd pi_netrw.txt /*g:netrw_http_cmd* +g:netrw_http_xcmd pi_netrw.txt /*g:netrw_http_xcmd* g:netrw_ignorenetrc pi_netrw.txt /*g:netrw_ignorenetrc* g:netrw_keepdir pi_netrw.txt /*g:netrw_keepdir* g:netrw_list_cmd pi_netrw.txt /*g:netrw_list_cmd* @@ -5619,6 +5658,7 @@ g:netrw_localmovecmd pi_netrw.txt /*g:netrw_localmovecmd* g:netrw_maxfilenamelen pi_netrw.txt /*g:netrw_maxfilenamelen* g:netrw_menu pi_netrw.txt /*g:netrw_menu* g:netrw_mkdir_cmd pi_netrw.txt /*g:netrw_mkdir_cmd* +g:netrw_mousemaps pi_netrw.txt /*g:netrw_mousemaps* g:netrw_nogx pi_netrw.txt /*g:netrw_nogx* g:netrw_preview pi_netrw.txt /*g:netrw_preview* g:netrw_rcp_cmd pi_netrw.txt /*g:netrw_rcp_cmd* @@ -5629,6 +5669,7 @@ g:netrw_rmf_cmd pi_netrw.txt /*g:netrw_rmf_cmd* g:netrw_rsync_cmd pi_netrw.txt /*g:netrw_rsync_cmd* g:netrw_scp_cmd pi_netrw.txt /*g:netrw_scp_cmd* g:netrw_scpport pi_netrw.txt /*g:netrw_scpport* +g:netrw_sepchr pi_netrw.txt /*g:netrw_sepchr* g:netrw_sftp_cmd pi_netrw.txt /*g:netrw_sftp_cmd* g:netrw_silent pi_netrw.txt /*g:netrw_silent* g:netrw_sort_by pi_netrw.txt /*g:netrw_sort_by* @@ -5650,6 +5691,8 @@ g:netrw_winsize pi_netrw.txt /*g:netrw_winsize* g:netrw_xstrlen pi_netrw.txt /*g:netrw_xstrlen* g:tar_browseoptions pi_tar.txt /*g:tar_browseoptions* g:tar_cmd pi_tar.txt /*g:tar_cmd* +g:tar_copycmd pi_tar.txt /*g:tar_copycmd* +g:tar_extractcmd pi_tar.txt /*g:tar_extractcmd* g:tar_nomax pi_tar.txt /*g:tar_nomax* g:tar_readoptions pi_tar.txt /*g:tar_readoptions* g:tar_secure pi_tar.txt /*g:tar_secure* @@ -5657,7 +5700,6 @@ g:tar_writeoptions pi_tar.txt /*g:tar_writeoptions* g:var eval.txt /*g:var* g:vimball_home pi_vimball.txt /*g:vimball_home* g:vimball_mkdir pi_vimball.txt /*g:vimball_mkdir* -g:vimball_path_escape pi_vimball.txt /*g:vimball_path_escape* g:vimsyn_embed syntax.txt /*g:vimsyn_embed* g:vimsyn_folding syntax.txt /*g:vimsyn_folding* g:vimsyn_maxlines syntax.txt /*g:vimsyn_maxlines* @@ -6054,6 +6096,7 @@ i_CTRL-O insert.txt /*i_CTRL-O* i_CTRL-P insert.txt /*i_CTRL-P* i_CTRL-Q insert.txt /*i_CTRL-Q* i_CTRL-R insert.txt /*i_CTRL-R* +i_CTRL-R_= insert.txt /*i_CTRL-R_=* i_CTRL-R_CTRL-O insert.txt /*i_CTRL-R_CTRL-O* i_CTRL-R_CTRL-P insert.txt /*i_CTRL-R_CTRL-P* i_CTRL-R_CTRL-R insert.txt /*i_CTRL-R_CTRL-R* @@ -6228,6 +6271,7 @@ keys() eval.txt /*keys()* known-bugs todo.txt /*known-bugs* l motion.txt /*l* l:var eval.txt /*l:var* +lCursor mbyte.txt /*lCursor* lace.vim syntax.txt /*lace.vim* lang-variable eval.txt /*lang-variable* language-mapping map.txt /*language-mapping* @@ -6483,11 +6527,13 @@ netreadfixup pi_netrw.txt /*netreadfixup* netrw pi_netrw.txt /*netrw* netrw-% pi_netrw.txt /*netrw-%* netrw-- pi_netrw.txt /*netrw--* +netrw-C pi_netrw.txt /*netrw-C* netrw-D pi_netrw.txt /*netrw-D* netrw-O pi_netrw.txt /*netrw-O* netrw-P pi_netrw.txt /*netrw-P* netrw-R pi_netrw.txt /*netrw-R* netrw-S pi_netrw.txt /*netrw-S* +netrw-T pi_netrw.txt /*netrw-T* netrw-U pi_netrw.txt /*netrw-U* netrw-a pi_netrw.txt /*netrw-a* netrw-activate pi_netrw.txt /*netrw-activate* @@ -6505,6 +6551,7 @@ netrw-cadaver pi_netrw.txt /*netrw-cadaver* netrw-chgup pi_netrw.txt /*netrw-chgup* netrw-clean pi_netrw.txt /*netrw-clean* netrw-contents pi_netrw.txt /*netrw-contents* +netrw-copyright pi_netrw.txt /*netrw-copyright* netrw-cr pi_netrw.txt /*netrw-cr* netrw-credits pi_netrw.txt /*netrw-credits* netrw-ctrl-h pi_netrw.txt /*netrw-ctrl-h* @@ -6524,10 +6571,14 @@ netrw-explore pi_netrw.txt /*netrw-explore* netrw-explore-cmds pi_netrw.txt /*netrw-explore-cmds* netrw-externapp pi_netrw.txt /*netrw-externapp* netrw-file pi_netrw.txt /*netrw-file* +netrw-filigree pi_netrw.txt /*netrw-filigree* netrw-fixup pi_netrw.txt /*netrw-fixup* netrw-ftp pi_netrw.txt /*netrw-ftp* +netrw-ftype pi_netrw.txt /*netrw-ftype* netrw-gb pi_netrw.txt /*netrw-gb* +netrw-getftype pi_netrw.txt /*netrw-getftype* netrw-gh pi_netrw.txt /*netrw-gh* +netrw-gp pi_netrw.txt /*netrw-gp* netrw-gx pi_netrw.txt /*netrw-gx* netrw-handler pi_netrw.txt /*netrw-handler* netrw-help pi_netrw.txt /*netrw-help* @@ -6539,10 +6590,12 @@ netrw-horiz pi_netrw.txt /*netrw-horiz* netrw-i pi_netrw.txt /*netrw-i* netrw-incompatible pi_netrw.txt /*netrw-incompatible* netrw-intro-browse pi_netrw.txt /*netrw-intro-browse* +netrw-leftmouse pi_netrw.txt /*netrw-leftmouse* netrw-list pi_netrw.txt /*netrw-list* netrw-listbookmark pi_netrw.txt /*netrw-listbookmark* netrw-listhack pi_netrw.txt /*netrw-listhack* netrw-login pi_netrw.txt /*netrw-login* +netrw-mB pi_netrw.txt /*netrw-mB* netrw-mT pi_netrw.txt /*netrw-mT* netrw-mb pi_netrw.txt /*netrw-mb* netrw-mc pi_netrw.txt /*netrw-mc* @@ -6551,8 +6604,10 @@ netrw-me pi_netrw.txt /*netrw-me* netrw-mf pi_netrw.txt /*netrw-mf* netrw-mg pi_netrw.txt /*netrw-mg* netrw-mh pi_netrw.txt /*netrw-mh* +netrw-middlemouse pi_netrw.txt /*netrw-middlemouse* netrw-ml_get pi_netrw.txt /*netrw-ml_get* netrw-mm pi_netrw.txt /*netrw-mm* +netrw-mouse pi_netrw.txt /*netrw-mouse* netrw-move pi_netrw.txt /*netrw-move* netrw-mp pi_netrw.txt /*netrw-mp* netrw-mr pi_netrw.txt /*netrw-mr* @@ -6571,6 +6626,7 @@ netrw-p pi_netrw.txt /*netrw-p* netrw-p1 pi_netrw.txt /*netrw-p1* netrw-p10 pi_netrw.txt /*netrw-p10* netrw-p11 pi_netrw.txt /*netrw-p11* +netrw-p12 pi_netrw.txt /*netrw-p12* netrw-p2 pi_netrw.txt /*netrw-p2* netrw-p3 pi_netrw.txt /*netrw-p3* netrw-p4 pi_netrw.txt /*netrw-p4* @@ -6603,6 +6659,7 @@ netrw-ref pi_netrw.txt /*netrw-ref* netrw-rename pi_netrw.txt /*netrw-rename* netrw-reverse pi_netrw.txt /*netrw-reverse* netrw-rexplore pi_netrw.txt /*netrw-rexplore* +netrw-rightmouse pi_netrw.txt /*netrw-rightmouse* netrw-s pi_netrw.txt /*netrw-s* netrw-settings pi_netrw.txt /*netrw-settings* netrw-sexplore pi_netrw.txt /*netrw-sexplore* @@ -6617,6 +6674,7 @@ netrw-starstarpat pi_netrw.txt /*netrw-starstarpat* netrw-start pi_netrw.txt /*netrw-start* netrw-t pi_netrw.txt /*netrw-t* netrw-texplore pi_netrw.txt /*netrw-texplore* +netrw-todo pi_netrw.txt /*netrw-todo* netrw-transparent pi_netrw.txt /*netrw-transparent* netrw-u pi_netrw.txt /*netrw-u* netrw-uidpass pi_netrw.txt /*netrw-uidpass* @@ -6732,6 +6790,7 @@ object-select motion.txt /*object-select* objects index.txt /*objects* obtaining-exted netbeans.txt /*obtaining-exted* ocaml.vim syntax.txt /*ocaml.vim* +oldfiles-variable eval.txt /*oldfiles-variable* ole-activation if_ole.txt /*ole-activation* ole-eval if_ole.txt /*ole-eval* ole-gethwnd if_ole.txt /*ole-gethwnd* @@ -6852,7 +6911,7 @@ ports-6 version6.txt /*ports-6* posix vi_diff.txt /*posix* posix-compliance vi_diff.txt /*posix-compliance* posix-screen-size vi_diff.txt /*posix-screen-size* -postgres ft_sql.txt /*postgres* +postgress ft_sql.txt /*postgress* postscr.vim syntax.txt /*postscr.vim* postscript-cjk-printing print.txt /*postscript-cjk-printing* postscript-print-encoding print.txt /*postscript-print-encoding* @@ -6889,6 +6948,7 @@ profiling repeat.txt /*profiling* profiling-variable eval.txt /*profiling-variable* progname-variable eval.txt /*progname-variable* progress.vim syntax.txt /*progress.vim* +pronounce intro.txt /*pronounce* psql ft_sql.txt /*psql* ptcap.vim syntax.txt /*ptcap.vim* pterm-mouse options.txt /*pterm-mouse* @@ -7149,6 +7209,7 @@ settabwinvar() eval.txt /*settabwinvar()* setting-guifont gui.txt /*setting-guifont* setting-guitablabel tabpage.txt /*setting-guitablabel* setting-tabline tabpage.txt /*setting-tabline* +setuid change.txt /*setuid* setwinvar() eval.txt /*setwinvar()* sftp pi_netrw.txt /*sftp* sgml.vim syntax.txt /*sgml.vim* @@ -7171,6 +7232,7 @@ simulated-command vi_diff.txt /*simulated-command* sin() eval.txt /*sin()* single-repeat repeat.txt /*single-repeat* skeleton autocmd.txt /*skeleton* +slice eval.txt /*slice* slow-fast-terminal term.txt /*slow-fast-terminal* slow-start starting.txt /*slow-start* slow-terminal term.txt /*slow-terminal* @@ -7195,6 +7257,7 @@ spell spell.txt /*spell* spell-ACCENT spell.txt /*spell-ACCENT* spell-AUTHOR spell.txt /*spell-AUTHOR* spell-BAD spell.txt /*spell-BAD* +spell-BREAK spell.txt /*spell-BREAK* spell-CHECKCOMPOUNDCASE spell.txt /*spell-CHECKCOMPOUNDCASE* spell-CHECKCOMPOUNDDUP spell.txt /*spell-CHECKCOMPOUNDDUP* spell-CHECKCOMPOUNDPATTERN spell.txt /*spell-CHECKCOMPOUNDPATTERN* @@ -7214,6 +7277,7 @@ spell-COMPOUNDMIN spell.txt /*spell-COMPOUNDMIN* spell-COMPOUNDPERMITFLAG spell.txt /*spell-COMPOUNDPERMITFLAG* spell-COMPOUNDROOT spell.txt /*spell-COMPOUNDROOT* spell-COMPOUNDRULE spell.txt /*spell-COMPOUNDRULE* +spell-COMPOUNDRULES spell.txt /*spell-COMPOUNDRULES* spell-COMPOUNDSYLLABLE spell.txt /*spell-COMPOUNDSYLLABLE* spell-COMPOUNDSYLMAX spell.txt /*spell-COMPOUNDSYLMAX* spell-COMPOUNDWORDMAX spell.txt /*spell-COMPOUNDWORDMAX* @@ -7224,6 +7288,7 @@ spell-FOL spell.txt /*spell-FOL* spell-FORBIDDENWORD spell.txt /*spell-FORBIDDENWORD* spell-HOME spell.txt /*spell-HOME* spell-KEEPCASE spell.txt /*spell-KEEPCASE* +spell-KEY spell.txt /*spell-KEY* spell-LANG spell.txt /*spell-LANG* spell-LEMMA_PRESENT spell.txt /*spell-LEMMA_PRESENT* spell-LOW spell.txt /*spell-LOW* @@ -7311,9 +7376,11 @@ sql-object-motions ft_sql.txt /*sql-object-motions* sql-predefined-objects ft_sql.txt /*sql-predefined-objects* sql-type-default ft_sql.txt /*sql-type-default* sql-types ft_sql.txt /*sql-types* +sql.txt ft_sql.txt /*sql.txt* sql.vim syntax.txt /*sql.vim* sqlanywhere ft_sql.txt /*sqlanywhere* sqlanywhere.vim syntax.txt /*sqlanywhere.vim* +sqlgettype ft_sql.txt /*sqlgettype* sqlinformix.vim syntax.txt /*sqlinformix.vim* sqlj ft_sql.txt /*sqlj* sqlserver ft_sql.txt /*sqlserver* @@ -7364,12 +7431,14 @@ sub-menu-priority gui.txt /*sub-menu-priority* sub-replace-\= change.txt /*sub-replace-\\=* sub-replace-expression change.txt /*sub-replace-expression* sub-replace-special change.txt /*sub-replace-special* +sublist eval.txt /*sublist* submatch() eval.txt /*submatch()* subscribe-maillist intro.txt /*subscribe-maillist* substitute() eval.txt /*substitute()* substitute-CR version6.txt /*substitute-CR* suffixes cmdline.txt /*suffixes* suspend starting.txt /*suspend* +swap-exists-choices usr_11.txt /*swap-exists-choices* swap-file recover.txt /*swap-file* swapchoice-variable eval.txt /*swapchoice-variable* swapcommand-variable eval.txt /*swapcommand-variable* @@ -7650,6 +7719,7 @@ tcsh.vim syntax.txt /*tcsh.vim* tear-off-menus gui.txt /*tear-off-menus* telnet-CTRL-] tagsrch.txt /*telnet-CTRL-]* temp-file-name eval.txt /*temp-file-name* +tempfile change.txt /*tempfile* template autocmd.txt /*template* tempname() eval.txt /*tempname()* term-dependent-settings term.txt /*term-dependent-settings* @@ -7818,6 +7888,7 @@ v:lnum eval.txt /*v:lnum* v:mouse_col eval.txt /*v:mouse_col* v:mouse_lnum eval.txt /*v:mouse_lnum* v:mouse_win eval.txt /*v:mouse_win* +v:oldfiles eval.txt /*v:oldfiles* v:operator eval.txt /*v:operator* v:prevcount eval.txt /*v:prevcount* v:profiling eval.txt /*v:profiling* @@ -7942,6 +8013,7 @@ v_x change.txt /*v_x* v_y change.txt /*v_y* v_~ change.txt /*v_~* val-variable eval.txt /*val-variable* +valgrind debug.txt /*valgrind* values() eval.txt /*values()* variables eval.txt /*variables* various various.txt /*various* @@ -8008,6 +8080,7 @@ viminfo-file starting.txt /*viminfo-file* viminfo-file-marks starting.txt /*viminfo-file-marks* viminfo-file-name starting.txt /*viminfo-file-name* viminfo-read starting.txt /*viminfo-read* +viminfo-read-write starting.txt /*viminfo-read-write* viminfo-write starting.txt /*viminfo-write* vimrc starting.txt /*vimrc* vimrc-filetype usr_05.txt /*vimrc-filetype* @@ -8167,6 +8240,7 @@ xterm-function-keys term.txt /*xterm-function-keys* xterm-modifier-keys term.txt /*xterm-modifier-keys* xterm-mouse options.txt /*xterm-mouse* xterm-mouse-wheel scroll.txt /*xterm-mouse-wheel* +xterm-resize term.txt /*xterm-resize* xterm-save-screen tips.txt /*xterm-save-screen* xterm-screens tips.txt /*xterm-screens* xterm-scroll-region term.txt /*xterm-scroll-region* diff --git a/runtime/doc/tagsrch.txt b/runtime/doc/tagsrch.txt index 1267fb153..15ebbd464 100644 --- a/runtime/doc/tagsrch.txt +++ b/runtime/doc/tagsrch.txt @@ -1,4 +1,4 @@ -*tagsrch.txt* For Vim version 7.2. Last change: 2006 Apr 24 +*tagsrch.txt* For Vim version 7.2. Last change: 2009 Feb 18 VIM REFERENCE MANUAL by Bram Moolenaar @@ -176,7 +176,7 @@ get an error message. 3. Tag match list *tag-matchlist* *E427* *E428* When there are several matching tags, these commands can be used to jump -between them. Note that these command don't change the tag stack, they keep +between them. Note that these commands don't change the tag stack, they keep the same entry. *:ts* *:tselect* @@ -428,6 +428,10 @@ Emacs style tag files are only supported if Vim was compiled with the |+emacs_tags| feature enabled. Sorry, there is no explanation about Emacs tag files here, it is only supported for backwards compatibility :-). +Lines in Emacs tags files can be very long. Vim only deals with lines of up +to about 510 bytes. To see whether lines are ignored set 'verbose' to 5 or +higher. + *tags-option* The 'tags' option is a list of file names. Each of these files is searched for the tag. This can be used to use a different tags file than the default diff --git a/runtime/doc/term.txt b/runtime/doc/term.txt index 3df065653..ed308e8bb 100644 --- a/runtime/doc/term.txt +++ b/runtime/doc/term.txt @@ -1,4 +1,4 @@ -*term.txt* For Vim version 7.2. Last change: 2008 Jun 21 +*term.txt* For Vim version 7.2. Last change: 2009 Nov 05 VIM REFERENCE MANUAL by Bram Moolenaar @@ -410,6 +410,21 @@ VT220, etc.). The result is that codes like are no longer needed. Note: This is only done on startup. If the xterm options are changed after Vim has started, the escape sequences may not be recognized any more. + *xterm-resize* +Window resizing with xterm only works if the allowWindowOps resource is +enabled. On some systems and versions of xterm it's disabled by default +because someone thought it would be a security issue. It's not clear if this +is actually the case. + +To overrule the default, put this line in your ~/.Xdefaults or +~/.Xresources: +> + XTerm*allowWindowOps: true + +And run "xrdb -merge .Xresources" to make it effective. You can check the +value with the context menu (right mouse button while CTRL key is pressed), +there should be a tick at allow-window-ops. + *termcap-colors* Note about colors: The 't_Co' option tells Vim the number of colors available. When it is non-zero, the 't_AB' and 't_AF' options are used to set the color. diff --git a/runtime/doc/tips.txt b/runtime/doc/tips.txt index 5f83ec50a..e5ae40e00 100644 --- a/runtime/doc/tips.txt +++ b/runtime/doc/tips.txt @@ -1,4 +1,4 @@ -*tips.txt* For Vim version 7.2. Last change: 2006 Jul 24 +*tips.txt* For Vim version 7.2. Last change: 2009 Nov 07 VIM REFERENCE MANUAL by Bram Moolenaar @@ -6,6 +6,10 @@ Tips and ideas for using Vim *tips* +These are just a few that we thought would be helpful for many users. +You can find many more tips on the wiki. The URL can be found on +http://www.vim.org + Don't forget to browse the user manual, it also contains lots of useful tips |usr_toc.txt|. @@ -18,11 +22,12 @@ Correcting common typing mistakes |type-mistakes| Counting words, lines, etc. |count-items| Restoring the cursor position |restore-position| Renaming files |rename-files| +Change a name in multiple files |change-name| Speeding up external commands |speed-up| Useful mappings |useful-mappings| Compressing the help files |gzip-helpfile| -Hex editing |hex-editing| Executing shell commands in a window |shell-window| +Hex editing |hex-editing| Using <> notation in autocommands |autocmd-<>| Highlighting matching parens |match-parens| @@ -246,6 +251,8 @@ Breaking up restoring the position: zt scroll to move this line to the top of the window `s jump to the original position of the cursor +For something more advanced see |winsaveview()| and |winrestview()|. + ============================================================================== Renaming files *rename-files* @@ -265,6 +272,25 @@ and I want to rename *.c *.bla. I'd do it like this: > :w !sh :q! +============================================================================== +Change a name in multiple files *change-name* + +Example for using a script file to change a name in several files: + + Create a file "subs.vim" containing substitute commands and a :update + command: > + :%s/Jones/Smith/g + :%s/Allen/Peter/g + :update +< + Execute Vim on all files you want to change, and source the script for + each argument: > + + vim *.let + argdo source subs.vim + +See |:argdo|. + ============================================================================== Speeding up external commands *speed-up* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 81492c0f1..c6e82ad23 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.2. Last change: 2008 Aug 09 +*todo.txt* For Vim version 7.2. Last change: 2010 Jan 06 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,31 +30,359 @@ be worked on, but only if you sponsor Vim development. See |sponsor|. *known-bugs* -------------------- Known bugs and current work ----------------------- -":pedit %" with a BufReadPre autocommand causes the cursor to move to the -first line. (Ingo Karkat, 2008 Jul 1) Ian Kelling is working on this. +Patch from Dominique Pelle to comment out unused functions. (2009 Dec 25) -Have a look at patch for utf-8 line breaking. (Yongwei Wu, 2008 Mar 1, Mar 23) +Extention for MzScheme interface. (Sergey Khorev, 2009 Dec 21, update Dec 26) + +Patch: :compiler command doesn't function properly when invoked in a function +(Yukihiro Nakadaira) + +iconv() doesn't fail on an illegal character, as documented. (Yongwei Wu, 2009 +Nov 15, example Nov 26) Add argument to specify whether iconv() should fail +or replace with a character and continue? + +Problem with window jumping to other screen when changing font. (patch by +Michael Wookey, 2009 Oct 16) +Better: if the window offset was negative before changing something, then +don't change it. + +Patch to make CTRL-] work on scheme keywords. (Sergey Khorev, 2010 Jan 5) + +has("win64") returns zero. Patch from Sergey Khorev, 2009 Jan 5. +Or define WIN64 when _WIN64 is defined, change all _WIN64 to WIN64. + +Add local time at start of --startuptime output. +Requires configure check for localtime(). +Use format year-month-day hr:min:sec. + +Patch to support netbeans in Unix console Vim. (Xaview de Gaye, 2009 Apr 26) +Now with Mercurial repository (2010 Jan 2) + +Shell not recognized properly if it ends in "csh -f". (James Vega, 2009 Nov 3) +Find tail? Might have a / in argument. Find space? Might have space in +path. + +Crash when assigning s: to variable, pointer becomes invalid later. +(Yukihiro Nakadaira, 2009 Oct 12, confirmed by Dominique Pelle) + +ml_get error when using SiSU syntax. (Nathan Thomas, 2009 Oct 29) + +Coverity: ask someone to create new user: Dominique. +look into reported defects: http://scan.coverity.com/rung2.html + +Bug with 'incsearch' going to wrong line. (Wolfram Kresse, 2009 Aug 17) +Only with "vim -u NONE". + +Problem with editing file in binary mode. (Ingo Krabbe, 2009 Oct 8) + +Support .xz with the xz program, like with lzma. + +Perl runtime files update. (Andy Lester, 2009 Aug 25) + +Gvimext patch to support wide file names. (Szabolcs Horvat 2008 Sep 10) + +Problem with stop directory in findfile(). (Adam Simpkins, 2009 Aug 26) + +Patch to support :browse for more commands. (Lech Lorens, 2009 Jul 18) + +Change to C syntax folding to make it work much faster, but a bit less +reliable. (Lech Lorens, 2009 Nov 9) Enable with an option? +Most time is spent in in_id_list(). + +New wordlist for Dutch: http://www.opentaal.org/bestanden/1_10/nl_NL-Pack + +Check for unused functions, idea: +http://blog.flameeyes.eu/2008/01/17/today-how-to-identify-unused-exported-functions-and-variables + +In command line window ":close" doesn't work properly. (Tony Mechelynck, 2009 +Jun 1) + +Why does this give a #705 error: +let X = function('haslocaldir') +let X = function('getcwd') +Inserting "unlet X" helps. + +When a:base in 'completefunc' starts with a number it's passed as a number, +not a string. (Sean Ma) Need to add flag to call_func_retlist() to force a +string value. + +Reproducable crash in syntax HL. (George Reilly, Dominique Pelle, 2009 May 9) + +Invalid read error in Farsi mode. (Dominique Pelle, 2009 Aug 2) + +Patch to add diff functionality to 2html.vim. (Christian Brabandt, 2009 Dec +15) + +For running gvim on an USB stick: avoid the OLE registration. Use a command +line argument -noregister. + +submatch() may remove backslash. (Sergey Goldgaber, 2009 Jul 6) + +Still a problem with ":make" in the wrong directory. Caused by ":bufdo". +(Ajit Thakkar, 2009 Jul 1) More information Jul 9, Jul 15. +Caused by "doautoall syntaxset BufEnter *" in syntax/nosyntax.vim ? +There also is a BufLeave/BufEnter aucmd to save/restore view. +Does the patch to save/restore globaldir work? + +":bufdo normal gg" while 'hidden' is set leaves buffers without syntax +highlighting. Don't disable Syntax autocommands then? Or add a flag/modifier +to avoid changing 'eventignore'? + +Patch for displaying 0x200c and 0x200d. (Ali Gholami Rudi, 2009 May 6) +Probably needs a bit of work. + +List of encoding aliases. (Takao Fujiware, 2009 Jul 18) +Are they all OK? Update Jul 22. + +Patch for Ruby sockets. (todesking/Ariya Mizutani, 2008 Jul 1,24) +Confirmed by Anton Sharonov, 2008 Dec 26. + +Patch for Ruby 1.9. (Msaki Suketa, 2009 Jul 21, Jul 26) + +Patch for completion of ":find" arguments. (Nazri Ramliy, 2009 Feb 22, 26) +8 For ":find" and ":sfind" expand files found in 'path'. +Update 2009 Mar 28. + +Win32: Expanding 'path' runs into a maximum size limit. (bgold12, 2009 Nov 15) + +Setting 'tags' to "tagsdir/*" does not find "tagsdir/tags". (Steven K. Wong, +2009 Jul 18) + +":e dir" with 'wildmode' set to "list" doesn't highlight directory names +with a space. (Alexandre Provencio, 2009 Jun 9) + +Patch to add farsi handling to arabic.c (Ali Gholami Rudi, 2009 May 2) +Added test, updates, June 23. + +Patch to add "focusonly" to 'scrollopt', so that scrollbind also applies in +window that doesn't have focus. (Jonathon Mah, 2009 Jan 12) +Needs more work. + +Problem with