Skip to content

Commit c66ee27

Browse files
committed
Merge remote-tracking branch 'vim/master'
2 parents 9443631 + 286eacd commit c66ee27

Some content is hidden

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

53 files changed

+1704
-679
lines changed

Filelist

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,6 @@ SRC_DOS = \
351351
src/xpm_w32.h \
352352
src/xxd/Make_bc3.mak \
353353
src/xxd/Make_bc5.mak \
354-
src/xxd/Make_cyg.mak \
355354
src/xxd/Make_djg.mak \
356355
src/xxd/Make_ming.mak \
357356
src/xxd/Make_mvc.mak \

Makefile

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,9 @@ MINOR = 4
131131
#
132132
# MS-Windows:
133133
# - Run make on Unix to update the ".mo" files.
134+
# - Get libintl-8.dll and libiconv-2.dll. E.g. from
135+
# https://mlocati.github.io/gettext-iconv-windows/ .
136+
# Put them in the top directory, "make dosrt" uses them.
134137
# - > make dossrc
135138
# > make dosrt
136139
# Unpack dist/vim##rt.zip and dist/vim##src.zip on an MS-Windows PC.
@@ -493,7 +496,8 @@ dosrt_files: dist prepare no_title.vim
493496
cp $$i dist/vim/$(VIMRTDIR)/lang/$$n/LC_MESSAGES/vim.mo; \
494497
fi \
495498
done
496-
cp libintl.dll dist/vim/$(VIMRTDIR)/
499+
cp libintl-8.dll dist/vim/$(VIMRTDIR)/
500+
cp libiconv-2.dll dist/vim/$(VIMRTDIR)/
497501

498502

499503
# Used before uploading. Don't delete the AAPDIR/sign files!

nsis/gvim.nsi

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,19 @@
66
# because uninstall deletes most files in $0.
77

88
# Location of gvim_ole.exe, vimw32.exe, GvimExt/*, etc.
9-
!define VIMSRC "..\src"
9+
!ifndef VIMSRC
10+
!define VIMSRC "..\src"
11+
!endif
1012

1113
# Location of runtime files
12-
!define VIMRT ".."
14+
!ifndef VIMRT
15+
!define VIMRT ".."
16+
!endif
1317

1418
# Location of extra tools: diff.exe
15-
!define VIMTOOLS ..\..
19+
!ifndef VIMTOOLS
20+
!define VIMTOOLS ..\..
21+
!endif
1622

1723
# Comment the next line if you don't have UPX.
1824
# Get it at http://upx.sourceforge.net
@@ -32,9 +38,10 @@
3238
Name "Vim ${VER_MAJOR}.${VER_MINOR}"
3339
OutFile gvim${VER_MAJOR}${VER_MINOR}.exe
3440
CRCCheck force
35-
SetCompressor lzma
41+
SetCompressor /SOLID lzma
3642
SetDatablockOptimize on
3743
RequestExecutionLevel highest
44+
XPStyle on
3845

3946
ComponentText "This will install Vim ${VER_MAJOR}.${VER_MINOR} on your computer."
4047
DirText "Choose a directory to install Vim (should contain 'vim')"
@@ -55,9 +62,6 @@ LicenseData ${VIMRT}\doc\uganda.nsis.txt
5562
!packhdr temp.dat "upx --best --compress-icons=1 temp.dat"
5663
!endif
5764

58-
SetCompressor /SOLID lzma
59-
XPStyle on
60-
6165
# This adds '\vim' to the user choice automagically. The actual value is
6266
# obtained below with ReadINIStr.
6367
InstallDir "$PROGRAMFILES\Vim"
@@ -355,7 +359,9 @@ SectionEnd
355359
File ${VIMRT}\keymap\README.txt
356360
File ${VIMRT}\keymap\*.vim
357361
SetOutPath $0
358-
File ${VIMRT}\libintl.dll
362+
File ${VIMRT}\libintl-8.dll
363+
File ${VIMRT}\libiconv-2.dll
364+
File /nonfatal ${VIMRT}\libwinpthread-1.dll
359365
SectionEnd
360366
!endif
361367

