Skip to content

Commit 2c6414b

Browse files
committed
Merge remote-tracking branch 'vim/master'
2 parents a202ae7 + 396b7c7 commit 2c6414b

76 files changed

Lines changed: 1129 additions & 545 deletions

Some content is hidden

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

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
src/testdir/test42.in diff

Filelist

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
# source files for all source archives
55
SRC_ALL = \
66
.gitignore \
7+
.gitattributes \
78
.hgignore \
89
.lgtm.yml \
910
.travis.yml \

runtime/doc/insert.txt

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*insert.txt* For Vim version 8.1. Last change: 2019 Sep 27
1+
*insert.txt* For Vim version 8.1. Last change: 2019 Oct 20
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1138,6 +1138,27 @@ below the text, and the bottom of the menu otherwise.
11381138
After the info popup is created it can be found with |popup_findinfo()| and
11391139
properties can be changed with |popup_setoptions()|.
11401140

1141+
*complete-popuphidden*
1142+
If the information for the popup is obtained asynchronously, use "popuphidden"
1143+
in 'completeopt'. The info popup will then be initally hidden and
1144+
|popup_show()| must be called once it has been filled with the info. This can
1145+
be done with a |CompleteChanged| autocommand, something like this: >
1146+
set completeopt+=popuphidden
1147+
au CompleteChanged * call UpdateCompleteInfo()
1148+
func UpdateCompleteInfo()
1149+
" Cancel any pending info fetch
1150+
let item = v:event.completed_item
1151+
" Start fetching info for the item then call ShowCompleteInfo(info)
1152+
endfunc
1153+
func ShowCompleteInfo(info)
1154+
let id = popup_findinfo()
1155+
if id
1156+
call popup_settext(id, 'async info: ' .. a:info)
1157+
call popup_show(id)
1158+
endif
1159+
endfunc
1160+
1161+
< *complete-item-kind*
11411162
The "kind" item uses a single letter to indicate the kind of completion. This
11421163
may be used to show the completion differently (different color or icon).
11431164
Currently these types can be used:

runtime/doc/map.txt

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ manual.
2020
1.8 Examples |map-examples|
2121
1.9 Using mappings |map-typing|
2222
1.10 Mapping alt-keys |:map-alt-keys|
23-
1.11 Mapping an operator |:map-operator|
23+
1.11 Mapping in modifyOtherKeys mode |modifyOtherKeys|
24+
1.12 Mapping an operator |:map-operator|
2425
2. Abbreviations |abbreviations|
2526
3. Local mappings and functions |script-local|
2627
4. User-defined commands |user-commands|
@@ -777,6 +778,9 @@ In the GUI Vim handles the Alt key itself, thus mapping keys with ALT should
777778
always work. But in a terminal Vim gets a sequence of bytes and has to figure
778779
out whether ALT was pressed or not.
779780

781+
If the terminal supports the modifyOtherKeys mode and it has been enabled,
782+
then Vim can recognize more key combinations, see |modifyOtherKeys| below.
783+
780784
By default Vim assumes that pressing the ALT key sets the 8th bit of a typed
781785
character. Most decent terminals can work that way, such as xterm, aterm and
782786
rxvt. If your <A-k> mappings don't work it might be that the terminal is
@@ -814,7 +818,31 @@ on the terminal; that's a good last resource in case you want to send ESC when
814818
using other applications but not when inside Vim.
815819

816820

817-
1.11 MAPPING AN OPERATOR *:map-operator*
821+
1.11 MAPPING IN modifyOtherKeys mode *modifyOtherKeys*
822+
823+
Xterm and a few other terminals can be put in a mode where keys with modifiers
824+
are sent with a special escape code. Vim recognizes these codes and can then
825+
make a difference between CTRL-H and Backspace, even when Backspace sends the
826+
character 8. And many more special keys.
827+
828+
For xterm modifyOtherKeys is enabled in the builtin termcap entry. If this is
829+
not used you can enable modifyOtherKeys with these lines in your vimrc: >
830+
let &t_TI = "\<Esc>[>4;2m"
831+
let &t_TE = "\<Esc>[>4;m"
832+
833+
In case the modifyOtherKeys mode causes problems you can disable it: >
834+
let &t_TI = ""
835+
let &t_TE = ""
836+
It does not take effect immediately. To have this work without restarting Vim
837+
execute a shell command, e.g.: `!ls`
838+
839+
A known side effect effect is that in Insert mode the raw escape sequence is
840+
inserted after the CTRL-V key. This can be used to check whether
841+
modifyOtherKeys is enabled: In Insert mode type CTRL-V CTRL-V, if you get
842+
one byte then modifyOtherKeys is off, if you get <1b>27;5;118~ then it is on.
843+
844+
845+
1.12 MAPPING AN OPERATOR *:map-operator*
818846

