summaryrefslogtreecommitdiffstats
path: root/runtime
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-07-13 23:04:31 +0200
committerBram Moolenaar <Bram@vim.org>2019-07-13 23:04:31 +0200
commit396e829fa355ebc92a618ef18266a3fed71b7042 (patch)
tree68231deb6b5951890d363d2376364936a5ce5a88 /runtime
parentfa55cfc69d2b14761e2a8bd85bc1e0d82df770aa (diff)
Update runtime files
Diffstat (limited to 'runtime')
-rw-r--r--runtime/compiler/gcc.vim10
-rw-r--r--runtime/doc/change.txt8
-rw-r--r--runtime/doc/debugger.txt16
-rw-r--r--runtime/doc/mbyte.txt13
-rw-r--r--runtime/doc/options.txt10
-rw-r--r--runtime/doc/popup.txt96
-rw-r--r--runtime/doc/tags7
-rw-r--r--runtime/doc/todo.txt75
-rw-r--r--runtime/doc/usr_41.txt2
-rw-r--r--runtime/filetype.vim3
-rw-r--r--runtime/makemenu.vim1
-rw-r--r--runtime/pack/dist/opt/termdebug/plugin/termdebug.vim4
-rw-r--r--runtime/synmenu.vim85
-rw-r--r--runtime/syntax/json.vim24
-rw-r--r--runtime/syntax/vuejs.vim14
15 files changed, 204 insertions, 164 deletions
diff --git a/runtime/compiler/gcc.vim b/runtime/compiler/gcc.vim
index 1af568de57..30e5149f9f 100644
--- a/runtime/compiler/gcc.vim
+++ b/runtime/compiler/gcc.vim
@@ -2,6 +2,8 @@
" Compiler: GNU C Compiler
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2010-10-14
+" changed pattern for entering/leaving directories
+" by Daniel Hahler, 2019 Jul 12
" added line suggested by Anton Lindqvist 2016 Mar 31
if exists("current_compiler")
@@ -27,10 +29,10 @@ CompilerSet errorformat=
\%f:%l:\ %m,
\%f:\\(%*[^\\)]\\):\ %m,
\\"%f\"\\,\ line\ %l%*\\D%c%*[^\ ]\ %m,
- \%D%*\\a[%*\\d]:\ Entering\ directory\ [`']%f',
- \%X%*\\a[%*\\d]:\ Leaving\ directory\ [`']%f',
- \%D%*\\a:\ Entering\ directory\ [`']%f',
- \%X%*\\a:\ Leaving\ directory\ [`']%f',
+ \%D%*\\a[%*\\d]:\ Entering\ directory\ %*[`']%f',
+ \%X%*\\a[%*\\d]:\ Leaving\ directory\ %*[`']%f',
+ \%D%*\\a:\ Entering\ directory\ %*[`']%f',
+ \%X%*\\a:\ Leaving\ directory\ %*[`']%f',
\%DMaking\ %*\\a\ in\ %f
if exists('g:compiler_gcc_ignore_unmatched_lines')
diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt
index baecc923ca..4c87726aa8 100644
--- a/runtime/doc/change.txt
+++ b/runtime/doc/change.txt
@@ -1,4 +1,4 @@
-*change.txt* For Vim version 8.1. Last change: 2019 May 07
+*change.txt* For Vim version 8.1. Last change: 2019 Jul 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1179,9 +1179,9 @@ There are ten types of registers: *registers* *E354*
2. 10 numbered registers "0 to "9
3. The small delete register "-
4. 26 named registers "a to "z or "A to "Z
-5. three read-only registers ":, "., "%
-6. alternate buffer register "#
-7. the expression register "=
+5. Three read-only registers ":, "., "%
+6. Alternate buffer register "#
+7. The expression register "=
8. The selection and drop registers "*, "+ and "~
9. The black hole register "_
10. Last search pattern register "/
diff --git a/runtime/doc/debugger.txt b/runtime/doc/debugger.txt
index 772aac0c34..47369d6c1e 100644
--- a/runtime/doc/debugger.txt
+++ b/runtime/doc/debugger.txt
@@ -1,4 +1,4 @@
-*debugger.txt* For Vim version 8.1. Last change: 2019 May 12
+*debugger.txt* For Vim version 8.1. Last change: 2019 Jul 06
VIM REFERENCE MANUAL by Gordon Prieur
@@ -6,6 +6,10 @@
Debugger Support Features *debugger-support*
+These features are for integration with a debugger or an Integrated
+Programming Environment (IPE) or Integrated Development Environment (IDE).
+For the debugger running in a Vim terminal window see |terminal-debugger|.
+
1. Debugger Features |debugger-features|
2. Vim Compile Options |debugger-compilation|
3. Integrated Debuggers |debugger-integration|
@@ -14,9 +18,7 @@ Debugger Support Features *debugger-support*
==============================================================================
1. Debugger Features *debugger-features*
-The following features are available for an integration with a debugger or
-an Integrated Programming Environment (IPE) or Integrated Development
-Environment (IDE):
+The following features are available:
Alternate Command Input |alt-input|
Debug Signs |debug-signs|
@@ -90,6 +92,9 @@ However, the feature was implemented in as general a manner as possible and
could be used for displaying other information as well. The functionality is
limited though, for advanced popups see |popup-window|.
+Another way to use the balloon is with the 'balloonexpr' option. This is
+completely user definable.
+
The Balloon Evaluation has some settable parameters too. For Motif the font
list and colors can be set via X resources (XmNballoonEvalFontList,
XmNballoonEvalBackground, and XmNballoonEvalForeground).
@@ -106,9 +111,6 @@ The Balloon evaluation functions are also used to show a tooltip for the
toolbar. The 'ballooneval' option does not need to be set for this. But the
other settings apply.
-Another way to use the balloon is with the 'balloonexpr' option. This is
-completely user definable.
-
==============================================================================
2. Vim Compile Options *debugger-compilation*
diff --git a/runtime/doc/mbyte.txt b/runtime/doc/mbyte.txt
index 7b8c21f3ff..4ed01ac4de 100644
--- a/runtime/doc/mbyte.txt
+++ b/runtime/doc/mbyte.txt
@@ -1,4 +1,4 @@
-*mbyte.txt* For Vim version 8.1. Last change: 2019 Apr 28
+*mbyte.txt* For Vim version 8.1. Last change: 2019 Jul 04
VIM REFERENCE MANUAL by Bram Moolenaar et al.
@@ -943,11 +943,12 @@ To input multibyte characters on Windows, you can use an Input Method Editor
IME many many many times. Because IME with status on is hooking all of your
key inputs, you cannot input 'j', 'k', or almost all of keys to Vim directly.
-This |+multi_byte_ime| feature help this. It reduce times of switch status of
-IME manually. In normal mode, there are almost no need working IME, even
-editing multibyte text. So exiting insert mode with ESC, Vim memorize last
-status of IME and force turn off IME. When re-enter insert mode, Vim revert
-IME status to that memorized automatically.
+The |+multi_byte_ime| feature helps for this. It reduces the number of times
+the IME status has to be switched manually. In Normal mode, there is almost
+no need to use IME, even when editing multibyte text. So when exiting Insert
+mode, Vim memorizes the last status of IME and turns off IME. When
+re-entering Insert mode, Vim sets the IME status to that memorized status
+automatically.
This works on not only insert-normal mode, but also search-command input and
replace mode.
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index e6c9992303..ad50bfce3c 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt* For Vim version 8.1. Last change: 2019 Jun 27
+*options.txt* For Vim version 8.1. Last change: 2019 Jul 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1142,8 +1142,10 @@ A jump table for the options with a short description can be found at |Q_op|.
set bexpr=MyBalloonExpr()
set ballooneval
<
- Also see |balloon_show()|, can be used if the content of the balloon
- is to be fetched asynchronously.
+ Also see |balloon_show()|, it can be used if the content of the balloon
+ is to be fetched asynchronously. In that case evaluating
+ 'balloonexpr' should result in an empty string. If you get a balloon
+ with only "0" you probably didn't return anything from your function.
NOTE: The balloon is displayed only if the cursor is on a text
character. If the result of evaluating 'balloonexpr' is not empty,
@@ -1155,7 +1157,7 @@ A jump table for the options with a short description can be found at |Q_op|.
This option cannot be set in a modeline when 'modelineexpr' is off.
It is not allowed to change text or jump to another window while
- evaluating 'balloonexpr' |textlock|.
+ evaluating 'balloonexpr', see |textlock|.
To check whether line breaks in the balloon text work use this check: >
if has("balloon_multiline")
diff --git a/runtime/doc/popup.txt b/runtime/doc/popup.txt
index b0397a35e8..f74a7c228b 100644
--- a/runtime/doc/popup.txt
+++ b/runtime/doc/popup.txt
@@ -1,4 +1,4 @@
-*popup.txt* For Vim version 8.1. Last change: 2019 Jul 04
+*popup.txt* For Vim version 8.1. Last change: 2019 Jul 13
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -178,11 +178,11 @@ DETAILS *popup-function-details*
popup_atcursor({what}, {options}) *popup_atcursor()*
Show the {what} above the cursor, and close it when the cursor
moves. This works like: >
- call popup_create({what}, {
- \ 'pos': 'botleft',
- \ 'line': 'cursor-1',
- \ 'col': 'cursor',
- \ 'moved': 'WORD',
+ call popup_create({what}, *{
+ \ pos: 'botleft',
+ \ line: 'cursor-1',
+ \ col: 'cursor',
+ \ moved: 'WORD',
\ })
< Use {options} to change the properties.
@@ -191,11 +191,11 @@ popup_beval({what}, {options}) *popup_beval()*
Show the {what} above the position from 'ballooneval' and
close it when the mouse moves. This works like: >
let pos = screenpos(v:beval_winnr, v:beval_lnum, v:beval_col)
- call popup_create({what}, {
- \ 'pos': 'botleft',
- \ 'line': pos.row - 1,
- \ 'col': pos.col,
- \ 'mousemoved': 'WORD',
+ call popup_create({what}, *{
+ \ pos: 'botleft',
+ \ line: pos.row - 1,
+ \ col: pos.col,
+ \ mousemoved: 'WORD',
\ })
< Use {options} to change the properties.
See |popup_beval_example| for an example use.
@@ -240,18 +240,18 @@ popup_create({what}, {options}) *popup_create()*
popup_dialog({what}, {options}) *popup_dialog()*
Just like |popup_create()| but with these default options: >
- call popup_create({what}, {
- \ 'pos': 'center',
- \ 'zindex': 200,
- \ 'drag': 1,
- \ 'border': [],
- \ 'padding': [],
+ call popup_create({what}, *{
+ \ pos: 'center',
+ \ zindex: 200,
+ \ drag: 1,
+ \ border: [],
+ \ padding: [],
\})
< Use {options} to change the properties. E.g. add a 'filter'
option with value 'popup_filter_yesno'. Example: >
- call popup_create('do you want to quit (Yes/no)?', {
- \ 'filter': 'popup_filter_yesno',
- \ 'callback': 'QuitCallback',
+ call popup_create('do you want to quit (Yes/no)?', *{
+ \ filter: 'popup_filter_yesno',
+ \ callback: 'QuitCallback',
\ })
< By default the dialog can be dragged, so that text below it
@@ -356,14 +356,14 @@ popup_menu({what}, {options}) *popup_menu()*
items with cursorkeys, and close it an item is selected with
Space or Enter. {what} should have multiple lines to make this
useful. This works like: >
- call popup_create({what}, {
- \ 'pos': 'center',
- \ 'zindex': 200,
- \ 'drag': 1,
- \ 'wrap': 0,
- \ 'border': [],
- \ 'padding': [],
- \ 'filter': 'popup_filter_menu',
+ call popup_create({what}, *{
+ \ pos: 'center',
+ \ zindex: 200,
+ \ drag: 1,
+ \ wrap: 0,
+ \ border: [],
+ \ padding: [],
+ \ filter: 'popup_filter_menu',
\ })
< The current line is highlighted with a match using
"PopupSelected", or "PmenuSel" if that is not defined.
@@ -391,18 +391,18 @@ popup_move({id}, {options}) *popup_move()*
popup_notification({what}, {options}) *popup_notification()*
Show the {what} for 3 seconds at the top of the Vim window.
This works like: >
- call popup_create({what}, {
- \ 'line': 1,
- \ 'col': 10,
- \ 'minwidth': 20,
- \ 'time': 3000,
- \ 'tabpage': -1,
- \ 'zindex': 300,
- \ 'drag': 1,
- \ 'highlight': 'WarningMsg',
- \ 'border': [],
- \ 'close': 'click',
- \ 'padding': [0,1,0,1],
+ call popup_create({what}, *{
+ \ line: 1,
+ \ col: 10,
+ \ minwidth: 20,
+ \ time: 3000,
+ \ tabpage: -1,
+ \ zindex: 300,
+ \ drag: 1,
+ \ highlight: 'WarningMsg',
+ \ border: [],
+ \ close: 'click',
+ \ padding: [0,1,0,1],
\ })
< The PopupNotification highlight group is used instead of
WarningMsg if it is defined.
@@ -732,17 +732,17 @@ Prompt the user to press y/Y or n/N: >
endif
endfunc
- call popup_dialog('Continue? y/n', {
- \ 'filter': 'popup_filter_yesno',
- \ 'callback': 'MyDialogHandler',
+ call popup_dialog('Continue? y/n', *{
+ \ filter: 'popup_filter_yesno',
+ \ callback: 'MyDialogHandler',
\ })
<
*popup_menu-shortcut-example*
Extend popup_filter_menu() with shortcut keys: >
- call popup_menu(['Save', 'Cancel', 'Discard'], {
- \ 'filter': 'MyMenuFilter',
- \ 'callback': 'MyMenuHandler',
+ call popup_menu(['Save', 'Cancel', 'Discard'], *{
+ \ filter: 'MyMenuFilter',
+ \ callback: 'MyMenuHandler',
\ })
func MyMenuFilter(id, key)
@@ -781,7 +781,7 @@ Example for using a popup window for 'ballooneval': >
endif
call popup_close(s:winid)
endif
- let s:winid = popup_beval(v:beval_text, {'mousemoved': 'word'})
+ let s:winid = popup_beval(v:beval_text, *{mousemoved: 'word'})
let s:last_text = v:beval_text
return ''
endfunc
@@ -812,7 +812,7 @@ this example simulated with a timer callback: >
endfunc
func ShowPopup(id)
- let s:winid = popup_beval(s:balloonText, {'mousemoved': 'word'})
+ let s:winid = popup_beval(s:balloonText, *{mousemoved: 'word'})
endfunc
<
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 123c1de40f..25fd33240d 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -7468,6 +7468,7 @@ listener_add() eval.txt /*listener_add()*
listener_flush() eval.txt /*listener_flush()*
listener_remove() eval.txt /*listener_remove()*
lite.vim syntax.txt /*lite.vim*
+literal-Dict eval.txt /*literal-Dict*
literal-string eval.txt /*literal-string*
lnum-variable eval.txt /*lnum-variable*
load-plugins starting.txt /*load-plugins*
@@ -8241,6 +8242,8 @@ popup-window popup.txt /*popup-window*
popup-window-functions usr_41.txt /*popup-window-functions*
popup.txt popup.txt /*popup.txt*
popup_atcursor() popup.txt /*popup_atcursor()*
+popup_beval() popup.txt /*popup_beval()*
+popup_beval_example popup.txt /*popup_beval_example*
popup_clear() popup.txt /*popup_clear()*
popup_close() popup.txt /*popup_close()*
popup_create() popup.txt /*popup_create()*
@@ -8252,6 +8255,7 @@ popup_filter_yesno() popup.txt /*popup_filter_yesno()*
popup_getoptions() popup.txt /*popup_getoptions()*
popup_getpos() popup.txt /*popup_getpos()*
popup_hide() popup.txt /*popup_hide()*
+popup_locate() popup.txt /*popup_locate()*
popup_menu() popup.txt /*popup_menu()*
popup_menu-shortcut-example popup.txt /*popup_menu-shortcut-example*
popup_move() popup.txt /*popup_move()*
@@ -8590,6 +8594,7 @@ screenattr() eval.txt /*screenattr()*
screenchar() eval.txt /*screenchar()*
screenchars() eval.txt /*screenchars()*
screencol() eval.txt /*screencol()*
+screenpos() eval.txt /*screenpos()*
screenrow() eval.txt /*screenrow()*
screenstring() eval.txt /*screenstring()*
script usr_41.txt /*script*
@@ -8693,8 +8698,10 @@ sign_getdefined() eval.txt /*sign_getdefined()*
sign_getplaced() eval.txt /*sign_getplaced()*
sign_jump() eval.txt /*sign_jump()*
sign_place() eval.txt /*sign_place()*
+sign_placelist() eval.txt /*sign_placelist()*
sign_undefine() eval.txt /*sign_undefine()*
sign_unplace() eval.txt /*sign_unplace()*
+sign_unplacelist() eval.txt /*sign_unplacelist()*
signs sign.txt /*signs*
simple-change change.txt /*simple-change*
simplify() eval.txt /*simplify()*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index be712ae9e4..5ff226b5a3 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 8.1. Last change: 2019 Jul 04
+*todo.txt* For Vim version 8.1. Last change: 2019 Jul 13
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -38,33 +38,26 @@ browser use: https://github.com/vim/vim/issues/1234
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Ongoing work on text properties, see src/textprop.c
-
-Popup windows are being implemented, see |popup-window|.
-
Patch to fix session file when using multiple tabs. (Jason Franklin, 2019 May
20)
Also put :argadd commands at the start for all buffers, so that their order
remains equal? Then %argdel to clean it up. Do try this with 'hidden' set.
-Listener causes extra } to be inserted. (Paul Jolly, #4455)
+Shorten the command used in test Makefile. (Daniel Hahler, #4643)
Refactor: Move common things out of evalfunc.c, it's too big.
-
-Template string: review #4491
-
-Terminal test fails when vim is configured with some features. (Dominique,
-#4597)
+Move function specs out of eval.txt, it's too big.
Popup windows:
+- Default popup_menu padding: only left&right.
+- Add 'previewpopup': open preview in a popupwindow.
+ Values: dict options as a string? "line:20,maxwidth:60,maxheight:20"
- Implement flip option
-- Have a way to scroll to the bottom? (#4577)
+- Have a way to scroll to the bottom, e.g. set 'firstline' to -1? (#4577)
- Why does 'nrformats' leak from the popup window buffer???
+ Happens in Test_simple_popup() at the second screendump.
- Disable commands, feedkeys(), CTRL-W, etc. in a popup window.
Use ERROR_IF_POPUP_WINDOW for more commands.
-- Add 'balloonpopup': instead of showing text, let the callback open a popup
- window and return the window ID. The popup will then be closed when the
- mouse moves, except when it moves inside the popup.
- For the "moved" property also include mouse movement?
- Can the buffer be re-used if it was the last one, to avoid using up lots of
buffer numbers?
@@ -150,6 +143,11 @@ Terminal emulator window:
- When 'encoding' is not utf-8, or the job is using another encoding, setup
conversions.
+Error numbers available: E172, E221, E242, E249, E260, E274, E275, E276,
+E278, E279, E281, E290, E291, E292, E361, E362, E366, E396, E450, E451, E452,
+E453, E454, E460, E489, E491, E56, E57, E565, E569, E578, E610, E611, E653,
+E654, E693, E706, E856, E857, E860, E861, E863, E889, E900, E959
+
Sound: support on Mac? Or does libcanberra work there?
Patch to use forward slash for completion even when 'shellslash' is set.
@@ -157,6 +155,8 @@ Adds 'completepathslash'. (Yasuhiro Matsumoto, 2018 Nov 15, #3612)
Patch to add win_splitmove() function. (Andy Massimino, #4561)
+Resolve() works incorrectly under windows. (#4661)
+
Completion mixes results from the current buffer with tags and other files.
Happens when typing CTRL-N while still search for results. E.g., type "b_" in
terminal.c and then CTRL-N twice.
@@ -169,7 +169,7 @@ Ready to include now?
Adding "10" to 'spellsuggest' causes spell suggestions to become very slow.
(#4087)
-Patch to the code to get sign information. (Yegappan Lakshmanan, #4586)
+Patch for Template string: #4491 Not ready yet. New pull: #4634
":bnext" in a help buffer is supposed to go to the next help buffer, but it
goes to any buffer, and then :bnext skips help buffers, since they are
@@ -227,6 +227,25 @@ Patch for ambiguous width characters in libvterm on MS-Windows 10.
Problem with colors in terminal window. (Jason Franklin, 2019 May 12)
+Lifepillar: Updated/cleaned up color schemes:
+https://github.com/lifepillar/vim8-colorschemes.
+
+Include a few color schemes, based on popularity:
+http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
+http://vimawesome.com/?q=tag:color-scheme
+Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
+- monokai - Xia Crusoe (2017 Aug 4)
+- seoul256 - Christian Brabandt (2017 Aug 3)
+- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
+ Lifepillar, 2018 Jan 22, #2573)
+- janah - Marco Hinz (2017 Aug 4)
+- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
+Suggested by Hiroki Kokubun:
+- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
+- [hybrid](https://github.com/w0ng/vim-hybrid)
+Include solarized color scheme?, it does not support termguicolors.
+- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
+
Bug: "vipgw" does not put cursor back where it belongs. (Jason Franklin, 2019
Mar 5)
@@ -309,6 +328,10 @@ nvo-mode mapping works on Windows, not on Linux. (#3678)
Missing tests for:
- add_termcap_entry()
+Redo only remembers the last change. Could use "{count}g." to redo an older
+change. How does the user know which change? At least have a way to list
+them: ":repeats". Add to history, like search history and command line history.
+
When using exclusive selection and vi" that fails, cursor moves to the left.
Cursor should not move. (#4024)
@@ -791,22 +814,6 @@ Seems to happen when the selection is requested the second time, but before
clip_x11_convert_selection_cb() is invoked, thus in X library code.
Kazunobu Kuriyama is working on a proper fix. (2017 Jul 25)
-Include a few color schemes, based on popularity:
-http://www.vim.org/scripts/script_search_results.php?keywords=&script_type=color+scheme&order_by=rating&direction=descending&search=search
-http://vimawesome.com/?q=tag:color-scheme
-Use names that indicate their appearance (Christian Brabandt, 2017 Aug 3)
-- monokai - Xia Crusoe (2017 Aug 4)
-- seoul256 - Christian Brabandt (2017 Aug 3)
-- gruvbox - Christian Brabandt (2017 Aug 3) (simplified version from
- Lifepillar, 2018 Jan 22, #2573)
-- janah - Marco Hinz (2017 Aug 4)
-- apprentice - Romain Lafourcade (2017 Aug 6) remarks about help file #1964
-Suggested by Hiroki Kokubun:
-- [Iceberg](https://github.com/cocopon/iceberg.vim) (my one)
-- [hybrid](https://github.com/w0ng/vim-hybrid)
-Include solarized color scheme?, it does not support termguicolors.
-- Sanitized version of pablo (Lifepillar, 2017 Nov 21)
-
Problem with three-piece comment. (Michael Lee, 2017 May 11, #1696)
Creating a partial with an autoload function is confused about the "self"
@@ -1521,10 +1528,6 @@ Patch for building a 32bit Vim with 64bit MingW compiler.
Patch: On MS-Windows shellescape() may have to triple double quotes.
(Ingo Karkat, 2015 Jan 16)
-Redo only remembers the last change. Could use "{count}g." to redo an older
-change. How does the user know which change? At least have a way to list
-them: ":repeats".
-
Patch for glob(), adding slash to normal files. (Ingo Karkat, 2014 Dec 22)
When entering and leaving the preview window autocommands are triggered, but
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 0f677e44f9..9e290dd84a 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -1,4 +1,4 @@
-*usr_41.txt* For Vim version 8.1. Last change: 2019 Jul 04
+*usr_41.txt* For Vim version 8.1. Last change: 2019 Jul 06
VIM USER MANUAL - by Bram Moolenaar
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 36a5163279..80fa02196f 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -707,6 +707,9 @@ au BufNewFile,BufRead *.t.html setf tilde
" HTML (.shtml and .stm for server side)
au BufNewFile,BufRead *.html,*.htm,*.shtml,*.stm call dist#ft#FThtml()
+" Vue.js Single File Component
+au BufNewFile,BufRead *.vue setf vuejs
+
" HTML with Ruby - eRuby
au BufNewFile,BufRead *.erb,*.rhtml setf eruby
diff --git a/runtime/makemenu.vim b/runtime/makemenu.vim
index 3d76b4240e..7fb126977a 100644
--- a/runtime/makemenu.vim
+++ b/runtime/makemenu.vim
@@ -272,6 +272,7 @@ SynMenu HIJK.HTML.HTML\ with\ M4:htmlm4
SynMenu HIJK.HTML.HTML\ with\ Ruby\ (eRuby):eruby
SynMenu HIJK.HTML.Cheetah\ HTML\ template:htmlcheetah
SynMenu HIJK.HTML.Django\ HTML\ template:htmldjango
+SynMenu HIJK.HTML.Vue.js\ HTML\ template:vuejs
SynMenu HIJK.HTML.HTML/OS:htmlos
SynMenu HIJK.HTML.XHTML:xhtml
SynMenu HIJK.Host\.conf:hostconf
diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
index 8c4395c886..db44e69099 100644
--- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
+++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
@@ -838,12 +838,12 @@ endfunc
" if there is any.
func TermDebugBalloonExpr()
if v:beval_winid != s:sourcewin
- return
+ return ''
endif
if !s:stopped
" Only evaluate when stopped, otherwise setting a breakpoint using the
" mouse triggers a balloon.
- return
+ return ''
endif
let s:evalFromBalloonExpr = 1
let s:evalFromBalloonExprResult = ''
diff --git a/runtime/synmenu.vim b/runtime/synmenu.vim
index ec4c48b3da..e8c9933abf 100644
--- a/runtime/synmenu.vim
+++ b/runtime/synmenu.vim
@@ -252,48 +252,49 @@ an 50.50.220 &Syntax.HIJK.HTML.HTML\ with\ M4 :cal SetSyn("htmlm4")<CR>
an 50.50.230 &Syntax.HIJK.HTML.HTML\ with\ Ruby\ (eRuby) :cal SetSyn("eruby")<CR>
an 50.50.240 &Syntax.HIJK.HTML.Cheetah\ HTML\ template :cal SetSyn("htmlcheetah")<CR>
an 50.50.250 &Syntax.HIJK.HTML.Django\ HTML\ template :cal SetSyn("htmldjango")<CR>
-an 50.50.260 &Syntax.HIJK.HTML.HTML/OS :cal SetSyn("htmlos")<CR>
-an 50.50.270 &Syntax.HIJK.HTML.XHTML :cal SetSyn("xhtml")<CR>
-an 50.50.280 &Syntax.HIJK.Host\.conf :cal SetSyn("hostconf")<CR>
-an 50.50.290 &Syntax.HIJK.Hosts\ access :cal SetSyn("hostsaccess")<CR>
-an 50.50.300 &Syntax.HIJK.Hyper\ Builder :cal SetSyn("hb")<CR>
-an 50.50.320 &Syntax.HIJK.Icewm\ menu :cal SetSyn("icemenu")<CR>
-an 50.50.330 &Syntax.HIJK.Icon :cal SetSyn("icon")<CR>
-an 50.50.340 &Syntax.HIJK.IDL\Generic\ IDL :cal SetSyn("idl")<CR>
-an 50.50.350 &Syntax.HIJK.IDL\Microsoft\ IDL :cal SetSyn("msidl")<CR>
-an 50.50.360 &Syntax.HIJK.Indent\ profile :cal SetSyn("indent")<CR>
-an 50.50.370 &Syntax.HIJK.Inform :cal SetSyn("inform")<CR>
-an 50.50.380 &Syntax.HIJK.Informix\ 4GL :cal SetSyn("fgl")<CR>
-an 50.50.390 &Syntax.HIJK.Initng :cal SetSyn("initng")<CR>
-an 50.50.400 &Syntax.HIJK.Inittab :cal SetSyn("inittab")<CR>
-an 50.50.410 &Syntax.HIJK.Inno\ setup :cal SetSyn("iss")<CR>
-an 50.50.420 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ dat :cal SetSyn("upstreamdat")<CR>
-an 50.50.430 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ log :cal SetSyn("upstreamlog")<CR>
-an 50.50.440 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ rpt :cal SetSyn("upstreamrpt")<CR>
-an 50.50.450 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ Install\ log :cal SetSyn("upstreaminstalllog")<CR>
-an 50.50.460 &Syntax.HIJK.Innovation\ Data\ Processing.Usserver\ log :cal SetSyn("usserverlog")<CR>
-an 50.50.470 &Syntax.HIJK.Innovation\ Data\ Processing.USW2KAgt\ log :cal SetSyn("usw2kagtlog")<CR>
-an 50.50.480 &Syntax.HIJK.InstallShield\ script :cal SetSyn("ishd")<CR>
-an 50.50.490 &Syntax.HIJK.Interactive\ Data\ Lang :cal SetSyn("idlang")<CR>
-an 50.50.500 &Syntax.HIJK.IPfilter :cal SetSyn("ipfilter")<CR>
-an 50.50.520 &Syntax.HIJK.J :cal SetSyn("j")<CR>
-an 50.50.530 &Syntax.HIJK.JAL :cal SetSyn("jal")<CR>
-an 50.50.540 &Syntax.HIJK.JAM :cal SetSyn("jam")<CR>
-an 50.50.550 &Syntax.HIJK.Jargon :cal SetSyn("jargon")<CR>
-an 50.50.560 &Syntax.HIJK.Java.Java :cal SetSyn("java")<CR>
-an 50.50.570 &Syntax.HIJK.Java.JavaCC :cal SetSyn("javacc")<CR>
-an 50.50.580 &Syntax.HIJK.Java.Java\ Server\ Pages :cal SetSyn("jsp")<CR>
-an 50.50.590 &Syntax.HIJK.Java.Java\ Properties :cal SetSyn("jproperties")<CR>
-an 50.50.600 &Syntax.HIJK.JavaScript :cal SetSyn("javascript")<CR>
-an 50.50.610 &Syntax.HIJK.Jess :cal SetSyn("jess")<CR>
-an 50.50.620 &Syntax.HIJK.Jgraph :cal SetSyn("jgraph")<CR>
-an 50.50.630 &Syntax.HIJK.Jovial :cal SetSyn("jovial")<CR>
-an 50.50.640 &Syntax.HIJK.JSON :cal SetSyn("json")<CR>
-an 50.50.660 &Syntax.HIJK.Kconfig :cal SetSyn("kconfig")<CR>
-an 50.50.670 &Syntax.HIJK.KDE\ script :cal SetSyn("kscript")<CR>
-an 50.50.680 &Syntax.HIJK.Kimwitu++ :cal SetSyn("kwt")<CR>
-an 50.50.690 &Syntax.HIJK.Kivy :cal SetSyn("kivy")<CR>
-an 50.50.700 &Syntax.HIJK.KixTart :cal SetSyn("kix")<CR>
+an 50.50.260 &Syntax.HIJK.HTML.Vue.js\ HTML\ template :cal SetSyn("vuejs")<CR>
+an 50.50.270 &Syntax.HIJK.HTML.HTML/OS :cal SetSyn("htmlos")<CR>
+an 50.50.280 &Syntax.HIJK.HTML.XHTML :cal SetSyn("xhtml")<CR>
+an 50.50.290 &Syntax.HIJK.Host\.conf :cal SetSyn("hostconf")<CR>
+an 50.50.300 &Syntax.HIJK.Hosts\ access :cal SetSyn("hostsaccess")<CR>
+an 50.50.310 &Syntax.HIJK.Hyper\ Builder :cal SetSyn("hb")<CR>
+an 50.50.330 &Syntax.HIJK.Icewm\ menu :cal SetSyn("icemenu")<CR>
+an 50.50.340 &Syntax.HIJK.Icon :cal SetSyn("icon")<CR>
+an 50.50.350 &Syntax.HIJK.IDL\Generic\ IDL :cal SetSyn("idl")<CR>
+an 50.50.360 &Syntax.HIJK.IDL\Microsoft\ IDL :cal SetSyn("msidl")<CR>
+an 50.50.370 &Syntax.HIJK.Indent\ profile :cal SetSyn("indent")<CR>
+an 50.50.380 &Syntax.HIJK.Inform :cal SetSyn("inform")<CR>
+an 50.50.390 &Syntax.HIJK.Informix\ 4GL :cal SetSyn("fgl")<CR>
+an 50.50.400 &Syntax.HIJK.Initng :cal SetSyn("initng")<CR>
+an 50.50.410 &Syntax.HIJK.Inittab :cal SetSyn("inittab")<CR>
+an 50.50.420 &Syntax.HIJK.Inno\ setup :cal SetSyn("iss")<CR>
+an 50.50.430 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ dat :cal SetSyn("upstreamdat")<CR>
+an 50.50.440 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ log :cal SetSyn("upstreamlog")<CR>
+an 50.50.450 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ rpt :cal SetSyn("upstreamrpt")<CR>
+an 50.50.460 &Syntax.HIJK.Innovation\ Data\ Processing.Upstream\ Install\ log :cal SetSyn("upstreaminstalllog")<CR>
+an 50.50.470 &Syntax.HIJK.Innovation\ Data\ Processing.Usserver\ log :cal SetSyn("usserverlog")<CR>
+an 50.50.480 &Syntax.HIJK.Innovation\ Data\ Processing.USW2KAgt\ log :cal SetSyn("usw2kagtlog")<CR>
+an 50.50.490 &Syntax.HIJK.InstallShield\ script :cal SetSyn("ishd")<CR>
+an 50.50.500 &Syntax.HIJK.Interactive\ Data\ Lang :cal SetSyn("idlang")<CR>
+an 50.50.510 &Syntax.HIJK.IPfilter :cal SetSyn("ipfilter")<CR>
+an 50.50.530 &Syntax.HIJK.J :cal SetSyn("j")<CR>
+an 50.50.540 &Syntax.HIJK.JAL :cal SetSyn("jal")<CR>
+an 50.50.550 &Syntax.HIJK.JAM :cal SetSyn("jam")<CR>
+an 50.50.560 &Syntax.HIJK.Jargon :cal SetSyn("jargon")<CR>
+an 50.50.570 &Syntax.HIJK.Java.Java :cal SetSyn("java")<CR>
+an 50.50.580 &Syntax.HIJK.Java.JavaCC :cal SetSyn("javacc")<CR>
+an 50.50.590 &Syntax.HIJK.Java.Java\ Server\ Pages :cal SetSyn("jsp")<CR>
+an 50.50.600 &Syntax.HIJK.Java.Java\ Properties :cal SetSyn("jproperties")<CR>
+an 50.50.610 &Syntax.HIJK.JavaScript :cal SetSyn("javascript")<CR>
+an 50.50.620 &Syntax.HIJK.Jess :cal SetSyn("jess")<CR>
+an 50.50.630 &Syntax.HIJK.Jgraph :cal SetSyn("jgraph")<CR>
+an 50.50.640 &Syntax.HIJK.Jovial :cal SetSyn("jovial")<CR>
+an 50.50.650 &Syntax.HIJK.JSON :cal SetSyn("json")<CR>
+an 50.50.670 &Syntax.HIJK.Kconfig :cal SetSyn("kconfig")<CR>
+an 50.50.680 &Syntax.HIJK.KDE\ script :cal SetSyn("kscript")<CR>
+an 50.50.690 &Syntax.HIJK.Kimwitu++ :cal SetSyn("kwt")<CR>
+an 50.50.700 &Syntax.HIJK.Kivy :cal SetSyn("kivy")<CR>
+an 50.50.710 &Syntax.HIJK.KixTart :cal SetSyn("kix")<CR>
an 50.60.100 &Syntax.L.Lace :cal SetSyn("lace")<CR>
an 50.60.110 &Syntax.L.LamdaProlog :cal SetSyn("lprolog")<CR>
an 50.60.120 &Syntax.L.Latte :cal SetSyn("latte")<CR>
diff --git a/runtime/syntax/json.vim b/runtime/syntax/json.vim
index d80af84312..e3210a9702 100644
--- a/runtime/syntax/json.vim
+++ b/runtime/syntax/json.vim
@@ -1,7 +1,8 @@
" Vim syntax file
" Language: JSON
-" Maintainer: Eli Parra <eli@elzr.com>
-" Last Change: 2014 Aug 23
+" Maintainer: vacancy
+" Previous Maintainer: Eli Parra <eli@elzr.com>
+" Last Change: 2019 Jul 08
" Version: 0.12
if !exists("main_syntax")
@@ -16,8 +17,19 @@ syntax match jsonNoise /\%(:\|,\)/
" NOTE that for the concealing to work your conceallevel should be set to 2
+" Syntax: JSON Keywords
+" Separated into a match and region because a region by itself is always greedy
+syn match jsonKeywordMatch /"\([^"]\|\\\"\)\+"[[:blank:]\r\n]*\:/ contains=jsonKeyword
+if has('conceal')
+ syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ concealends contained
+else
+ syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ contained
+endif
+
" Syntax: Strings
" Separated into a match and region because a region by itself is always greedy
+" Needs to come after keywords or else a json encoded string will break the
+" syntax
syn match jsonStringMatch /"\([^"]\|\\\"\)\+"\ze[[:blank:]\r\n]*[,}\]]/ contains=jsonString
if has('conceal')
syn region jsonString oneline matchgroup=jsonQuote start=/"/ skip=/\\\\\|\\"/ end=/"/ concealends contains=jsonEscape contained
@@ -28,14 +40,6 @@ endif
" Syntax: JSON does not allow strings with single quotes, unlike JavaScript.
syn region jsonStringSQError oneline start=+'+ skip=+\\\\\|\\"+ end=+'+
-" Syntax: JSON Keywords
-" Separated into a match and region because a region by itself is always greedy
-syn match jsonKeywordMatch /"\([^"]\|\\\"\)\+"[[:blank:]\r\n]*\:/ contains=jsonKeyword
-if has('conceal')
- syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ concealends contained
-else
- syn region jsonKeyword matchgroup=jsonQuote start=/"/ end=/"\ze[[:blank:]\r\n]*\:/ contained
-endif
" Syntax: Escape sequences
syn match jsonEscape "\\["\\/bfnrt]" contained
diff --git a/runtime/syntax/vuejs.vim b/runtime/syntax/vuejs.vim
new file mode 100644
index 0000000000..bad0e26c42
--- /dev/null
+++ b/runtime/syntax/vuejs.vim
@@ -0,0 +1,14 @@
+" Vim syntax file
+" Language: Vue.js Single File Component
+" Maintainer: Ralph Giles <giles@thaumas.net>
+" URL: https://vuejs.org/v2/guide/single-file-components.html
+" Last Change: 2019 Jul 8
+
+" Quit if a syntax file was already loaded.
+if exists("b:current_syntax")
+ finish
+endif
+
+" We have a collection of html, css and javascript wrapped in
+" tags. The default HTML syntax highlight works well enough.
+runtime! syntax/html.vim