runtime/doc/eval.txt

Lines changed: 31 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*eval.txt* For Vim version 7.4. Last change: 2016 Jan 09
1+
*eval.txt* For Vim version 7.4. Last change: 2016 Jan 15
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1750,9 +1750,11 @@ arglistid( [{winnr} [, {tabnr}]])
17501750
Number argument list id
17511751
argv( {nr}) String {nr} entry of the argument list
17521752
argv( ) List the argument list
1753-
assert_equal( {exp}, {act} [, {msg}]) none assert that {exp} equals {act}
1754-
assert_false( {actual} [, {msg}]) none assert that {actual} is false
1755-
assert_true( {actual} [, {msg}]) none assert that {actual} is true
1753+
assert_equal( {exp}, {act} [, {msg}]) none assert {exp} equals {act}
1754+
assert_exception({error} [, {msg}]) none assert {error} is in v:exception
1755+
assert_fails( {cmd} [, {error}]) none assert {cmd} fails
1756+
assert_false( {actual} [, {msg}]) none assert {actual} is false
1757+
assert_true( {actual} [, {msg}]) none assert {actual} is true
17561758
asin( {expr}) Float arc sine of {expr}
17571759
atan( {expr}) Float arc tangent of {expr}
17581760
atan2( {expr}, {expr}) Float arc tangent of {expr1} / {expr2}
@@ -2179,7 +2181,7 @@ argv([{nr}]) The result is the {nr}th file in the argument list of the
21792181
returned.
21802182

21812183
*assert_equal()*
2182-
assert_equal({expected}, {actual}, [, {msg}])
2184+
assert_equal({expected}, {actual} [, {msg}])
21832185
When {expected} and {actual} are not equal an error message is
21842186
added to |v:errors|.
21852187
There is no automatic conversion, the String "4" is different
@@ -2193,18 +2195,36 @@ assert_equal({expected}, {actual}, [, {msg}])
21932195
< Will result in a string to be added to |v:errors|:
21942196
test.vim line 12: Expected 'foo' but got 'bar' ~
21952197

2196-
assert_false({actual}, [, {msg}]) *assert_false()*
2198+
assert_exception({error} [, {msg}]) *assert_exception()*
2199+
When v:exception does not contain the string {error} an error
2200+
message is added to |v:errors|.
2201+
This can be used to assert that a command throws an exception.
2202+
Using the error number, followed by a colon, avoids problems
2203+
with translations: >
2204+
try
2205+
commandthatfails
2206+
call assert_false(1, 'command should have failed')
2207+
catch
2208+
call assert_exception('E492:')
2209+
endtry
2210+
2211+
assert_fails({cmd} [, {error}]) *assert_fails()*
2212+
Run {cmd} and add an error message to |v:errors| if it does
2213+
NOT produce an error.
2214+
When {error} is given it must match |v:errmsg|.
2215+
2216+
assert_false({actual} [, {msg}]) *assert_false()*
21972217
When {actual} is not false an error message is added to
2198-
|v:errors|, like with |assert_equal()|..
2218+
|v:errors|, like with |assert_equal()|.
21992219
A value is false when it is zero. When "{actual}" is not a
22002220
number the assert fails.
22012221
When {msg} is omitted an error in the form "Expected False but
22022222
got {actual}" is produced.
22032223

