Skip to content

Commit f3b74dd

Browse files
committed
Merge remote-tracking branch 'vim/master'
2 parents 58bee89 + 5311c02 commit f3b74dd

47 files changed

Lines changed: 871 additions & 257 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Filelist

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ SRC_ALL = \
8787
src/testdir/README.txt \
8888
src/testdir/*.in \
8989
src/testdir/sautest/autoload/*.vim \
90+
src/testdir/runtest.vim \
9091
src/testdir/test[0-9]*.ok \
9192
src/testdir/test[0-9]*a.ok \
9293
src/testdir/test_[a-z]*.ok \

runtime/doc/eval.txt

Lines changed: 45 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*eval.txt* For Vim version 7.4. Last change: 2015 Sep 19
1+
*eval.txt* For Vim version 7.4. Last change: 2015 Nov 30
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1379,6 +1379,15 @@ v:errmsg Last given error message. It's allowed to set this variable.
13791379
: ... handle error
13801380
< "errmsg" also works, for backwards compatibility.
13811381

1382+
*v:errors* *errors-variable*
1383+
v:errors Errors found by assert functions, such as |assert_true()|.
1384+
This is a list of strings.
1385+
The assert functions append an item when an assert fails.
1386+
To remove old results make it empty: >
1387+
:let v:errors = []
1388+
< If v:errors is set to anything but a list it is made an empty
1389+
list by the assert function.
1390+
13821391
*v:exception* *exception-variable*
13831392
v:exception The value of the exception most recently caught and not
13841393
finished. See also |v:throwpoint| and |throw-variables|.
@@ -1733,10 +1742,13 @@ append( {lnum}, {string}) Number append {string} below line {lnum}
17331742
append( {lnum}, {list}) Number append lines {list} below line {lnum}
17341743
argc() Number number of files in the argument list
17351744
argidx() Number current index in the argument list
1736-
arglistid( [{winnr}, [ {tabnr}]])
1745+
arglistid( [{winnr} [, {tabnr}]])
17371746
Number argument list id
17381747
argv( {nr}) String {nr} entry of the argument list
17391748
argv( ) List the argument list
1749+
assert_equal( {exp}, {act} [, {msg}]) none assert that {exp} equals {act}
1750+
assert_false( {actual} [, {msg}]) none assert that {actual} is false
1751+
assert_true( {actual} [, {msg}]) none assert that {actual} is true
17401752
asin( {expr}) Float arc sine of {expr}
17411753
atan( {expr}) Float arc tangent of {expr}
17421754
atan2( {expr}, {expr}) Float arc tangent of {expr1} / {expr2}
@@ -2154,6 +2166,37 @@ argv([{nr}]) The result is the {nr}th file in the argument list of the
21542166
< Without the {nr} argument a |List| with the whole |arglist| is
21552167
returned.
21562168

2169+
*assert_equal()*
2170+
assert_equal({expected}, {actual}, [, {msg}])
2171+
When {expected} and {actual} are not equal an error message is
2172+
added to |v:errors|.
2173+
There is no automatic conversion, the String "4" is different
2174+
from the Number 4. And the number 4 is different from the
2175+
Float 4.0. The value of 'ignorecase' is not used here, case
2176+
always matters.
2177+
When {msg} is omitted an error in the form "Expected
2178+
{expected} but got {actual}" is produced.
2179+
Example: >
2180+
assert_equal('foo', 'bar')
2181+
< Will result in a string to be added to |v:errors|:
2182+
test.vim line 12: Expected 'foo' but got 'bar' ~
2183+
2184+
assert_false({actual}, [, {msg}]) *assert_false()*
2185+
When {actual} is not false an error message is added to
2186+
|v:errors|, like with |assert_equal()|..
2187+
A value is false when it is zero. When "{actual}" is not a
2188+
number the assert fails.
2189+
When {msg} is omitted an error in the form "Expected False but
2190+
got {actual}" is produced.
2191+
2192+
assert_true({actual}, [, {msg}]) *assert_true()*
2193+
When {actual} is not true an error message is added to
2194+
|v:errors|, like with |assert_equal()|..
2195+
A value is true when it is a non-zeron number. When {actual}
2196+
is not a number the assert fails.
2197+
When {msg} is omitted an error in the form "Expected True but
2198+
got {actual}" is produced.
2199+
21572200
asin({expr}) *asin()*
21582201
Return the arc sine of {expr} measured in radians, as a |Float|
21592202
in the range of [-pi/2, pi/2].

runtime/doc/filetype.txt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*filetype.txt* For Vim version 7.4. Last change: 2013 Dec 15
1+
*filetype.txt* For Vim version 7.4. Last change: 2015 Nov 24
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -577,6 +577,10 @@ Global mapping:
577577
Local mappings:
578578
CTRL-] Jump to the manual page for the word under the cursor.
579579
CTRL-T Jump back to the previous manual page.
580+
q Same as ":quit"
581+
582+
To enable folding use this: >
583+
let g:ft_man_folding_enable = 1
580584
581585
582586
PDF *ft-pdf-plugin*

runtime/doc/fold.txt

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*fold.txt* For Vim version 7.4. Last change: 2013 Dec 04
1+
*fold.txt* For Vim version 7.4. Last change: 2015 Nov 24
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -97,9 +97,9 @@ These are the conditions with which the expression is evaluated:
9797
lowest.
9898
"=" use fold level from the previous line
9999
"a1", "a2", .. add one, two, .. to the fold level of the previous
100-
line
100+
line, use the result for the current line
101101
"s1", "s2", .. subtract one, two, .. from the fold level of the
102-
previous line
102+
previous line, use the result for the next line
103103
"<1", "<2", .. a fold with this level ends at this line
104104
">1", ">2", .. a fold with this level starts at this line
105105

@@ -122,6 +122,18 @@ method can be very slow!
122122
Try to avoid the "=", "a" and "s" return values, since Vim often has to search
123123
backwards for a line for which the fold level is defined. This can be slow.
124124

125+
An example of using "a1" and "s1": For a multi-line C comment, a line
126+
containing "/*" would return "a1" to start a fold, and a line containing "*/"
127+
would return "s1" to end the fold after that line: >
128+
if match(thisline, '/\*') >= 0
129+
return 'a1'
130+
elseif match(thisline, '\*/') >= 0
131+
return 's1'
132+
else
133+
return '='
134+
endif
135+
However, this won't work for single line comments, strings, etc.
136+
125137
|foldlevel()| can be useful to compute a fold level relative to a previous
126138
fold level. But note that foldlevel() may return -1 if the level is not known
127139
yet. And it returns the level at the start of the line, while a fold might

