# HG changeset patch # User Bram Moolenaar # Date 1396731353 -7200 # Node ID 755931e042e41a3331380adc74a8a912c234c354 # Parent 870cb388ee8fdf6fb8232e2f62888f5f66f6b3dc Updated runtime files. diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.4. Last change: 2014 Mar 27 +*eval.txt* For Vim version 7.4. Last change: 2014 Apr 05 VIM REFERENCE MANUAL by Bram Moolenaar @@ -148,7 +148,7 @@ arguments: > 1.3 Lists ~ - *List* *Lists* *E686* + *list* *List* *Lists* *E686* A List is an ordered sequence of items. An item can be of any type. Items can be accessed by their index number. Items can be added and removed at any position in the sequence. @@ -394,7 +394,7 @@ example, to add up all the numbers in a 1.4 Dictionaries ~ - *Dictionaries* *Dictionary* + *dict* *Dictionaries* *Dictionary* A Dictionary is an associative array: Each entry has a key and a value. The entry can be located with the key. The entries are stored without a specific ordering. @@ -1005,7 +1005,7 @@ function. Example: > -string *expr-string* *E114* +string *string* *expr-string* *E114* ------ "string" string constant *expr-quote* @@ -1144,7 +1144,7 @@ specified by what is prepended: |local-variable| l: Local to a function. |script-variable| s: Local to a |:source|'ed Vim script. |function-argument| a: Function argument (only inside a function). -|vim-variable| v: Global, predefined by Vim. +|vim-variable| v: Global, predefined by Vim. The scope name by itself can be used as a |Dictionary|. For example, to delete all script-local variables: > @@ -2720,7 +2720,7 @@ exepath({expr}) *exepath()* Note that the current directory is used when {expr} starts with "./", which may be a problem for Vim: > echo exepath(v:progpath) -< If {expr} cannot be found in $PATH or is not executable then +< If {expr} cannot be found in $PATH or is not executable then an empty string is returned. *exists()* @@ -6455,11 +6455,20 @@ 2. Features that are only supported whe Example: > :if has("gui_running") < *has-patch* -3. Included patches. First check |v:version| for the version of Vim. - Then the "patch123" feature means that patch 123 has been included for - this version. Example (checking version 6.2.148 or later): > +3. Included patches. The "patch123" feature means that patch 123 has been + included. Note that this form does not check the version of Vim, you need + to inspect |v:version| for that. + Example (checking version 6.2.148 or later): > :if v:version > 602 || v:version == 602 && has("patch148") -< Note that it's possible for patch 147 to be omitted even though 148 is +< Note that it's possible for patch 147 to be omitted even though 148 is + included. + +4. Beyond a certain version or at a certain version and including a specific + patch. The "patch-7.4.123" feature means that the Vim version is 7.5 or + later, or it is version 7.4 and patch 123 was included. + The example above can be simplified to: > + :if has("patch-6.2.148") +< Note that it's possible for patch 147 to be omitted even though 148 is included. acl Compiled with |ACL| support. @@ -7402,6 +7411,8 @@ 7. Commands *expression-commands* {pattern}, so long as it does not have a special meaning (e.g., '|' or '"') and doesn't occur inside {pattern}. + Information about the exception is available in + |v:exception|. Also see |throw-variables|. NOTE: It is not reliable to ":catch" the TEXT of an error message because it may vary in different locales. diff --git a/runtime/doc/recover.txt b/runtime/doc/recover.txt --- a/runtime/doc/recover.txt +++ b/runtime/doc/recover.txt @@ -1,4 +1,4 @@ -*recover.txt* For Vim version 7.4. Last change: 2014 Mar 25 +*recover.txt* For Vim version 7.4. Last change: 2014 Mar 27 VIM REFERENCE MANUAL by Bram Moolenaar @@ -84,7 +84,7 @@ created anyway. The 'swapfile' option can be reset to avoid creating a swapfile. And the |:noswapfile| modifier can be used to not create a swapfile for a new buffer. -:noswap[file] {command} *:nos* *:noswapfile* +:nos[wapfile] {command} *:nos* *:noswapfile* Execute {command}. If it contains a command that loads a new buffer, it will be loaded without creating a swapfile and the 'swapfile' option will be reset. If a buffer already had a diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt --- a/runtime/doc/starting.txt +++ b/runtime/doc/starting.txt @@ -1,4 +1,4 @@ -*starting.txt* For Vim version 7.4. Last change: 2013 Jul 20 +*starting.txt* For Vim version 7.4. Last change: 2014 Mar 29 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1276,8 +1276,10 @@ triggered. When [!] is included an existing file is overwritten. When [file] is omitted or is a number from 1 to 9, a name is generated and 'viewdir' prepended. When the - last directory name in 'viewdir' does not exist, this - directory is created. + last path part of 'viewdir' does not exist, this + directory is created. E.g., when 'viewdir' is + "$VIM/vimfiles/view" then "view" is created in + "$VIM/vimfiles". An existing file is always overwritten then. Use |:loadview| to load this view again. When [file] is the name of a file ('viewdir' is not diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -1,4 +1,4 @@ -*syntax.txt* For Vim version 7.4. Last change: 2014 Feb 25 +*syntax.txt* For Vim version 7.4. Last change: 2014 Apr 05 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1959,7 +1959,7 @@ If you don't want to set the variable, u There are several implementations for LPC, we intend to support most widely used ones. Here the default LPC syntax is for MudOS series, for MudOS v22 and before, you should turn off the sensible modifiers, and this will also -asserts the new efuns after v22 to be invalid, don't set this variable when +assert the new efuns after v22 to be invalid, don't set this variable when you are using the latest version of MudOS: > :let lpc_pre_v22 = 1 diff --git a/runtime/doc/tags b/runtime/doc/tags --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -4311,6 +4311,7 @@ E88 windows.txt /*E88* E880 if_pyth.txt /*E880* E881 autocmd.txt /*E881* E882 eval.txt /*E882* +E883 eval.txt /*E883* E89 message.txt /*E89* E90 message.txt /*E90* E91 options.txt /*E91* @@ -5368,6 +5369,7 @@ diW motion.txt /*diW* dialog gui_w32.txt /*dialog* dialogs-added version5.txt /*dialogs-added* dib motion.txt /*dib* +dict eval.txt /*dict* dict-functions usr_41.txt /*dict-functions* dict-identity eval.txt /*dict-identity* dict-modification eval.txt /*dict-modification* @@ -5512,6 +5514,7 @@ exclusive motion.txt /*exclusive* exclusive-linewise motion.txt /*exclusive-linewise* executable() eval.txt /*executable()* execute-menus gui.txt /*execute-menus* +exepath() eval.txt /*exepath()* exim starting.txt /*exim* exists() eval.txt /*exists()* exp() eval.txt /*exp()* @@ -6696,6 +6699,7 @@ linewise-register change.txt /*linewise- linewise-visual visual.txt /*linewise-visual* lisp.vim syntax.txt /*lisp.vim* lispindent() eval.txt /*lispindent()* +list eval.txt /*list* list-functions usr_41.txt /*list-functions* list-identity eval.txt /*list-identity* list-index eval.txt /*list-index* @@ -7413,6 +7417,7 @@ profile repeat.txt /*profile* profiling repeat.txt /*profiling* profiling-variable eval.txt /*profiling-variable* progname-variable eval.txt /*progname-variable* +progpath-variable eval.txt /*progpath-variable* progress.vim syntax.txt /*progress.vim* pronounce intro.txt /*pronounce* psql ft_sql.txt /*psql* @@ -7913,6 +7918,7 @@ strcspn() eval.txt /*strcspn()* strdisplaywidth() eval.txt /*strdisplaywidth()* strftime() eval.txt /*strftime()* stridx() eval.txt /*stridx()* +string eval.txt /*string* string() eval.txt /*string()* string-functions usr_41.txt /*string-functions* string-match eval.txt /*string-match* @@ -7977,6 +7983,7 @@ sysmouse term.txt /*sysmouse* system() eval.txt /*system()* system-functions usr_41.txt /*system-functions* system-vimrc starting.txt /*system-vimrc* +systemlist() eval.txt /*systemlist()* s~ change.txt /*s~* t motion.txt /*t* t: eval.txt /*t:* @@ -8420,6 +8427,7 @@ v:operator eval.txt /*v:operator* v:prevcount eval.txt /*v:prevcount* v:profiling eval.txt /*v:profiling* v:progname eval.txt /*v:progname* +v:progpath eval.txt /*v:progpath* v:register eval.txt /*v:register* v:scrollstart eval.txt /*v:scrollstart* v:searchforward eval.txt /*v:searchforward* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.4. Last change: 2014 Mar 27 +*todo.txt* For Vim version 7.4. Last change: 2014 Apr 05 VIM REFERENCE MANUAL by Bram Moolenaar @@ -35,6 +35,8 @@ not be repeated below, unless there is e -------------------- Known bugs and current work ----------------------- Regexp problems: +- Crash when using cpp syntax file with raw string. (Havard Garnes) + Edit "~/tmp/test.cc" and source "~/tmp/cpp.vim". - NFA regexp doesn't count tab matches correctly. (Urtica Dioica / gaultheria Shallon, 2013 Nov 18) - After patch 7.4.100 there is still a difference between NFA and old engine. @@ -70,6 +72,10 @@ Python: ":py raw_input('prompt')" doesn' Using autoconf 2.69 gives a lot of warnings. +Spell files use a latin single quote. Unicode also has another single quote. +Adjust spell file scripts to duplicate words to support both quotes. +(Ron Aaron, 2014 Apr 4) + Problem with 'spellsuggest' file, only works for some words. (Cesar Romani, 2013 Aug 20) Depends on file name? (Aug 24) Additional remark by glts: the suggested words are marked bad? @@ -81,27 +87,20 @@ Adding "~" to 'cdpath' doesn't work for Syntax file for gnuplot. Existing one is very old. (Andrew Rasmussen, 2014 Feb 24) -Crash with ":%s/\n//g" on long file. (Aidan Marlin, 2014 Jan 15) -Christian Brabandt: patch to run this into a join. (2014 Jan 18) -Suggestion to not save replaced line for undo: Yukihiro Nakadaira, 2014 Jan -25. - Add digraph for Rouble: =P. What's the Unicode? -Bug: "!ls %" expands parenthesis in %, but not spaces. So this doesn't work -either: ':!ls "%"'. -Patch by Gary Johnson, 2014 Mar 6. - Issue 174: Detect Mason files. No error for missing endwhile. (ZyX, 2014 Mar 20) -Patch to add v:progpath. (Viktor Kojouharov, 2014 Mar 15) - Phpcomplete.vim update. (Complex, 2014 Jan 15) PHP syntax is extremely slow. (Anhad Jai Singh, 2014 Jan 19) +Win32: use different args for SearchPath()? (Yasuhiro Matsumoto, 2009 Jan 30) +Also fixes wrong result from executable(). +Update from Ken Takata, 2014 Jan 10. Newer 2014 Apr 3. + Can we make ":unlet $VAR" use unsetenv() to delete the env var? What for systems that don't have unsetenv()? @@ -110,13 +109,9 @@ This does not give an error: (Andre Sihe This neither: (ZyX) vim -u NONE 1 2 3 -c 'bufdo while 1 | echo 1' -spec ftplugin: patch from Igor Gnatenko, 2014 Jan 26. -Include if maintainers don't respond. - -Patch to make has() check for Vim version and patch at the same time. -(Marc Weber, 2013 Jun 7) - -Regression on pach 7.4.034. (Ingo Karkat, 2013 Nov 20) +'viewdir' default on MS-Windows is not a good choice, it's a system directory. +Change 'viewdir' to "$HOME/vimfiles/view" and use 'viewdiralt' to also read +from? Include a plugin manager with Vim? Neobundle seems to be the best currently. Long message about this from ZyX, 2014 Mar 23. And following replies. @@ -152,17 +147,18 @@ Out of scope: - Development work on plugins (although diff with distributed version would be useful). -Patch to include smack support (Linux security library). (Jose Bollo, 2014 Jan -14) Update Jan 15. - -Tag list, as used for :tjump, does not unescape regexp. (Gary Johnson, 2014 Jan -6) With patch in another message. +Setting the spell file in a session only reads the local additions, not the +normal spell file. (Enno Nagel, 2014 Mar 29) + +Editing an ascii file as ucs-2 or ucs-4 causes display errors. +(ZyX, 2014 Mar 30) + +":Next 1 some-arg" does not complain about trailing argument. Also for +various other commands. (ZyX, 2014 Mar 30) VMS: Select() doesn't work properly, typing ESC may hang Vim. Use sys$qiow instead. (Samuel Ferencik, 2013 Sep 28) -Series of patches for NL vs NUL handling. (ZyX, 2013 Nov 3, Nov 9) - Patch for XDG base directory support. (Jean François Bignolles, 2014 Mar 4) Patch to add flag to shortmess to avoid giving completion messages. @@ -258,10 +254,6 @@ GTK: problem with 'L' in 'guioptions' ch Patch to add option that tells whether small deletes go into the numbered registers. (Aryeh Leib Taurog, 2013 Nov 18) -Win32: use different args for SearchPath()? (Yasuhiro Matsumoto, 2009 Jan 30) -Also fixes wrong result from executable(). -Update from Ken Takata, 2014 Jan 10. - Javascript file where indent gets stuck on: GalaxyMaster, 2012 May 3. The BufUnload event is triggered when re-using the empty buffer. diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -1,4 +1,4 @@ -*usr_41.txt* For Vim version 7.4. Last change: 2014 Jan 10 +*usr_41.txt* For Vim version 7.4. Last change: 2014 Apr 05 VIM USER MANUAL - by Bram Moolenaar @@ -742,6 +742,7 @@ System functions and manipulation of fil pathshorten() shorten directory names in a path simplify() simplify a path without changing its meaning executable() check if an executable program exists + exepath() full path of an executable program filereadable() check if a file can be read filewritable() check if a file can be written to getfperm() get the permissions of a file @@ -754,7 +755,8 @@ System functions and manipulation of fil mkdir() create a new directory delete() delete a file rename() rename a file - system() get the result of a shell command + system() get the result of a shell command as a string + systemlist() get the result of a shell command as a list hostname() name of the system readfile() read a file into a List of lines writefile() write a List of lines into a file diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 7.4. Last change: 2014 Mar 23 +*various.txt* For Vim version 7.4. Last change: 2014 Apr 01 VIM REFERENCE MANUAL by Bram Moolenaar @@ -234,25 +234,41 @@ 8g8 Find an illegal UTF-8 byte sequenc *:!cmd* *:!* *E34* :!{cmd} Execute {cmd} with the shell. See also the 'shell' and 'shelltype' option. + Any '!' in {cmd} is replaced with the previous external command (see also 'cpoptions'). But not when there is a backslash before the '!', then that backslash is removed. Example: ":!ls" followed by ":!echo ! \! \\!" executes "echo ls ! \!". - After the command has been executed, the timestamp of - the current file is checked |timestamp|. + A '|' in {cmd} is passed to the shell, you cannot use it to append a Vim command. See |:bar|. + + If {cmd} contains "%" it is expanded to the current + file name. Special characters are not escaped, use + quotes to avoid their special meaning: > + :!ls "%" +< If the file name contains a "$" single quotes might + work better (but a single quote causes trouble): > + :!ls '%' +< This should always work, but it's more typing: > + :exe "!ls " . shellescape(expand("%")) +< A newline character ends {cmd}, what follows is interpreted as a following ":" command. However, if there is a backslash before the newline it is removed and {cmd} continues. It doesn't matter how many backslashes are before the newline, only one is removed. + On Unix the command normally runs in a non-interactive shell. If you want an interactive shell to be used (to use aliases) set 'shellcmdflag' to "-ic". For Win32 also see |:!start|. + + After the command has been executed, the timestamp of + the current file is checked |timestamp|. + Vim redraws the screen after the command is finished, because it may have printed any text. This requires a hit-enter prompt, so that you can read any messages. diff --git a/runtime/optwin.vim b/runtime/optwin.vim --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -1,7 +1,7 @@ " These commands create the option window. " " Maintainer: Bram Moolenaar -" Last Change: 2013 Jun 29 +" Last Change: 2014 Apr 01 " If there already is an option window, jump to that one. if bufwinnr("option-window") > 0