2204-
assert_true({actual}, [, {msg}]) *assert_true()*
2224+
assert_true({actual} [, {msg}]) *assert_true()*
22052225
When {actual} is not true an error message is added to
2206-
|v:errors|, like with |assert_equal()|..
2207-
A value is true when it is a non-zeron number. When {actual}
2226+
|v:errors|, like with |assert_equal()|.
2227+
A value is true when it is a non-zero number. When {actual}
22082228
is not a number the assert fails.
22092229
When {msg} is omitted an error in the form "Expected True but
22102230
got {actual}" is produced.
@@ -3477,7 +3497,7 @@ getcmdwintype() *getcmdwintype()*
34773497
*getcurpos()*
34783498
getcurpos() Get the position of the cursor. This is like getpos('.'), but
34793499
includes an extra item in the list:
3480-
[bufnum, lnum, col, off, curswant]
3500+
[bufnum, lnum, col, off, curswant] ~
34813501
The "curswant" number is the preferred column when moving the
34823502
cursor vertically.
34833503
This can be used to save and restore the cursor position: >

runtime/doc/help.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*help.txt* For Vim version 7.4. Last change: 2016 Jan 09
1+
*help.txt* For Vim version 7.4. Last change: 2016 Jan 10
22

33
VIM - main help file
44
k
@@ -10,22 +10,22 @@ Close this window: Use ":q<Enter>".
1010
Jump to a subject: Position the cursor on a tag (e.g. |bars|) and hit CTRL-].
1111
With the mouse: ":set mouse=a" to enable the mouse (in xterm or GUI).
1212
Double-click the left mouse button on a tag, e.g. |bars|.
13-
Jump back: Type CTRL-T or CTRL-O (repeat to go further back).
13+
Jump back: Type CTRL-T or CTRL-O. Repeat to go further back.
1414