runtime/doc/hangulin.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*hangulin.txt* For Vim version 7.4. Last change: 2015 Nov 10
1+
*hangulin.txt* For Vim version 7.4. Last change: 2015 Nov 24
22

33

44
VIM REFERENCE MANUAL by Chi-Deok Hwang and Sung-Hyun Nam
@@ -34,7 +34,7 @@ If you set LC_ALL variable, it should be set to Korean locale also.
3434
VIM resource
3535
------------
3636
You may want to set 'encoding' and 'fileencodings'.
37-
Next are examples:
37+
Next are examples: >
3838
3939
:set encoding=euc-kr
4040
:set encoding=utf-8
@@ -54,7 +54,7 @@ If both are set, VIM_KEYBOARD has higher priority.
5454
Hangul Fonts
5555
------------
5656
If you use GTK version of GVIM, you should set 'guifont' and 'guifontwide'.
57-
For example:
57+
For example: >
5858
set guifont=Courier\ 12
5959
set guifontwide=NanumGothicCoding\ 12
6060

runtime/doc/options.txt

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*options.txt* For Vim version 7.4. Last change: 2015 Nov 11
1+
*options.txt* For Vim version 7.4. Last change: 2015 Nov 23
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -4218,7 +4218,7 @@ A jump table for the options with a short description can be found at |Q_op|.
42184218
global
42194219
Ignore case in search patterns. Also used when searching in the tags
42204220
file.
4221-
Also see 'smartcase'.
4221+
Also see 'smartcase' and 'tagcase'.
42224222
Can be overruled by using "\c" or "\C" in the pattern, see
42234223
|/ignorecase|.
42244224

@@ -7475,19 +7475,22 @@ A jump table for the options with a short description can be found at |Q_op|.
74757475
< [The whitespace before and after the '0' must be a single <Tab>]
74767476

