Updated runtime files.
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 01a59bf..bcc7fa3 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 7.3. Last change: 2011 May 17
+*eval.txt* For Vim version 7.3. Last change: 2011 Jun 19
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -721,7 +721,8 @@
*expr-<#* *expr-<=#* *expr-=~#* *expr-!~#*
*expr-==?* *expr-!=?* *expr->?* *expr->=?*
*expr-<?* *expr-<=?* *expr-=~?* *expr-!~?*
- *expr-is*
+ *expr-is* *expr-isnot* *expr-is#* *expr-isnot#*
+ *expr-is?* *expr-isnot?*
use 'ignorecase' match case ignore case ~
equal == ==# ==?
not equal != !=# !=?
@@ -731,8 +732,8 @@
smaller than or equal <= <=# <=?
regexp matches =~ =~# =~?
regexp doesn't match !~ !~# !~?
-same instance is
-different instance isnot
+same instance is is# is?
+different instance isnot isnot# isnot?
Examples:
"abc" ==# "Abc" evaluates to 0
@@ -753,12 +754,14 @@
A |Funcref| can only be compared with a |Funcref| and only "equal" and "not
equal" can be used. Case is never ignored.
-When using "is" or "isnot" with a |List| this checks if the expressions are
-referring to the same |List| instance. A copy of a |List| is different from
-the original |List|. When using "is" without a |List| it is equivalent to
-using "equal", using "isnot" equivalent to using "not equal". Except that a
-different type means the values are different. "4 == '4'" is true, "4 is '4'"
-is false.
+When using "is" or "isnot" with a |List| or a |Dictionary| this checks if the
+expressions are referring to the same |List| or |Dictionary| instance. A copy
+of a |List| is different from the original |List|. When using "is" without
+a |List| or a |Dictionary| it is equivalent to using "equal", using "isnot"
+equivalent to using "not equal". Except that a different type means the
+values are different: "4 == '4'" is true, "4 is '4'" is false and "0 is []" is
+false and not a error. "is#"/"isnot#" and "is?"/"isnot?" can be used to match
+and ignore case.
When comparing a String with a Number, the String is converted to a Number,
and the comparison is done on Numbers. This means that "0 == 'x'" is TRUE,
@@ -1293,7 +1296,7 @@
*v:char* *char-variable*
v:char Argument for evaluating 'formatexpr' and used for the typed
character when using <expr> in an abbreviation |:map-<expr>|.
- It is also used by the |InsertPreChar| event.
+ It is also used by the |InsertCharPre| event.
*v:charconvert_from* *charconvert_from-variable*
v:charconvert_from
@@ -1943,7 +1946,7 @@
Number last index of {needle} in {haystack}
strtrans( {expr}) String translate string to make it printable
strwidth( {expr}) Number display cell length of the String {expr}
-submatch( {nr}) String specific match in ":substitute"
+submatch( {nr}) String specific match in ":s" or substitute()
substitute( {expr}, {pat}, {sub}, {flags})
String all {pat} in {expr} replaced with {sub}
synID( {lnum}, {col}, {trans}) Number syntax ID at {lnum} and {col}
@@ -5557,9 +5560,11 @@
Also see |strlen()|, |strdisplaywidth()| and |strchars()|.
submatch({nr}) *submatch()*
- Only for an expression in a |:substitute| command. Returns
- the {nr}'th submatch of the matched text. When {nr} is 0
- the whole matched text is returned.
+ Only for an expression in a |:substitute| command or
+ substitute() function.
+ Returns the {nr}'th submatch of the matched text. When {nr}
+ is 0 the whole matched text is returned.
+ Also see |sub-replace-expression|.
Example: >
:s/\d\+/\=submatch(0) + 1/
< This finds the first number in the line and adds one to it.
@@ -5567,27 +5572,32 @@
substitute({expr}, {pat}, {sub}, {flags}) *substitute()*
The result is a String, which is a copy of {expr}, in which
- the first match of {pat} is replaced with {sub}. This works
- like the ":substitute" command (without any flags). But the
- matching with {pat} is always done like the 'magic' option is
- set and 'cpoptions' is empty (to make scripts portable).
- 'ignorecase' is still relevant. 'smartcase' is not used.
- See |string-match| for how {pat} is used.
- And a "~" in {sub} is not replaced with the previous {sub}.
+ the first match of {pat} is replaced with {sub}.
+ When {flags} is "g", all matches of {pat} in {expr} are
+ replaced. Otherwise {flags} should be "".
+
+ This works like the ":substitute" command (without any flags).
+ But the matching with {pat} is always done like the 'magic'
+ option is set and 'cpoptions' is empty (to make scripts
+ portable). 'ignorecase' is still relevant. 'smartcase' is
+ not used. See |string-match| for how {pat} is used.
+
+ A "~" in {sub} is not replaced with the previous {sub}.
Note that some codes in {sub} have a special meaning
|sub-replace-special|. For example, to replace something with
"\n" (two characters), use "\\\\n" or '\\n'.
+
When {pat} does not match in {expr}, {expr} is returned
unmodified.
- When {flags} is "g", all matches of {pat} in {expr} are
- replaced. Otherwise {flags} should be "".
+
Example: >
:let &path = substitute(&path, ",\\=[^,]*$", "", "")
< This removes the last component of the 'path' option. >
:echo substitute("testing", ".*", "\\U\\0", "")
< results in "TESTING".
- The {sub} argument can start with \=, just like with
- |:substitute|. Example: >
+
+ When {sub} starts with "\=", the remainder is interpreted as
+ an expression. See |sub-replace-expression|. Example: >
:echo substitute(s, '%\(\x\x\)',
\ '\=nr2char("0x" . submatch(1))', 'g')
@@ -6226,7 +6236,6 @@
netbeans_intg Compiled with support for |netbeans|.
ole Compiled with OLE automation support for Win32.
os2 OS/2 version of Vim.
-osfiletype Compiled with support for osfiletypes |+osfiletype|
path_extra Compiled with up/downwards search in 'path' and 'tags'
perl Compiled with Perl interface.
persistent_undo Compiled with support for persistent undo history.