1515
Get specific help: It is possible to go directly to whatever you want help
1616
on, by giving an argument to the |:help| command.
17-
It is possible to further specify the context:
18-
*help-context*
17+
Prepend something to specify the context: *help-context*
18+
1919
WHAT PREPEND EXAMPLE ~
20-
Normal mode command (nothing) :help x
20+
Normal mode command :help x
2121
Visual mode command v_ :help v_u
2222
Insert mode command i_ :help i_<Esc>
2323
Command-line command : :help :quit
2424
Command-line editing c_ :help c_<Del>
2525
Vim command argument - :help -r
2626
Option ' :help 'textwidth'
2727
Regular expression / :help /[
28-
Also see |help-summary| for a verbose explanation.
28+
See |help-summary| for more contexts and an explanation.
2929

3030
Search for help: Type ":help word", then hit CTRL-D to see matching
3131
help entries for "word".

runtime/doc/if_mzsch.txt

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ The MzScheme Interface to Vim *mzscheme* *MzScheme*
1313
5. mzeval() Vim function |mzscheme-mzeval|
1414
6. Using Function references |mzscheme-funcref|
1515
7. Dynamic loading |mzscheme-dynamic|
16+
8. MzScheme setup |mzscheme-setup|
1617

1718
{Vi does not have any of these commands}
1819

@@ -272,6 +273,9 @@ output then includes |+mzscheme/dyn|.
272273
This means that Vim will search for the MzScheme DLL files only when needed.
273274
When you don't use the MzScheme interface you don't need them, thus you can
274275
use Vim without these DLL files.
276+
NOTE: Newer version of MzScheme (Racket) require earlier (trampolined)
277+
initialisation via scheme_main_setup. So Vim always loads the MzScheme DLL at
278+
startup if possible.
275279

276280
To use the MzScheme interface the MzScheme DLLs must be in your search path.
277281
In a console window type "path" to see what directories are used.
@@ -282,5 +286,24 @@ For MzScheme version 209 they will be "libmzsch209_000.dll" and
282286
command, look for -DDYNAMIC_MZSCH_DLL="something" and
283287
-DDYNAMIC_MZGC_DLL="something" in the "Compilation" info.
284288

289+
For example, if MzScheme (Racket) is installed at C:\Racket63, you may need
290+
to set the environment variable as the following: >
291+
292+
PATH=%PATH%;C:\Racket63\lib
293+
PLTCOLLECTS=C:\Racket63\collects
294+
PLTCONFIGDIR=C:\Racket63\etc
295+
<
296+
==============================================================================
297+
8. MzScheme setup *mzscheme-setup*
298+
299+
Vim requires "racket/base" module for if_mzsch core (fallback to "scheme/base"
300+
if it doesn't exist), "r5rs" module for test and "raco ctool" command for
301+
building Vim. If MzScheme did not have them, you can install them with
302+
MzScheme's raco command:
303+
>
304+
raco pkg install scheme-lib # scheme/base module
305+
raco pkg install r5rs-lib # r5rs module
306+
raco pkg install cext-lib # raco ctool command
307+
<
285308
======================================================================
286309
vim:tw=78:ts=8:sts=4:ft=help:norl:

runtime/doc/map.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*map.txt* For Vim version 7.4. Last change: 2014 Dec 08
1+
*map.txt* For Vim version 7.4. Last change: 2016 Jan 10
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -483,7 +483,7 @@ internal code is written to the script file.
483483

484484

485485
1.6 SPECIAL CHARACTERS *:map-special-chars*
486-
*map_backslash*
486+
*map_backslash* *map-backslash*
487487
Note that only CTRL-V is mentioned here as a special character for mappings
488488
and abbreviations. When 'cpoptions' does not contain 'B', a backslash can
489489
also be used like CTRL-V. The <> notation can be fully used then |<>|. But
@@ -494,21 +494,21 @@ To map a backslash, or use a backslash literally in the {rhs}, the special
494494
sequence "<Bslash>" can be used. This avoids the need to double backslashes
495495
when using nested mappings.
496496

497-
*map_CTRL-C*
497+
*map_CTRL-C* *map-CTRL-C*
498498
Using CTRL-C in the {lhs} is possible, but it will only work when Vim is
499499
waiting for a key, not when Vim is busy with something. When Vim is busy
500500
CTRL-C interrupts/breaks the command.
501501
When using the GUI version on MS-Windows CTRL-C can be mapped to allow a Copy
502502
command to the clipboard. Use CTRL-Break to interrupt Vim.
503503

504-
*map_space_in_lhs*
504+
*map_space_in_lhs* *map-space_in_lhs*
505505
To include a space in {lhs} precede it with a CTRL-V (type two CTRL-Vs for
506506
each space).
507-
*map_space_in_rhs*
507+
*map_space_in_rhs* *map-space_in_rhs*
508508
If you want a {rhs} that starts with a space, use "<Space>". To be fully Vi
509509
compatible (but unreadable) don't use the |<>| notation, precede {rhs} with a
510510
single CTRL-V (you have to type CTRL-V two times).
511-
*map_empty_rhs*
511+
*map_empty_rhs* *map-empty-rhs*
512512
You can create an empty {rhs} by typing nothing after a single CTRL-V (you
513513
have to type CTRL-V two times). Unfortunately, you cannot do this in a vimrc
514514
file.
@@ -583,7 +583,7 @@ Upper and lowercase differences are ignored.
583583
It is not possible to put a comment after these commands, because the '"'
584584
character is considered to be part of the {lhs} or {rhs}.
585585

586-
*map_bar*
586+
*map_bar* *map-bar*
587587
Since the '|' character is used to separate a map command from the next
588588
command, you will have to do something special to include a '|' in {rhs}.
589589
There are three methods:
@@ -601,7 +601,7 @@ When 'b' is present in 'cpoptions', "\|" will be recognized as a mapping
601601
ending in a '\' and then another command. This is Vi compatible, but
602602
illogical when compared to other commands.
603603

604-
*map_return*
604+
*map_return* *map-return*
605605
When you have a mapping that contains an Ex command, you need to put a line
606606
terminator after it to have it executed. The use of <CR> is recommended for
607607
this (see |<>|). Example: >

runtime/doc/repeat.txt

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*repeat.txt* For Vim version 7.4. Last change: 2015 Apr 13
1+
*repeat.txt* For Vim version 7.4. Last change: 2016 Jan 16
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -483,16 +483,44 @@ Additionally, these commands can be used:
483483
finish Finish the current script or user function and come
484484
back to debug mode for the command after the one that
485485
sourced or called it.
486+
*>bt*
487+
*>backtrace*
488+
*>where*
489+
backtrace Show the call stacktrace for current debugging session.
490+
bt
491+
where
492+
*>frame*
493+
frame N Goes to N bactrace level. + and - signs make movement
494+
relative. E.g., ":frame +3" goes three frames up.
495+
*>up*
496+
up Goes one level up from call stacktrace.
497+
*>down*
498+
down Goes one level down from call stacktrace.
486499

487500
About the additional commands in debug mode:
488501
- There is no command-line completion for them, you get the completion for the
489502
normal Ex commands only.
490-
- You can shorten them, up to a single character: "c", "n", "s" and "f".
503+
- You can shorten them, up to a single character, unless more then one command
504+
starts with the same letter. "f" stands for "finish", use "fr" for "frame".
491505
- Hitting <CR> will repeat the previous one. When doing another command, this
492506
is reset (because it's not clear what you want to repeat).
493507
- When you want to use the Ex command with the same name, prepend a colon:
494508
":cont", ":next", ":finish" (or shorter).
495509

510+
The backtrace shows the hierarchy of function calls, e.g.:
511+
>bt ~
512+
3 function One[3] ~
513+
2 Two[3] ~
514+
->1 Three[3] ~
515+
0 Four ~
516+
line 1: let four = 4 ~
517+
518+
The "->" points to the current frame. Use "up", "down" and "frame N" to
519+
select another frame.
520+
521+
In the current frame you can evaluate the local function variables. There is
522+
no way to see the command at the current line yet.
523+
496524

497525
DEFINING BREAKPOINTS
498526
*:breaka* *:breakadd*

runtime/doc/tags

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4955,6 +4955,8 @@ asm.vim syntax.txt /*asm.vim*
49554955
asm68k syntax.txt /*asm68k*
49564956
asmh8300.vim syntax.txt /*asmh8300.vim*
49574957
assert_equal() eval.txt /*assert_equal()*
4958+
assert_exception() eval.txt /*assert_exception()*
4959+
assert_fails() eval.txt /*assert_fails()*
49584960
assert_false() eval.txt /*assert_false()*
49594961
assert_true() eval.txt /*assert_true()*
49604962
at motion.txt /*at*
@@ -7014,9 +7016,13 @@ man.vim filetype.txt /*man.vim*
70147016
manual-copyright usr_01.txt /*manual-copyright*
70157017
map() eval.txt /*map()*
70167018
map-<SID> map.txt /*map-<SID>*
7019+
map-CTRL-C map.txt /*map-CTRL-C*
70177020
map-ambiguous map.txt /*map-ambiguous*
7021+
map-backslash map.txt /*map-backslash*
70187022
map-backtick tips.txt /*map-backtick*
7023+
map-bar map.txt /*map-bar*
70197024
map-comments map.txt /*map-comments*
7025+
map-empty-rhs map.txt /*map-empty-rhs*
70207026
map-error map.txt /*map-error*
70217027
map-examples map.txt /*map-examples*
70227028
map-keys-fails map.txt /*map-keys-fails*
@@ -7025,7 +7031,10 @@ map-modes map.txt /*map-modes*
70257031
map-multibyte map.txt /*map-multibyte*
70267032
map-overview map.txt /*map-overview*
70277033
map-precedence map.txt /*map-precedence*
7034+
map-return map.txt /*map-return*
70287035
map-self-destroy tips.txt /*map-self-destroy*
7036+
map-space_in_lhs map.txt /*map-space_in_lhs*
7037+
map-space_in_rhs map.txt /*map-space_in_rhs*
70297038
map-typing map.txt /*map-typing*
70307039
map-which-keys map.txt /*map-which-keys*
70317040
map.txt map.txt /*map.txt*

0 commit comments

Comments
 (0)