819847
An operator is used before a {motion} command. To define your own operator
820848
you must create mapping that first sets the 'operatorfunc' option and then

runtime/doc/message.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -582,7 +582,8 @@ allowed for the command that was used.
582582
Vim was not able to create a swap file. You can still edit the file, but if
583583
Vim unexpectedly exits the changes will be lost. And Vim may consume a lot of
584584
memory when editing a big file. You may want to change the 'directory' option
585-
to avoid this error. See |swap-file|.
585+
to avoid this error. This error is not given when 'directory' is empty. See
586+
|swap-file|.
586587

587588
*E140* >
588589
Use ! to write partial buffer

runtime/doc/options.txt

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
*options.txt* For Vim version 8.1. Last change: 2019 Sep 28
1+
*options.txt* For Vim version 8.1. Last change: 2019 Oct 20
22

33

44
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1942,6 +1942,13 @@ A jump table for the options with a short description can be found at |Q_op|.
19421942
See |'completepopup'| for specifying properties.
19431943
{only works when compiled with the |+textprop| feature}
19441944

1945+
popuphidden
1946+
Just like "popup" but initially hide the popup. Use a
1947+
|CompleteChanged| autocommand to fetch the info and call
1948+
|popup_show()| once the popup has been filled.
1949+
See the example at |complete-popuphidden|.
1950+
{only works when compiled with the |+textprop| feature}
1951+
19451952
noinsert Do not insert any text for a match until the user selects
19461953
a match from the menu. Only works in combination with
19471954
"menu" or "menuone". No effect if "longest" is present.
@@ -2716,7 +2723,7 @@ A jump table for the options with a short description can be found at |Q_op|.
27162723
- The swap file will be created in the first directory where this is
27172724
possible.
27182725
- Empty means that no swap file will be used (recovery is
2719-
impossible!).
2726+
impossible!) and no |E303| error will be given.
27202727
- A directory "." means to put the swap file in the same directory as
27212728
the edited file. On Unix, a dot is prepended to the file name, so
27222729
it doesn't show in a directory listing. On MS-Windows the "hidden"

runtime/doc/popup.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -474,6 +474,8 @@ popup_notification({what}, {options}) *popup_notification()*
474474
popup_show({id}) *popup_show()*
475475
If {id} is a hidden popup, show it now.
476476
For {id} see `popup_hide()`.
477+
If {id} is the info popup it will be positioned next to the
478+
current popup menu item.
477479

478480

479481
popup_setoptions({id}, {options}) *popup_setoptions()*
@@ -680,8 +682,13 @@ The second argument of |popup_create()| is a dictionary with options:
680682
- "expr": if the cursor moved outside |<cexpr>|
681683
- [{start}, {end}]: if the cursor moved before column
682684
{start} or after {end}
685+
- [{lnum}, {start}, {end}]: if the cursor moved away
686+
from line {lnum}, before column {start} or after
687+
{end}
683688
The popup also closes if the cursor moves to another
684689
line or to another window.
690+
mousemoved Like "moved" but referring to the mouse pointer
691+
position
685692
cursorline non-zero: Highlight the cursor line. Also scrolls the
686693
text to show this line (only works properly
687694
when 'wrap' is off).

runtime/doc/terminal.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,7 @@ Command syntax ~
193193
Supported [options] are:
194194
++close The terminal window will close
195195
automatically when the job terminates.
196+
|terminal-close|
196197
++noclose The terminal window will NOT close
197198
automatically when the job terminates.
198199
++open When the job terminates and no window
@@ -267,6 +268,12 @@ hidden, the job keeps running. The `:buffer` command can be used to turn the
267268
current window into a terminal window. If there are unsaved changes this
268269
fails, use ! to force, as usual.
269270

271+
*terminal-close*
272+
When the terminal window is closed, e.g. when the shell exits and "++close"
273+
argument was used, and this is the last normal Vim window, then Vim will exit.
274+
This is like using |:quit| in a normal window. Help and preview windows are
275+
not counted.
276+
270277
To have a background job run without a window, and open the window when it's
271278
done, use options like this: >
272279
:term ++hidden ++open make

