# HG changeset patch # User Bram Moolenaar # Date 1567261804 -7200 # Node ID cc953757ed2a1058c83188343d03d73619c9e0ad # Parent d9ada976a4c0c6c82ec3fbdc583a25fc15eed3da Runtime files update. Commit: https://github.com/vim/vim/commit/06fe74aef72606ac34c9f494186e52614b8fb59a Author: Bram Moolenaar Date: Sat Aug 31 16:20:32 2019 +0200 Runtime files update. diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt --- a/runtime/doc/change.txt +++ b/runtime/doc/change.txt @@ -1,4 +1,4 @@ -*change.txt* For Vim version 8.1. Last change: 2019 Jul 04 +*change.txt* For Vim version 8.1. Last change: 2019 Aug 21 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 8.1. Last change: 2019 Aug 24 +*eval.txt* For Vim version 8.1. Last change: 2019 Aug 28 VIM REFERENCE MANUAL by Bram Moolenaar @@ -40,7 +40,7 @@ 1. Variables *variables* 1.1 Variable types ~ *E712* *E896* *E897* *E899* -There are nine types of variables: +There are ten types of variables: Number A 32 or 64 bit signed number. |expr-number| *Number* 64-bit Numbers are available only when compiled with the diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt --- a/runtime/doc/gui.txt +++ b/runtime/doc/gui.txt @@ -1,4 +1,4 @@ -*gui.txt* For Vim version 8.1. Last change: 2019 May 20 +*gui.txt* For Vim version 8.1. Last change: 2019 Aug 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1013,7 +1013,7 @@ it behaves in a strange way. have at least one subentry, but need not appear on the menu-bar (see |hidden-menus|). {only available for Win32 and GTK GUI or in - the terminal when compiled with +insert_expand} + the terminal} :popu[p]! {name} Like above, but use the position of the mouse pointer instead of the cursor. diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt --- a/runtime/doc/insert.txt +++ b/runtime/doc/insert.txt @@ -1,4 +1,4 @@ -*insert.txt* For Vim version 8.1. Last change: 2019 Aug 18 +*insert.txt* For Vim version 8.1. Last change: 2019 Aug 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1119,8 +1119,9 @@ three lines, but 'previewheight' is used *complete-popup* When "popup" is in 'completeopt' a popup window is used to display the "info". -Then the 'completepopup' option specifies the properties of the popup. The -option is a comma separated list of values: +Then the 'completepopup' option specifies the properties of the popup. This +is used when the info popup is created. The option is a comma separated list +of values: height maximum height of the popup width maximum width of the popup highlight highlight group of the popup (default is Pmenu) @@ -1129,11 +1130,14 @@ option is a comma separated list of valu Example: > :set completepopup=height:10,width:60,highlight:InfoPopup -When the "align" value is "item then the popup is positioned close to the +When the "align" value is "item" then the popup is positioned close to the selected item. Changing the selection will also move the popup. When "align" is "menu" then the popup is aligned with the top of the menu if the menu is below the text, and the bottom of the menu otherwise. +After the info popup is created it can be found with |popup_findinfo()| and +properties can be changed with |popup_setoptions()|. + The "kind" item uses a single letter to indicate the kind of completion. This may be used to show the completion differently (different color or icon). Currently these types can be used: diff --git a/runtime/doc/message.txt b/runtime/doc/message.txt --- a/runtime/doc/message.txt +++ b/runtime/doc/message.txt @@ -1,4 +1,4 @@ -*message.txt* For Vim version 8.1. Last change: 2019 May 18 +*message.txt* For Vim version 8.1. Last change: 2019 Aug 23 VIM REFERENCE MANUAL by Bram Moolenaar @@ -479,6 +479,9 @@ out-of-memory situation. First make sur try to solve the memory shortage. To stay on the safe side, exit Vim and start again. +If this happens while Vim is still initializing, editing files is very +unlikely to work, therefore Vim will exit with value 123. + Buffers are only partly kept in memory, thus editing a very large file is unlikely to cause an out-of-memory situation. Undo information is completely in memory, you can reduce that with these options: @@ -809,6 +812,8 @@ To reduce the number of hit-enter prompt - Set 'cmdheight' to 2 or higher. - Add flags to 'shortmess'. - Reset 'showcmd' and/or 'ruler'. +- Make sure `:echo` text is shorter than or equal to |v:echospace| screen + cells. If your script causes the hit-enter prompt and you don't know why, you may find the |v:scrollstart| variable useful. diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1934,7 +1934,9 @@ A jump table for the options with a shor {not available when compiled without the |+textprop| or |+quickfix| feature} When 'completeopt' contains "popup" then this option is used for the - properties of the info popup. See |complete-popup|. + properties of the info popup when it is created. You can also use + |popup_findinfo()| and then set properties for an existing info popup + with |popup_setoptions()|. See |complete-popup|. *'concealcursor'* *'cocu'* diff --git a/runtime/doc/popup.txt b/runtime/doc/popup.txt --- a/runtime/doc/popup.txt +++ b/runtime/doc/popup.txt @@ -1,4 +1,4 @@ -*popup.txt* For Vim version 8.1. Last change: 2019 Aug 03 +*popup.txt* For Vim version 8.1. Last change: 2019 Aug 31 VIM REFERENCE MANUAL by Bram Moolenaar @@ -125,7 +125,9 @@ is always associated with the popup wind It is possible to change the specifically mentioned options, but anything might break then, so better leave them alone. -The window does have a cursor position, but the cursor is not displayed. +The window does have a cursor position, but the cursor is not displayed. In +fact, the cursor in the underlying window is displayed, as if it peeks through +the popup, so you can see where it is. To execute a command in the context of the popup window and buffer use `win_execute()`. Example: > @@ -315,6 +317,10 @@ popup_getoptions({id}) *popup_getopt The "mousemoved" entry is a list with screen row, minimum and maximum screen column, [0, 0, 0] when not set. + "firstline" is the property set on the popup, unlike the + "firstline" obtained with |popup_getpos()| which is the actual + buffer line at the top of the popup window. + "border" and "padding" are not included when all values are zero. When all values are one then an empty list is included. @@ -344,6 +350,7 @@ popup_getpos({id}) *popup_getpos()* core_width width of the text box in screen cells core_height height of the text box in screen cells firstline line of the buffer at top (1 unless scrolled) + (not the value of the "firstline" property) scrollbar non-zero if a scrollbar is displayed visible one if the popup is displayed, zero if hidden Note that these are the actual screen positions. They differ @@ -559,6 +566,7 @@ The second argument of |popup_create()| firstline First buffer line to display. When larger than one it looks like the text scrolled up. When out of range the last buffer line will at the top of the window. + Set to zero to leave the position as set by commands. Also see "scrollbar". hidden When TRUE the popup exists but is not displayed; use `popup_show()` to unhide it. diff --git a/runtime/doc/tags b/runtime/doc/tags --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -150,6 +150,7 @@ 'complete' options.txt /*'complete'* 'completefunc' options.txt /*'completefunc'* 'completeopt' options.txt /*'completeopt'* +'completepopup' options.txt /*'completepopup'* 'completeslash' options.txt /*'completeslash'* 'concealcursor' options.txt /*'concealcursor'* 'conceallevel' options.txt /*'conceallevel'* @@ -161,6 +162,7 @@ 'cp' options.txt /*'cp'* 'cpo' options.txt /*'cpo'* 'cpoptions' options.txt /*'cpoptions'* +'cpp' options.txt /*'cpp'* 'cpt' options.txt /*'cpt'* 'crb' options.txt /*'crb'* 'cryptmethod' options.txt /*'cryptmethod'* @@ -5781,6 +5783,7 @@ compl-whole-line insert.txt /*compl-whol complete() eval.txt /*complete()* complete-functions insert.txt /*complete-functions* complete-items insert.txt /*complete-items* +complete-popup insert.txt /*complete-popup* complete_CTRL-E insert.txt /*complete_CTRL-E* complete_CTRL-Y insert.txt /*complete_CTRL-Y* complete_add() eval.txt /*complete_add()* @@ -6069,6 +6072,7 @@ dtd2vim insert.txt /*dtd2vim* dying-variable eval.txt /*dying-variable* e motion.txt /*e* easy starting.txt /*easy* +echospace-variable eval.txt /*echospace-variable* edit-a-file editing.txt /*edit-a-file* edit-binary editing.txt /*edit-binary* edit-dialogs editing.txt /*edit-dialogs* @@ -8262,6 +8266,7 @@ popup-menu-added version5.txt /*popup-me popup-position popup.txt /*popup-position* popup-props popup.txt /*popup-props* popup-scrollbar popup.txt /*popup-scrollbar* +popup-textprop-pos popup.txt /*popup-textprop-pos* popup-usage popup.txt /*popup-usage* popup-window popup.txt /*popup-window* popup-window-functions usr_41.txt /*popup-window-functions* @@ -8277,9 +8282,10 @@ popup_dialog() popup.txt /*popup_dialog( popup_dialog-example popup.txt /*popup_dialog-example* popup_filter_menu() popup.txt /*popup_filter_menu()* popup_filter_yesno() popup.txt /*popup_filter_yesno()* +popup_findinfo() popup.txt /*popup_findinfo()* +popup_findpreview() popup.txt /*popup_findpreview()* popup_getoptions() popup.txt /*popup_getoptions()* popup_getpos() popup.txt /*popup_getpos()* -popup_getpreview() popup.txt /*popup_getpreview()* popup_hide() popup.txt /*popup_hide()* popup_locate() popup.txt /*popup_locate()* popup_menu() popup.txt /*popup_menu()* @@ -9574,6 +9580,7 @@ v:count eval.txt /*v:count* v:count1 eval.txt /*v:count1* v:ctype eval.txt /*v:ctype* v:dying eval.txt /*v:dying* +v:echospace eval.txt /*v:echospace* v:errmsg eval.txt /*v:errmsg* v:errors eval.txt /*v:errors* v:event eval.txt /*v:event* diff --git a/runtime/doc/testing.txt b/runtime/doc/testing.txt --- a/runtime/doc/testing.txt +++ b/runtime/doc/testing.txt @@ -1,4 +1,4 @@ -*testing.txt* For Vim version 8.1. Last change: 2019 Aug 16 +*testing.txt* For Vim version 8.1. Last change: 2019 Aug 21 VIM REFERENCE MANUAL by Bram Moolenaar diff --git a/runtime/doc/textprop.txt b/runtime/doc/textprop.txt --- a/runtime/doc/textprop.txt +++ b/runtime/doc/textprop.txt @@ -1,4 +1,4 @@ -*textprop.txt* For Vim version 8.1. Last change: 2019 Aug 13 +*textprop.txt* For Vim version 8.1. Last change: 2019 Aug 25 VIM REFERENCE MANUAL by Bram Moolenaar @@ -170,7 +170,7 @@ prop_clear({lnum} [, {lnum-end} [, {prop *prop_find()* prop_find({props} [, {direction}]) - NOT IMPLEMENTED YET + {not implemented yet} Search for a text property as specified with {props}: id property with this ID type property with this type name @@ -246,7 +246,7 @@ prop_remove({props} [, {lnum} [, {lnum-e prop_type_add({name}, {props}) *prop_type_add()* *E969* *E970* Add a text property type {name}. If a property type with this - name already exists an error is given. + name already exists an error is given. Nothing is returned. {props} is a dictionary with these optional fields: bufnr define the property only for this buffer; this avoids name collisions and automatically diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 8.1. Last change: 2019 Aug 17 +*todo.txt* For Vim version 8.1. Last change: 2019 Aug 30 VIM REFERENCE MANUAL by Bram Moolenaar @@ -39,30 +39,21 @@ browser use: https://github.com/vim/vim/ -------------------- Known bugs and current work ----------------------- Popup windows: -- check popupmenu using preview window #4544 overlaps complete menu - set completeopt+=preview - Implement flip option -- 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. +- For the "moved" property also include mouse movement? +- Make redrawing more efficient and avoid flicker: + - put popup menu also in popup_mask? +- Any other commands to disable in a popup window? Use ERROR_IF_POPUP_WINDOW for more commands. -- 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? -- Have an option to attach the popup to a text position, like text properties - do. (#4560) -- Make redrawing more efficient and avoid flicker: - - put popup menu also put in popup_mask? -- Invoke filter with character before mapping? #4759 - Figure out the size and position better. if wrapping splits a double-wide character if wrapping inserts indent - When drawing on top half a double-wide character, display ">" or "<" in the incomplete cell. -- Use a popup window for the "info" item of completion instead of using a - preview window. Ideas in issue #4544. - How to add highlighting? + +Text properties: See comment at top of src/textprop.c. 'incsearch' with :s: (#3321) - Get E20 when using command history to get "'<,'>s/a/b" and no Visual area @@ -137,6 +128,8 @@ E278, E279, E290, E292, E362, E366, E450 E453, E454, E460, E489, E491, E565, E578, E610, E611, E653, E654, E856, E857, E860, E861, E863, E889, E900 +Remove check for cmd_silent when calling search_stat()? (Gary Johnson) + undo result wrong: Masato Nishihata, #4798 Sound: support on Mac? Or does libcanberra work there? @@ -150,9 +143,6 @@ 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. -Make heredoc-let a bit more restrictive: -https://github.com/vim/vim/issues/4705 - 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. @@ -178,6 +168,8 @@ Patch for Template string: #4491 Not re goes to any buffer, and then :bnext skips help buffers, since they are unlisted. (#4478) +Patch to fix using zero sc_sid. (#4877) + Make 'showbreak' global-local. The :syntax cchar value can only be a single character. It would be useful to @@ -189,6 +181,8 @@ Problem showing a line if the number col When using :packadd for a replacement language plugin, it is loaded after the default one. #4698 +Patch from Namsh to allow building with both XIM and hangulin. (2019 Aug 29) + When using :packadd files under "later" are not used, which is inconsistent with packages under "start". (xtal8, #1994) @@ -525,6 +519,8 @@ MS-Windows: .lnk file not resolved prope Merge checking for 'cursorline' and 'concealcursor', see neovim #9492. +Display error when a conceal match uses '\%>1l'. (#4854) + Request to add sign_setlist() to make it faster to add a lot of signs, e.g. when adding a sign for every quickfix entry. (#4557) @@ -1075,6 +1071,7 @@ sort() is not stable when using numeric/ 4#1038) +channel: +- Add a in_cb, invoked when the write buffer has become empty. (Matteo Landi) - Add a separate timeout for opening a socket. Currently it's fixed at 50 msec, which is too small for a remote connection. (tverniquet, #2130) - Problem with stderr on Windows? (Vincent Rischmann, 2016 Aug 31, #1026) diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -1,4 +1,4 @@ -*various.txt* For Vim version 8.1. Last change: 2019 Aug 12 +*various.txt* For Vim version 8.1. Last change: 2019 Aug 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -334,7 +334,7 @@ N *+cindent* |'cindent'|, C indenting N *+clientserver* Unix and Win32: Remote invocation |clientserver| *+clipboard* |clipboard| support compiled-in *+clipboard_working* |clipboard| support compiled-in and working -N *+cmdline_compl* command line completion |cmdline-completion| +T *+cmdline_compl* command line completion |cmdline-completion| S *+cmdline_hist* command line history |cmdline-history| N *+cmdline_info* |'showcmd'| and |'ruler'| N *+comments* |'comments'| support @@ -372,7 +372,7 @@ N *+gettext* message translations |mul m *+hangul_input* Hangul input support |hangul| *+iconv* Compiled with the |iconv()| function *+iconv/dyn* Likewise |iconv-dynamic| |/dyn| -N *+insert_expand* |insert_expand| Insert mode completion +T *+insert_expand* |insert_expand| Insert mode completion m *+job* starting and stopping jobs |job| S *+jumplist* |jumplist| B *+keymap* |'keymap'| diff --git a/runtime/doc/vim.man b/runtime/doc/vim.man --- a/runtime/doc/vim.man +++ b/runtime/doc/vim.man @@ -62,10 +62,10 @@ DESCRIPTION -q [errorfile] Start in quickFix mode. The file [errorfile] is read and the first error is displayed. If [errorfile] is omitted, - the filename is obtained from the 'errorfile' option - (defaults to "AztecC.Err" for the Amiga, "errors.err" on - other systems). Further errors can be jumped to with the - ":cn" command. See ":help quickfix". + the filename is obtained from the 'errorfile' option (de‐ + faults to "AztecC.Err" for the Amiga, "errors.err" on other + systems). Further errors can be jumped to with the ":cn" + command. See ":help quickfix". Vim behaves differently, depending on the name of the command (the exe‐ cutable may still be the same file). @@ -92,8 +92,8 @@ DESCRIPTION done with the "-Z" argument. OPTIONS - The options may be given in any order, before or after filenames. - Options without an argument can be combined after a single dash. + The options may be given in any order, before or after filenames. Op‐ + tions without an argument can be combined after a single dash. +[num] For the first file the cursor will be positioned on line "num". If "num" is missing, the cursor will be positioned @@ -132,8 +132,8 @@ OPTIONS sible to edit a binary or executable file. -C Compatible. Set the 'compatible' option. This will make - Vim behave mostly like Vi, even though a .vimrc file - exists. + Vim behave mostly like Vi, even though a .vimrc file ex‐ + ists. -d Start in diff mode. There should be two, three or four file name arguments. Vim will open all the files and show @@ -151,15 +151,15 @@ OPTIONS -E Start Vim in improved Ex mode, just like the executable was called "exim". - -f Foreground. For the GUI version, Vim will not fork and - detach from the shell it was started in. On the Amiga, Vim + -f Foreground. For the GUI version, Vim will not fork and de‐ + tach from the shell it was started in. On the Amiga, Vim is not restarted to open a new window. This option should be used when Vim is executed by a program that will wait for the edit session to finish (e.g. mail). On the Amiga the ":sh" and ":!" commands will not work. - --nofork Foreground. For the GUI version, Vim will not fork and - detach from the shell it was started in. + --nofork Foreground. For the GUI version, Vim will not fork and de‐ + tach from the shell it was started in. -F If Vim has been compiled with FKMAP support for editing right-to-left oriented files and Farsi keyboard mapping, @@ -167,12 +167,12 @@ OPTIONS 'rightleft' are set. Otherwise an error message is given and Vim aborts. - -g If Vim has been compiled with GUI support, this option - enables the GUI. If no GUI support was compiled in, an - error message is given and Vim aborts. + -g If Vim has been compiled with GUI support, this option en‐ + ables the GUI. If no GUI support was compiled in, an error + message is given and Vim aborts. - -h Give a bit of help about the command line arguments and - options. After this Vim exits. + -h Give a bit of help about the command line arguments and op‐ + tions. After this Vim exits. -H If Vim has been compiled with RIGHTLEFT support for editing right-to-left oriented files and Hebrew keyboard mapping, @@ -181,10 +181,10 @@ OPTIONS and Vim aborts. -i {viminfo} - When using the viminfo file is enabled, this option sets - the filename to use, instead of the default "~/.viminfo". - This can also be used to skip the use of the .viminfo file, - by giving the name "NONE". + Specifies the filename to use when reading or writing the + viminfo file, instead of the default "~/.viminfo". This + can also be used to skip the use of the .viminfo file, by + giving the name "NONE". -L Same as -r. @@ -199,7 +199,7 @@ OPTIONS files can not be written. Note that these options can be set to enable making modifications. - -N No-compatible mode. Reset the 'compatible' option. This + -N No-compatible mode. Resets the 'compatible' option. This will make Vim behave a bit better, but less Vi compatible, even though a .vimrc file does not exist. @@ -208,8 +208,8 @@ OPTIONS slow medium (e.g. floppy). Can also be done with ":set uc=0". Can be undone with ":set uc=200". - -nb Become an editor server for NetBeans. See the docs for - details. + -nb Become an editor server for NetBeans. See the docs for de‐ + tails. -o[N] Open N windows stacked. When N is omitted, open one window for each file. @@ -228,8 +228,8 @@ OPTIONS above). The 'readonly' option can be reset with ":set noro". See ":help 'readonly'". - -r List swap files, with information about using them for - recovery. + -r List swap files, with information about using them for re‐ + covery. -r {file} Recovery mode. The swap file is used to recover a crashed editing session. The swap file is a file with the same @@ -247,8 +247,8 @@ OPTIONS characters are read from the keyboard. -T {terminal} - Tells Vim the name of the terminal you are using. Only - required when the automatic way doesn't work. Should be a + Tells Vim the name of the terminal you are using. Only re‐ + quired when the automatic way doesn't work. Should be a terminal known to Vim (builtin) or defined in the termcap or terminfo file. @@ -342,8 +342,8 @@ OPTIONS the server to connect to. --socketid {id} - GTK GUI only: Use the GtkPlug mechanism to run gvim in - another window. + GTK GUI only: Use the GtkPlug mechanism to run gvim in an‐ + other window. --version Print version information and exit. diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -1,4 +1,4 @@ -*windows.txt* For Vim version 8.1. Last change: 2019 Aug 04 +*windows.txt* For Vim version 8.1. Last change: 2019 Aug 18 VIM REFERENCE MANUAL by Bram Moolenaar @@ -872,6 +872,7 @@ option. When set, it overrules the 'pre settings. The option is a comma separated list of values: height maximum height of the popup width maximum width of the popup + highlight highlight group of the popup (default is Pmenu) Example: > :set previewpopup=height:10,width:60 diff --git a/runtime/filetype.vim b/runtime/filetype.vim --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar -" Last Change: 2019 Jul 27 +" Last Change: 2019 Aug 26 " Listen very carefully, I will say this only once if exists("did_load_filetypes") diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -238,6 +238,10 @@ func s:StartDebug_term(dict) " Success! break endif + if response =~ 'Reading symbols from' && response !~ 'new-ui' + " Reading symbols might take a while + let try_count -= 1 + endif endif endfor if response =~ 'New UI allocated' diff --git a/runtime/syntax/css.vim b/runtime/syntax/css.vim --- a/runtime/syntax/css.vim +++ b/runtime/syntax/css.vim @@ -6,8 +6,7 @@ " Nikolai Weibull (Add CSS2 support) " URL: https://github.com/JulesWang/css.vim " Maintainer: Jules Wang -" Last Change: 2018 Feb. 27 -" cssClassName updated by Ryuichi Hayashida Jan 2016 +" Last Change: 2019 Jul. 29 " quit when a syntax file was already loaded if !exists("main_syntax") @@ -69,7 +68,7 @@ endtry " digits syn match cssValueInteger contained "[-+]\=\d\+" contains=cssUnitDecorators syn match cssValueNumber contained "[-+]\=\d\+\(\.\d*\)\=" contains=cssUnitDecorators -syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\)\>" contains=cssUnitDecorators +syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=\(mm\|cm\|in\|pt\|pc\|em\|ex\|px\|rem\|dpi\|dppx\|dpcm\|fr\|vw\|vh\|vmin\|vmax\)\>" contains=cssUnitDecorators syn match cssValueLength contained "[-+]\=\d\+\(\.\d*\)\=%" contains=cssUnitDecorators syn match cssValueAngle contained "[-+]\=\d\+\(\.\d*\)\=\(deg\|grad\|rad\)\>" contains=cssUnitDecorators syn match cssValueTime contained "+\=\d\+\(\.\d*\)\=\(ms\|s\)\>" contains=cssUnitDecorators @@ -114,6 +113,7 @@ syn keyword cssColor contained ActiveBor syn case ignore syn match cssImportant contained "!\s*important\>" +syn match cssCustomProp contained "--[a-zA-Z0-9-_]*" syn match cssColor contained "\" syn match cssColor contained "\" @@ -123,6 +123,7 @@ syn match cssColor contained "#\x\{6\}\> syn match cssColor contained "#\x\{8\}\>" contains=cssUnitDecorators syn region cssURL contained matchgroup=cssFunctionName start="\<\(uri\|url\|local\|format\)\s*(" end=")" contains=cssStringQ,cssStringQQ oneline +syn region cssFunction contained matchgroup=cssFunctionName start="\<\(var\|calc\)\s*(" end=")" contains=cssCustomProp,cssValue.*,cssFunction,cssColor,cssStringQ,cssStringQQ oneline syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgb\|clip\|attr\|counter\|rect\|cubic-bezier\|steps\)\s*(" end=")" oneline contains=cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma syn region cssFunction contained matchgroup=cssFunctionName start="\<\(rgba\|hsl\|hsla\|color-stop\|from\|to\)\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunctionComma,cssFunction syn region cssFunction contained matchgroup=cssFunctionName start="\<\(linear-\|radial-\)\=\gradient\s*(" end=")" oneline contains=cssColor,cssValueInteger,cssValueNumber,cssValueLength,cssFunction,cssGradientAttr,cssFunctionComma @@ -193,6 +194,9 @@ syn match cssBoxProp contained "\