74777477
When a binary search was done and no match was found in any of the
7478-
files listed in 'tags', and 'ignorecase' is set or a pattern is used
7478+
files listed in 'tags', and case is ignored or a pattern is used
74797479
instead of a normal tag name, a retry is done with a linear search.
74807480
Tags in unsorted tags files, and matches with different case will only
74817481
be found in the retry.
74827482

74837483
If a tag file indicates that it is case-fold sorted, the second,
7484-
linear search can be avoided for the 'ignorecase' case. Use a value
7485-
of '2' in the "!_TAG_FILE_SORTED" line for this. A tag file can be
7486-
case-fold sorted with the -f switch to "sort" in most unices, as in
7487-
the command: "sort -f -o tags tags". For "Exuberant ctags" version
7488-
5.x or higher (at least 5.5) the --sort=foldcase switch can be used
7489-
for this as well. Note that case must be folded to uppercase for this
7490-
to work.
7484+
linear search can be avoided when case is ignored. Use a value of '2'
7485+
in the "!_TAG_FILE_SORTED" line for this. A tag file can be case-fold
7486+
sorted with the -f switch to "sort" in most unices, as in the command:
7487+
"sort -f -o tags tags". For "Exuberant ctags" version 5.x or higher
7488+
(at least 5.5) the --sort=foldcase switch can be used for this as
7489+
well. Note that case must be folded to uppercase for this to work.
7490+
7491+
By default, tag searches are case-sensitive. Case is ignored when
7492+
'ignorecase' is set and 'tagcase' is "followic", or when 'tagcase' is
7493+
"ignore".
74917494

74927495
When 'tagbsearch' is off, tags searching is slower when a full match
74937496
exists, but faster when no full match exists. Tags in unsorted tags
@@ -7499,6 +7502,16 @@ A jump table for the options with a short description can be found at |Q_op|.
74997502
command-line completion and ":help").
75007503
{Vi: always uses binary search in some versions}
75017504

7505+
*'tagcase'* *'tc'*
7506+
'tagcase' 'tc' string (default "followic")
7507+
global or local to buffer |global-local|
7508+
{not in Vi}
7509+
This option specifies how case is handled when searching the tags
7510+
file:
7511+
followic Follow the 'ignorecase' option
7512+
ignore Ignore case
7513+
match Match case
7514+
75027515
*'taglength'* *'tl'*
75037516
'taglength' 'tl' number (default 0)
75047517
global
@@ -8212,9 +8225,9 @@ A jump table for the options with a short description can be found at |Q_op|.
82128225
% When included, save and restore the buffer list. If Vim is
82138226
started with a file name argument, the buffer list is not
82148227
restored. If Vim is started without a file name argument, the
8215-
buffer list is restored from the viminfo file. Buffers
8216-
without a file name and buffers for help files are not written
8217-
to the viminfo file.
8228+
buffer list is restored from the viminfo file. Quickfix
8229+
('buftype'), unlisted ('buflisted'), unnamed and buffers on
8230+
removable media (|viminfo-r|) are not saved.
82188231
When followed by a number, the number specifies the maximum
82198232
number of buffers that are stored. Without a number all
82208233
buffers are stored.

runtime/doc/quickref.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -909,6 +909,7 @@ Short explanation of each option: *option-list*
909909
'tabpagemax' 'tpm' maximum number of tab pages for |-p| and "tab all"
910910
'tabstop' 'ts' number of spaces that <Tab> in file uses
911911
'tagbsearch' 'tbs' use binary searching in tags files
912+
'tagcase' 'tc' how to handle case when searching in tags files
912913
'taglength' 'tl' number of significant characters for a tag
913914
'tagrelative' 'tr' file names in tag file are relative
914915
'tags' 'tag' list of file names used by the tag command