runtime/filetype.vim

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -425,6 +425,9 @@ au BufNewFile,BufRead *.csp,*.fdr setf csp
425425
au BufNewFile,BufRead *.pld setf cupl
426426
au BufNewFile,BufRead *.si setf cuplsim
427427

428+
" Dart
429+
au BufRead,BufNewfile *.dart,*.drt setf dart
430+
428431
" Debian Control
429432
au BufNewFile,BufRead */debian/control setf debcontrol
430433
au BufNewFile,BufRead control
@@ -979,6 +982,9 @@ au BufNewFile,BufRead hg-editor-*.txt setf hgcommit
979982
" Mercurial config (looks like generic config file)
980983
au BufNewFile,BufRead *.hgrc,*hgrc setf cfg
981984

985+
" Meson Build system config
986+
au BufNewFile,BufRead meson.build,meson_options.txt setf meson
987+
982988
" Messages (logs mostly)
983989
au BufNewFile,BufRead */log/{auth,cron,daemon,debug,kern,lpr,mail,messages,news/news,syslog,user}{,.log,.err,.info,.warn,.crit,.notice}{,.[0-9]*,-[0-9]*} setf messages
984990

src/Make_mvc.mak

Lines changed: 27 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1279,6 +1279,17 @@ MAIN_TARGET = $(GVIM).exe $(VIM).exe $(VIMDLLBASE).dll
12791279
MAIN_TARGET = $(VIM).exe
12801280
!endif
12811281

1282+
# Target to run individual tests.
1283+
VIMTESTTARGET = $(VIM).exe
1284+
1285+
OLD_TEST_OUTFILES = \
1286+
$(SCRIPTS_FIRST) \
1287+
$(SCRIPTS_ALL) \
1288+
$(SCRIPTS_MORE1) \
1289+
$(SCRIPTS_MORE4) \
1290+
$(SCRIPTS_WIN32) \
1291+
$(SCRIPTS_GUI)
1292+
12821293
all: $(MAIN_TARGET) \
12831294
vimrun.exe \
12841295
install.exe \
@@ -1370,7 +1381,7 @@ tags: notags
13701381
notags:
13711382
- if exist tags del tags
13721383

1373-
clean:
1384+
clean: testclean
13741385
- if exist $(OUTDIR)/nul $(DEL_TREE) $(OUTDIR)
13751386
- if exist *.obj del *.obj
13761387
- if exist $(VIM).exe del $(VIM).exe
@@ -1405,7 +1416,6 @@ clean:
14051416
cd GvimExt
14061417
$(MAKE) /NOLOGO -f Makefile clean
14071418
cd ..
1408-
- if exist testdir\*.out del testdir\*.out
14091419

14101420
test:
14111421
cd testdir
@@ -1422,13 +1432,24 @@ testclean:
14221432
$(MAKE) /NOLOGO -f Make_dos.mak clean
14231433
cd ..
14241434

1435+
# Run individual OLD style test.
1436+
# These do not depend on the executable, compile it when needed.
1437+
$(OLD_TEST_OUTFILES:.out=):
1438+
cd testdir
1439+
1440+
$(MAKE) /NOLOGO -f Make_dos.mak VIMPROG=..\$(VIMTESTTARGET) nolog
1441+
$(MAKE) /NOLOGO -f Make_dos.mak VIMPROG=..\$(VIMTESTTARGET) [email protected]
1442+
@ if exist test.log ( type test.log & exit /b 1 )
1443+
cd ..
1444+
1445+
# Run individual NEW style test.
1446+
# These do not depend on the executable, compile it when needed.
14251447
$(NEW_TESTS):
14261448
cd testdir
14271449
- if exist $@.res del $@.res
1428-
$(MAKE) /NOLOGO -f Make_dos.mak nolog
1429-
$(MAKE) /NOLOGO -f Make_dos.mak $@.res
1430-
$(MAKE) /NOLOGO -f Make_dos.mak report
1431-
type messages
1450+
$(MAKE) /NOLOGO -f Make_dos.mak VIMPROG=..\$(VIMTESTTARGET) nolog
1451+
$(MAKE) /NOLOGO -f Make_dos.mak VIMPROG=..\$(VIMTESTTARGET) $@.res
1452+
$(MAKE) /NOLOGO -f Make_dos.mak VIMPROG=..\$(VIMTESTTARGET) report
14321453
cd ..
14331454

14341455
###########################################################################

0 commit comments

Comments
 (0)