runtime/doc/tags

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1036,6 +1036,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
10361036
'tabstop' options.txt /*'tabstop'*
10371037
'tag' options.txt /*'tag'*
10381038
'tagbsearch' options.txt /*'tagbsearch'*
1039+
'tagcase' options.txt /*'tagcase'*
10391040
'taglength' options.txt /*'taglength'*
10401041
'tagrelative' options.txt /*'tagrelative'*
10411042
'tags' options.txt /*'tags'*
@@ -1046,6 +1047,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
10461047
'tbidi' options.txt /*'tbidi'*
10471048
'tbis' options.txt /*'tbis'*
10481049
'tbs' options.txt /*'tbs'*
1050+
'tc' options.txt /*'tc'*
10491051
'tenc' options.txt /*'tenc'*
10501052
'term' options.txt /*'term'*
10511053
'termbidi' options.txt /*'termbidi'*

runtime/doc/tagsrch.txt

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -85,11 +85,13 @@ changed, to avoid confusion when using ":tnext". It is changed when using
8585
":tag {ident}".
8686

8787
The ignore-case matches are not found for a ":tag" command when the
88-
'ignorecase' option is off. They are found when a pattern is used (starting
89-
with a "/") and for ":tselect", also when 'ignorecase' is off. Note that
90-
using ignore-case tag searching disables binary searching in the tags file,
91-
which causes a slowdown. This can be avoided by fold-case sorting the tag
92-
file. See the 'tagbsearch' option for an explanation.
88+
'ignorecase' option is off and 'tagcase' is "followic" or when 'tagcase' is
89+
"match". They are found when a pattern is used (starting with a "/") and for
90+
":tselect", also when 'ignorecase' is off and 'tagcase' is "followic" or when
91+
'tagcase' is "match". Note that using ignore-case tag searching disables
92+
binary searching in the tags file, which causes a slowdown. This can be
93+
avoided by fold-case sorting the tag file. See the 'tagbsearch' option for an
94+
explanation.
9395

9496
==============================================================================
9597
2. Tag stack *tag-stack* *tagstack* *E425*
@@ -440,12 +442,13 @@ file "tags". It can also be used to access a common tags file.
440442
The next file in the list is not used when:
441443
- A matching static tag for the current buffer has been found.
442444
- A matching global tag has been found.
443-
This also depends on the 'ignorecase' option. If it is off, and the tags file
444-
only has a match without matching case, the next tags file is searched for a
445-
match with matching case. If no tag with matching case is found, the first
446-
match without matching case is used. If 'ignorecase' is on, and a matching
447-
global tag with or without matching case is found, this one is used, no
448-
further tags files are searched.
445+
This also depends on whether case is ignored. Case is ignored when
446+
'ignorecase' is set and 'tagcase' is "followic", or when 'tagcase' is
447+
"ignore". If case is not ignored, and the tags file only has a match without
448+
matching case, the next tags file is searched for a match with matching case.
449+
If no tag with matching case is found, the first match without matching case
450+
is used. If case is ignored, and a matching global tag with or without
451+
matching case is found, this one is used, no further tags files are searched.
449452

450453
When a tag file name starts with "./", the '.' is replaced with the path of
451454
the current file. This makes it possible to use a tags file in the directory
@@ -579,8 +582,10 @@ that indicates if the file was sorted. When this line is found, Vim uses
579582
binary searching for the tags file:
580583
!_TAG_FILE_SORTED<Tab>1<Tab>{anything} ~
581584

582-
A tag file may be case-fold sorted to avoid a linear search when 'ignorecase'
583-
is on. See 'tagbsearch' for details. The value '2' should be used then:
585+
A tag file may be case-fold sorted to avoid a linear search when case is
586+
ignored. (Case is ignored when 'ignorecase' is set and 'tagcase' is
587+
"followic", or when 'tagcase' is "ignore".) See 'tagbsearch' for details.
588+
The value '2' should be used then:
584589
!_TAG_FILE_SORTED<Tab>2<Tab>{anything} ~
585590

586591
The other tag that Vim recognizes, but only when compiled with the

runtime/doc/term.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*term.txt* For Vim version 7.4. Last change: 2015 Jun 25
1+
*term.txt* For Vim version 7.4. Last change: 2015 Nov 24
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -852,7 +852,7 @@ Mouse clicks can be mapped. The codes for mouse clicks are:
852852

853853
The X1 and X2 buttons refer to the extra buttons found on some mice. The
854854
'Microsoft Explorer' mouse has these buttons available to the right thumb.
855-
Currently X1 and X2 only work on Win32 environments.
855+
Currently X1 and X2 only work on Win32 and X11 environments.
856856

857857
Examples: >
858858
:noremap <MiddleMouse> <LeftMouse><MiddleMouse>

0 commit comments

Comments
 (0)