diff options
| author | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-05-01 17:50:17 -0400 |
|---|---|---|
| committer | Jan Edmund Lazo <jan.lazo@mail.utoronto.ca> | 2021-05-01 22:29:02 -0400 |
| commit | 2ebd1f6286211bc67cc83e3ad912d28b372ea4b6 (patch) | |
| tree | b2a0f78619f829cd824e2c6c01fff6595b8e1f3a | |
| parent | 330500a5bfb1207e0c9eb79ac27fb8244da93ce0 (diff) | |
| download | rneovim-2ebd1f6286211bc67cc83e3ad912d28b372ea4b6.tar.gz rneovim-2ebd1f6286211bc67cc83e3ad912d28b372ea4b6.tar.bz2 rneovim-2ebd1f6286211bc67cc83e3ad912d28b372ea4b6.zip | |
vim-patch:3132cddd209e
Update runtime files
https://github.com/vim/vim/commit/3132cddd209ee510bde48b6520290cb26c8f604a
Omit :sort,sort() changes.
| -rw-r--r-- | runtime/doc/eval.txt | 21 | ||||
| -rw-r--r-- | runtime/doc/sign.txt | 14 | ||||
| -rw-r--r-- | runtime/ftplugin/awk.vim | 7 | ||||
| -rw-r--r-- | runtime/optwin.vim | 9 | ||||
| -rw-r--r-- | runtime/pack/dist/opt/termdebug/plugin/termdebug.vim | 4 | ||||
| -rw-r--r-- | runtime/syntax/asm.vim | 100 | ||||
| -rw-r--r-- | runtime/syntax/asmh8300.vim | 48 | ||||
| -rw-r--r-- | runtime/syntax/awk.vim | 7 | ||||
| -rw-r--r-- | runtime/syntax/debchangelog.vim | 10 | ||||
| -rw-r--r-- | runtime/syntax/debcontrol.vim | 16 | ||||
| -rw-r--r-- | runtime/syntax/debsources.vim | 10 | ||||
| -rw-r--r-- | runtime/syntax/proto.vim | 60 | ||||
| -rw-r--r-- | runtime/syntax/typescriptcommon.vim | 225 |
13 files changed, 302 insertions, 229 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 2c9140ef0a..0c5e42a92b 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -3157,7 +3157,7 @@ confirm({msg} [, {choices} [, {default} [, {type}]]]) not need to be the first letter: > confirm("file has been modified", "&Save\nSave &All") < For the console, the first letter of each choice is used as - the default shortcut key. + the default shortcut key. Case is ignored. The optional {default} argument is the number of the choice that is made if the user hits <CR>. Use 1 to make the first @@ -3742,10 +3742,10 @@ extend({expr1}, {expr2} [, {expr3}]) *extend()* |Dictionaries|. If they are |Lists|: Append {expr2} to {expr1}. - If {expr3} is given insert the items of {expr2} before item - {expr3} in {expr1}. When {expr3} is zero insert before the - first item. When {expr3} is equal to len({expr1}) then - {expr2} is appended. + If {expr3} is given insert the items of {expr2} before the + item with index {expr3} in {expr1}. When {expr3} is zero + insert before the first item. When {expr3} is equal to + len({expr1}) then {expr2} is appended. Examples: > :echo sort(extend(mylist, [7, 5])) :call extend(mylist, [2, 3], 1) @@ -6879,10 +6879,10 @@ reg_recording() *reg_recording()* Returns an empty string string when not recording. See |q|. reltime([{start} [, {end}]]) *reltime()* - Return an item that represents a time value. The format of - the item depends on the system. It can be passed to - |reltimestr()| to convert it to a string or |reltimefloat()| - to convert to a float. + Return an item that represents a time value. The item is a + list with items that depend on the system. + The item can be passed to |reltimestr()| to convert it to a + string or |reltimefloat()| to convert to a Float. Without an argument it returns the current "relative time", an implementation-defined value meaningful only when used as an @@ -6892,6 +6892,7 @@ reltime([{start} [, {end}]]) *reltime()* specified in the argument. With two arguments it returns the time passed between {start} and {end}. + The {start} and {end} arguments must be values returned by reltime(). @@ -7971,7 +7972,7 @@ sort({list} [, {func} [, {dict}]]) *sort()* *E702* ignored. When {func} is given and it is 'n' then all items will be - sorted numerical (Implementation detail: This uses the + sorted numerical (Implementation detail: this uses the strtod() function to parse numbers, Strings, Lists, Dicts and Funcrefs will be considered as being 0). diff --git a/runtime/doc/sign.txt b/runtime/doc/sign.txt index 2ee5c31c01..96d2c2ae14 100644 --- a/runtime/doc/sign.txt +++ b/runtime/doc/sign.txt @@ -71,6 +71,10 @@ on the same line, the attributes of the sign with the highest priority is used independently of the sign group. The default priority for a sign is 10. The priority is assigned at the time of placing a sign. +When two signs with the same priority are present, and one has an icon or text +in the signcolumn while the other has line highlighting, then both are +displayed. + When the line on which the sign is placed is deleted, the sign is moved to the next line (or the last line of the buffer, if there is no next line). When the delete is undone the sign does not move back. @@ -442,11 +446,11 @@ sign_getplaced([{expr} [, {dict}]]) *sign_getplaced()* entries The dictionary for each sign contains the following entries: - group sign group. Set to '' for the global group. - id identifier of the sign - lnum line number where the sign is placed - name name of the defined sign - priority sign priority + group sign group. Set to '' for the global group. + id identifier of the sign + lnum line number where the sign is placed + name name of the defined sign + priority sign priority The returned signs in a buffer are ordered by their line number and priority. diff --git a/runtime/ftplugin/awk.vim b/runtime/ftplugin/awk.vim index 9809fec383..1bca3ad3cf 100644 --- a/runtime/ftplugin/awk.vim +++ b/runtime/ftplugin/awk.vim @@ -1,7 +1,8 @@ " Vim filetype plugin -" Language: awk, nawk, gawk, mawk -" Maintainer: Antonio Colombo <azc100@gmail.com> -" Last Change: 2020 Sep 28 +" Language: awk, nawk, gawk, mawk +" Maintainer: Doug Kearns <dougkearns@gmail.com> +" Previous Maintainer: Antonio Colombo <azc100@gmail.com> +" Last Change: 2020 Sep 28 " This plugin was prepared by Mark Sikora " This plugin was updated as proposed by Doug Kearns diff --git a/runtime/optwin.vim b/runtime/optwin.vim index 9644223ba1..633cb9e509 100644 --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -1,7 +1,7 @@ " These commands create the option window. " " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2020 Oct 23 +" Last Change: 2020 Oct 27 " If there already is an option window, jump to that one. let buf = bufnr('option-window') @@ -803,7 +803,7 @@ if has("digraphs") endif call append("$", "tildeop\tthe \"~\" command behaves like an operator") call <SID>BinOptionG("top", &top) -call <SID>AddOption("operatorfunc", "function called for the \"g@\" operator") +call <SID>AddOption("operatorfunc", "function called for the \"g@\" operator") call <SID>OptionG("opfunc", &opfunc) call append("$", "showmatch\twhen inserting a bracket, briefly jump to its match") call <SID>BinOptionG("sm", &sm) @@ -1201,11 +1201,10 @@ endif if has("multi_byte") call <SID>Header("multi-byte characters") - call append("$", "encoding\tcharacter encoding used in Vim: \"latin1\", \"utf-8\"") - call append("$", "\t\"euc-jp\", \"big5\", etc.") + call <SID>AddOption("encoding", "character encoding used in Nvim: \"utf-8\"") call <SID>OptionG("enc", &enc) call append("$", "fileencoding\tcharacter encoding for the current file") - call append("$", "\t(local to buffer)") + call append("$", "\t" .. s:local_to_buffer) call <SID>OptionL("fenc") call append("$", "fileencodings\tautomatically detected character encodings") call <SID>OptionG("fencs", &fencs) diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim index 036d17818a..e34f1cdc75 100644 --- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -2,7 +2,7 @@ " " Author: Bram Moolenaar " Copyright: Vim license applies, see ":help license" -" Last Change: 2020 Oct 25 +" Last Change: 2020 Oct 28 " " WORK IN PROGRESS - Only the basics work " Note: On MS-Windows you need a recent version of gdb. The one included with @@ -1270,7 +1270,7 @@ endfunc func s:PlaceSign(id, subid, entry) let nr = printf('%d.%d', a:id, a:subid) - exe 'sign place ' . s:Breakpoint2SignNumber(a:id, a:subid) . ' line=' . a:entry['lnum'] . ' name=debugBreakpoint' . nr . ' file=' . a:entry['fname'] + exe 'sign place ' . s:Breakpoint2SignNumber(a:id, a:subid) . ' line=' . a:entry['lnum'] . ' name=debugBreakpoint' . nr . ' priority=110 file=' . a:entry['fname'] let a:entry['placed'] = 1 endfunc diff --git a/runtime/syntax/asm.vim b/runtime/syntax/asm.vim index 492e3e8e92..73f283a4a7 100644 --- a/runtime/syntax/asm.vim +++ b/runtime/syntax/asm.vim @@ -1,11 +1,10 @@ " Vim syntax file -" Language: GNU Assembler -" Maintainer: Erik Wognsen <erik.wognsen@gmail.com> -" Previous maintainer: -" Kevin Dahlhausen <kdahlhaus@yahoo.com> -" Last Change: 2014 Feb 04 - -" Thanks to Ori Avtalion for feedback on the comment markers! +" Language: GNU Assembler +" Maintainer: Doug Kearns dougkearns@gmail.com +" Previous Maintainers: Erik Wognsen <erik.wognsen@gmail.com> +" Kevin Dahlhausen <kdahlhaus@yahoo.com> +" Contributors: Ori Avtalion, Lakshay Garg +" Last Change: 2020 Oct 31 " quit when a syntax file was already loaded if exists("b:current_syntax") @@ -34,29 +33,49 @@ syn match asmType "\.space" syn match asmType "\.string" syn match asmType "\.word" -syn match asmLabel "[a-z_][a-z0-9_]*:"he=e-1 syn match asmIdentifier "[a-z_][a-z0-9_]*" +syn match asmLabel "[a-z_][a-z0-9_]*:"he=e-1 " Various #'s as defined by GAS ref manual sec 3.6.2.1 -" Technically, the first decNumber def is actually octal, +" Technically, the first asmDecimal def is actually octal, " since the value of 0-7 octal is the same as 0-7 decimal, " I (Kevin) prefer to map it as decimal: -syn match decNumber "0\+[1-7]\=[\t\n$,; ]" -syn match decNumber "[1-9]\d*" -syn match octNumber "0[0-7][0-7]\+" -syn match hexNumber "0[xX][0-9a-fA-F]\+" -syn match binNumber "0[bB][0-1]*" +syn match asmDecimal "\<0\+[1-7]\=\>" display +syn match asmDecimal "\<[1-9]\d*\>" display +syn match asmOctal "\<0[0-7][0-7]\+\>" display +syn match asmHexadecimal "\<0[xX][0-9a-fA-F]\+\>" display +syn match asmBinary "\<0[bB][0-1]\+\>" display + +syn match asmFloat "\<\d\+\.\d*\%(e[+-]\=\d\+\)\=\>" display +syn match asmFloat "\.\d\+\%(e[+-]\=\d\+\)\=\>" display +syn match asmFloat "\<\d\%(e[+-]\=\d\+\)\>" display +syn match asmFloat "[+-]\=Inf\>\|\<NaN\>" display + +syn match asmFloat "\%(0[edfghprs]\)[+-]\=\d*\%(\.\d\+\)\%(e[+-]\=\d\+\)\=" display +syn match asmFloat "\%(0[edfghprs]\)[+-]\=\d\+\%(\.\d\+\)\=\%(e[+-]\=\d\+\)\=" display +" Avoid fighting the hexadecimal match for unicorn-like '0x' prefixed floats +syn match asmFloat "\%(0x\)[+-]\=\d*\%(\.\d\+\)\%(e[+-]\=\d\+\)\=" display -syn keyword asmTodo contained TODO +" Allow all characters to be escaped (and in strings) as these vary across +" architectures [See sec 3.6.1.1 Strings] +syn match asmCharacterEscape "\\." contained +syn match asmCharacter "'\\\=." contains=asmCharacterEscape +syn match asmStringEscape "\\\_." contained +syn match asmStringEscape "\\\%(\o\{3}\|00[89]\)" contained display +syn match asmStringEscape "\\x\x\+" contained display + +syn region asmString start="\"" end="\"" skip="\\\\\|\\\"" contains=asmStringEscape + +syn keyword asmTodo contained TODO FIXME XXX NOTE " GAS supports one type of multi line comments: -syn region asmComment start="/\*" end="\*/" contains=asmTodo +syn region asmComment start="/\*" end="\*/" contains=asmTodo,@Spell " GAS (undocumentedly?) supports C++ style comments. Unlike in C/C++ however, " a backslash ending a C++ style comment does not extend the comment to the " next line (hence the syntax region does not define 'skip="\\$"') -syn region asmComment start="//" end="$" keepend contains=asmTodo +syn region asmComment start="//" end="$" keepend contains=asmTodo,@Spell " Line comment characters depend on the target architecture and command line " options and some comments may double as logical line number directives or @@ -69,7 +88,7 @@ syn region asmComment start="//" end="$" keepend contains=asmTodo " frequently used features of the most popular architectures (and also the " non-GNU assembly languages that use this syntax file because their asm files " are also named *.asm), the following are used as line comment characters: -syn match asmComment "[#;!|].*" contains=asmTodo +syn match asmComment "[#;!|].*" contains=asmTodo,@Spell " Side effects of this include: " - When `;' is used to separate statements on the same line (many targets @@ -96,35 +115,50 @@ syn match asmMacro "\.endm" " with '.', including the GCC auto-generated '.L' labels. syn match asmDirective "\.[A-Za-z][0-9A-Za-z-_]*" - syn case match " Define the default highlighting. " Only when an item doesn't have highlighting yet " The default methods for highlighting. Can be overridden later -hi def link asmSection Special -hi def link asmLabel Label -hi def link asmComment Comment -hi def link asmTodo Todo +hi def link asmSection Special +hi def link asmLabel Label +hi def link asmComment Comment +hi def link asmTodo Todo hi def link asmDirective Statement -hi def link asmInclude Include -hi def link asmCond PreCondit -hi def link asmMacro Macro +hi def link asmInclude Include +hi def link asmCond PreCondit +hi def link asmMacro Macro + +if exists('g:asm_legacy_syntax_groups') + hi def link hexNumber Number + hi def link decNumber Number + hi def link octNumber Number + hi def link binNumber Number + hi def link asmHexadecimal hexNumber + hi def link asmDecimal decNumber + hi def link asmOctal octNumber + hi def link asmBinary binNumber +else + hi def link asmHexadecimal Number + hi def link asmDecimal Number + hi def link asmOctal Number + hi def link asmBinary Number +endif +hi def link asmFloat Float -hi def link hexNumber Number -hi def link decNumber Number -hi def link octNumber Number -hi def link binNumber Number +hi def link asmString String +hi def link asmStringEscape Special +hi def link asmCharacter Character +hi def link asmCharacterEscape Special hi def link asmIdentifier Identifier -hi def link asmType Type - +hi def link asmType Type let b:current_syntax = "asm" let &cpo = s:cpo_save unlet s:cpo_save -" vim: ts=8 +" vim: nowrap sw=2 sts=2 ts=8 noet diff --git a/runtime/syntax/asmh8300.vim b/runtime/syntax/asmh8300.vim index 8560fb7ae4..2eabb7e4e5 100644 --- a/runtime/syntax/asmh8300.vim +++ b/runtime/syntax/asmh8300.vim @@ -1,19 +1,21 @@ " Vim syntax file -" Language: Hitachi H-8300h specific syntax for GNU Assembler -" Maintainer: Kevin Dahlhausen <kdahlhaus@yahoo.com> -" Last Change: 2002 Sep 19 +" Language: Hitachi H-8300h specific syntax for GNU Assembler +" Maintainer: Doug Kearns <dougkearns@gmail.com> +" Previous Maintainer: Kevin Dahlhausen <kdahlhaus@yahoo.com> +" Last Change: 2020 Oct 31 -" quit when a syntax file was already loaded if exists("b:current_syntax") finish endif +runtime! syntax/asm.vim + syn case ignore -syn match asmDirective "\.h8300[h]*" +syn match asmDirective "\.h8300[hs]n\=" "h8300[h] registers -syn match asmReg "e\=r[0-7][lh]\=" +syn match asmRegister "e\=r\o[lh]\=" "h8300[h] opcodes - order is important! syn match asmOpcode "add\.[lbw]" @@ -37,32 +39,20 @@ syn match asmOpcode "sha[lr]\.[lbw]" syn match asmOpcode "shl[lr]\.[lbw]" syn match asmOpcode "sub\.[lbw]" syn match asmOpcode "xor\.[lbw]" -syn keyword asmOpcode "andc" "band" "bcc" "bclr" "bcs" "beq" "bf" "bge" "bgt" -syn keyword asmOpcode "bhi" "bhs" "biand" "bild" "bior" "bist" "bixor" "bmi" -syn keyword asmOpcode "bne" "bnot" "bnp" "bor" "bpl" "bpt" "bra" "brn" "bset" -syn keyword asmOpcode "bsr" "btst" "bst" "bt" "bvc" "bvs" "bxor" "cmp" "daa" -syn keyword asmOpcode "das" "eepmov" "eepmovw" "inc" "jmp" "jsr" "ldc" "movfpe" -syn keyword asmOpcode "movtpe" "mov" "nop" "orc" "rte" "rts" "sleep" "stc" -syn keyword asmOpcode "sub" "trapa" "xorc" - -syn case match - -" Read the general asm syntax -runtime! syntax/asm.vim - - -" Define the default highlighting. -" Only when an item doesn't have highlighting yet +syn keyword asmOpcode andc band bcc bclr bcs beq bf bge bgt +syn keyword asmOpcode bhi bhs biand bild bior bist bixor bmi +syn keyword asmOpcode bne bnot bnp bor bpl bpt bra brn bset +syn keyword asmOpcode bsr btst bst bt bvc bvs bxor cmp daa +syn keyword asmOpcode das eepmov eepmovw inc jmp jsr ldc movfpe +syn keyword asmOpcode movtpe mov nop orc rte rts sleep stc +syn keyword asmOpcode sub trapa xorc -hi def link asmOpcode Statement -hi def link asmRegister Identifier - -" My default-color overrides: -"hi asmOpcode ctermfg=yellow -"hi asmReg ctermfg=lightmagenta +syn case match +hi def link asmOpcode Statement +hi def link asmRegister Identifier let b:current_syntax = "asmh8300" -" vim: ts=8 +" vim: nowrap sw=2 sts=2 ts=8 noet diff --git a/runtime/syntax/awk.vim b/runtime/syntax/awk.vim index 43455b864d..3082c1cb5c 100644 --- a/runtime/syntax/awk.vim +++ b/runtime/syntax/awk.vim @@ -1,7 +1,8 @@ " Vim syntax file -" Language: awk, nawk, gawk, mawk -" Maintainer: Antonio Colombo <azc100@gmail.com> -" Last Change: 2020 Aug 18 +" Language: awk, nawk, gawk, mawk +" Maintainer: Doug Kearns <dougkearns@gmail.com> +" Previous Maintainer: Antonio Colombo <azc100@gmail.com> +" Last Change: 2020 Aug 18 " AWK ref. is: Alfred V. Aho, Brian W. Kernighan, Peter J. Weinberger " The AWK Programming Language, Addison-Wesley, 1988 diff --git a/runtime/syntax/debchangelog.vim b/runtime/syntax/debchangelog.vim index 7321e90b30..33594f38d4 100644 --- a/runtime/syntax/debchangelog.vim +++ b/runtime/syntax/debchangelog.vim @@ -3,7 +3,7 @@ " Maintainer: Debian Vim Maintainers " Former Maintainers: Gerfried Fuchs <alfie@ist.org> " Wichert Akkerman <wakkerma@debian.org> -" Last Change: 2020 Apr 27 +" Last Change: 2020 Oct 28 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debchangelog.vim " Standard syntax initialization @@ -21,20 +21,20 @@ let s:cpo = &cpo set cpo-=C let s:supported = [ \ 'oldstable', 'stable', 'testing', 'unstable', 'experimental', - \ 'wheezy', 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm', + \ 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm', \ 'sid', 'rc-buggy', \ - \ 'trusty', 'xenial', 'bionic', 'eoan', 'focal', 'groovy', 'devel' + \ 'trusty', 'xenial', 'bionic', 'focal', 'groovy', 'hippo', 'devel' \ ] let s:unsupported = [ \ 'frozen', 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', - \ 'woody', 'sarge', 'etch', 'lenny', 'squeeze', + \ 'woody', 'sarge', 'etch', 'lenny', 'squeeze', 'wheezy', \ \ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty', \ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid', \ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy', \ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful', 'cosmic', - \ 'disco' + \ 'disco', 'eoan' \ ] let &cpo=s:cpo diff --git a/runtime/syntax/debcontrol.vim b/runtime/syntax/debcontrol.vim index 9085cd01d5..25fc252de6 100644 --- a/runtime/syntax/debcontrol.vim +++ b/runtime/syntax/debcontrol.vim @@ -3,7 +3,7 @@ " Maintainer: Debian Vim Maintainers " Former Maintainers: Gerfried Fuchs <alfie@ist.org> " Wichert Akkerman <wakkerma@debian.org> -" Last Change: 2018 Aug 11 +" Last Change: 2020 Oct 26 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcontrol.vim " Standard syntax initialization @@ -47,22 +47,24 @@ exe 'syn keyword debcontrolArchitecture contained '. join(s:pairs) unlet s:kernels s:archs s:pairs +" Keep in sync with https://metadata.ftp-master.org/sections.822 +" curl -q https://metadata.ftp-master.debian.org/sections.822 2>/dev/null| grep-dctrl -n --not -FSection -sSection / - let s:sections = [ \ 'admin', 'cli-mono', 'comm', 'database', 'debian-installer', 'debug' \, 'devel', 'doc', 'editors', 'education', 'electronics', 'embedded' - \, 'fonts', 'games', 'gnome', 'gnustep', 'gnu-r', 'golang', 'graphics' + \, 'fonts', 'games', 'gnome', 'gnu-r', 'gnustep', 'golang', 'graphics' \, 'hamradio', 'haskell', 'httpd', 'interpreters', 'introspection' - \, 'java\%(script\)\=', 'kde', 'kernel', 'libs', 'libdevel', 'lisp' - \, 'localization', 'mail', 'math', 'metapackages', 'misc', 'net' - \, 'news', 'ocaml', 'oldlibs', 'otherosfs', 'perl', 'php', 'python' - \, 'ruby', 'rust', 'science', 'shells', 'sound', 'text', 'tex' + \, 'java', 'javascript', 'kde', 'kernel', 'libdevel', 'libs', 'lisp' + \, 'localization', 'mail', 'math', 'metapackages', 'misc', 'net', 'news' + \, 'ocaml', 'oldlibs', 'otherosfs', 'perl', 'php', 'python', 'raku' + \, 'ruby', 'rust', 'science', 'shells', 'sound', 'tasks', 'tex', 'text' \, 'utils', 'vcs', 'video', 'web', 'x11', 'xfce', 'zope' \ ] syn keyword debcontrolMultiArch contained no foreign allowed same syn match debcontrolName contained "[a-z0-9][a-z0-9+.-]\+" syn keyword debcontrolPriority contained extra important optional required standard -exe 'syn match debcontrolSection contained "\%(\%(contrib\|non-free\|non-US/main\|non-US/contrib\|non-US/non-free\|restricted\|universe\|multiverse\)/\)\=\%('.join(s:sections, '\|').'\)"' +exe 'syn match debcontrolSection contained "\%(\%(contrib\|non-free\|non-US/main\|non-US/contrib\|non-US/non-free\|restricted\|universe\|multiverse\)/\)\=\<\%('.join(s:sections, '\|').'\)\>"' syn keyword debcontrolPackageType contained udeb deb syn match debcontrolVariable contained "\${.\{-}}" syn keyword debcontrolDmUpload contained yes diff --git a/runtime/syntax/debsources.vim b/runtime/syntax/debsources.vim index b594443119..0b9282eeb1 100644 --- a/runtime/syntax/debsources.vim +++ b/runtime/syntax/debsources.vim @@ -2,7 +2,7 @@ " Language: Debian sources.list " Maintainer: Debian Vim Maintainers " Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl> -" Last Change: 2020 Apr 27 +" Last Change: 2020 Oct 26 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim " Standard syntax initialization @@ -23,20 +23,20 @@ let s:cpo = &cpo set cpo-=C let s:supported = [ \ 'oldstable', 'stable', 'testing', 'unstable', 'experimental', - \ 'wheezy', 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm', + \ 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm', \ 'sid', 'rc-buggy', \ - \ 'trusty', 'xenial', 'bionic', 'eoan', 'focal', 'groovy', 'devel' + \ 'trusty', 'xenial', 'bionic', 'focal', 'groovy', 'hippo', 'devel' \ ] let s:unsupported = [ \ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', - \ 'woody', 'sarge', 'etch', 'lenny', 'squeeze', + \ 'woody', 'sarge', 'etch', 'lenny', 'squeeze', 'wheezy', \ \ 'warty', 'hoary', 'breezy', 'dapper', 'edgy', 'feisty', \ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid', \ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy', \ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful', 'cosmic', - \ 'disco' + \ 'disco', 'eoan' \ ] let &cpo=s:cpo diff --git a/runtime/syntax/proto.vim b/runtime/syntax/proto.vim index 4615e0ca0e..0d2d2f259e 100644 --- a/runtime/syntax/proto.vim +++ b/runtime/syntax/proto.vim @@ -1,26 +1,36 @@ -" syntax file for Protocol Buffers - Google's data interchange format -" +" Protocol Buffers - Google's data interchange format " Copyright 2008 Google Inc. All rights reserved. +" https://developers.google.com/protocol-buffers/ " -" Permission is hereby granted, free of charge, to any person obtaining a copy -" of this software and associated documentation files (the "Software"), to deal -" in the Software without restriction, including without limitation the rights -" to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -" copies of the Software, and to permit persons to whom the Software is -" furnished to do so, subject to the following conditions: -" -" The above copyright notice and this permission notice shall be included in -" all copies or substantial portions of the Software. +" Redistribution and use in source and binary forms, with or without +" modification, are permitted provided that the following conditions are +" met: " -" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -" OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -" THE SOFTWARE. +" * Redistributions of source code must retain the above copyright +" notice, this list of conditions and the following disclaimer. +" * Redistributions in binary form must reproduce the above +" copyright notice, this list of conditions and the following disclaimer +" in the documentation and/or other materials provided with the +" distribution. +" * Neither the name of Google Inc. nor the names of its +" contributors may be used to endorse or promote products derived from +" this software without specific prior written permission. " -" http://code.google.com/p/protobuf/ +" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +" OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +" LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +" This is the Vim syntax file for Google Protocol Buffers as found at +" https://github.com/protocolbuffers/protobuf +" Last update: 2020 Oct 29 " quit when a syntax file was already loaded if exists("b:current_syntax") @@ -33,10 +43,10 @@ syn keyword protoTodo contained TODO FIXME XXX syn cluster protoCommentGrp contains=protoTodo syn keyword protoSyntax syntax import option -syn keyword protoStructure package message group +syn keyword protoStructure package message group oneof syn keyword protoRepeat optional required repeated syn keyword protoDefault default -syn keyword protoExtend extend extensions to max +syn keyword protoExtend extend extensions to max reserved syn keyword protoRPC service rpc returns syn keyword protoType int32 int64 uint32 uint64 sint32 sint64 @@ -48,10 +58,10 @@ syn keyword protoBool true false syn match protoInt /-\?\<\d\+\>/ syn match protoInt /\<0[xX]\x+\>/ syn match protoFloat /\<-\?\d*\(\.\d*\)\?/ -syn region protoComment start="\/\*" end="\*\/" contains=@protoCommentGrp -syn region protoComment start="//" skip="\\$" end="$" keepend contains=@protoCommentGrp -syn region protoString start=/"/ skip=/\\./ end=/"/ -syn region protoString start=/'/ skip=/\\./ end=/'/ +syn region protoComment start="\/\*" end="\*\/" contains=@pbCommentGrp,@Spell +syn region protoComment start="//" skip="\\$" end="$" keepend contains=@pbCommentGrp,@Spell +syn region protoString start=/"/ skip=/\\./ end=/"/ contains=@Spell +syn region protoString start=/'/ skip=/\\./ end=/'/ contains=@Spell hi def link protoTodo Todo diff --git a/runtime/syntax/typescriptcommon.vim b/runtime/syntax/typescriptcommon.vim index ff53168329..4074f04a35 100644 --- a/runtime/syntax/typescriptcommon.vim +++ b/runtime/syntax/typescriptcommon.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: TypeScript and TypeScriptReact " Maintainer: Bram Moolenaar, Herrington Darkholme -" Last Change: 2019 Nov 30 +" Last Change: 2020 Oct 27 " Based On: Herrington Darkholme's yats.vim " Changes: See https:github.com/HerringtonDarkholme/yats.vim " Credits: See yats.vim on github @@ -21,15 +21,14 @@ if main_syntax == 'typescript' || main_syntax == 'typescriptreact' setlocal iskeyword+=$ " syntax cluster htmlJavaScript contains=TOP endif +" For private field added from TypeScript 3.8 +setlocal iskeyword+=# " lowest priority on least used feature syntax match typescriptLabel /[a-zA-Z_$]\k*:/he=e-1 contains=typescriptReserved nextgroup=@typescriptStatement skipwhite skipempty " other keywords like return,case,yield uses containedin syntax region typescriptBlock matchgroup=typescriptBraces start=/{/ end=/}/ contains=@typescriptStatement,@typescriptComments fold - - -"runtime syntax/basic/identifiers.vim syntax cluster afterIdentifier contains= \ typescriptDotNotation, \ typescriptFuncCallArg, @@ -60,7 +59,56 @@ syntax region typescriptFuncCallArg contained matchgroup=typescriptPa syntax region typescriptEventFuncCallArg contained matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptEventExpression syntax region typescriptEventString contained start=/\z(["']\)/ skip=/\\\\\|\\\z1\|\\\n/ end=/\z1\|$/ contains=typescriptASCII,@events -"runtime syntax/basic/literal.vim +syntax region typescriptDestructureString + \ start=/\z(["']\)/ skip=/\\\\\|\\\z1\|\\\n/ end=/\z1\|$/ + \ contains=typescriptASCII + \ nextgroup=typescriptDestructureAs + \ contained skipwhite skipempty + +syntax cluster typescriptVariableDeclarations + \ contains=typescriptVariableDeclaration,@typescriptDestructures + +syntax match typescriptVariableDeclaration /[A-Za-z_$]\k*/ + \ nextgroup=typescriptTypeAnnotation,typescriptAssign + \ contained skipwhite skipempty + +syntax cluster typescriptDestructureVariables contains= + \ typescriptRestOrSpread, + \ typescriptDestructureComma, + \ typescriptDestructureLabel, + \ typescriptDestructureVariable, + \ @typescriptDestructures + +syntax match typescriptDestructureVariable /[A-Za-z_$]\k*/ contained + \ nextgroup=typescriptDefaultParam + \ contained skipwhite skipempty + +syntax match typescriptDestructureLabel /[A-Za-z_$]\k*\ze\_s*:/ + \ nextgroup=typescriptDestructureAs + \ contained skipwhite skipempty + +syntax match typescriptDestructureAs /:/ + \ nextgroup=typescriptDestructureVariable,@typescriptDestructures + \ contained skipwhite skipempty + +syntax match typescriptDestructureComma /,/ contained + +syntax cluster typescriptDestructures contains= + \ typescriptArrayDestructure, + \ typescriptObjectDestructure + +syntax region typescriptArrayDestructure matchgroup=typescriptBraces + \ start=/\[/ end=/]/ + \ contains=@typescriptDestructureVariables,@typescriptComments + \ nextgroup=typescriptTypeAnnotation,typescriptAssign + \ transparent contained skipwhite skipempty fold + +syntax region typescriptObjectDestructure matchgroup=typescriptBraces + \ start=/{/ end=/}/ + \ contains=typescriptDestructureString,@typescriptDestructureVariables,@typescriptComments + \ nextgroup=typescriptTypeAnnotation,typescriptAssign + \ transparent contained skipwhite skipempty fold + "Syntax in the JavaScript code " String @@ -77,15 +125,15 @@ syntax region typescriptString \ contains=typescriptSpecial,@Spell \ extend -syntax match typescriptSpecial contained "\v\\%(x\x\x|u%(\x{4}|\{\x{4,5}})|c\u|.)" +syntax match typescriptSpecial contained "\v\\%(x\x\x|u%(\x{4}|\{\x{1,6}})|c\u|.)" " From vim runtime " <https://github.com/vim/vim/blob/master/runtime/syntax/javascript.vim#L48> -syntax region typescriptRegexpString start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gimuy]\{0,5\}\s*$+ end=+/[gimuy]\{0,5\}\s*[;.,)\]}]+me=e-1 nextgroup=typescriptDotNotation oneline +syntax region typescriptRegexpString start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gimuy]\{0,5\}\s*$+ end=+/[gimuy]\{0,5\}\s*[;.,)\]}:]+me=e-1 nextgroup=typescriptDotNotation oneline syntax region typescriptTemplate \ start=/`/ skip=/\\\\\|\\`\|\n/ end=/`\|$/ - \ contains=typescriptTemplateSubstitution + \ contains=typescriptTemplateSubstitution,typescriptSpecial,@Spell \ nextgroup=@typescriptSymbols \ skipwhite skipempty @@ -100,18 +148,16 @@ syntax region typescriptArray matchgroup=typescriptBraces syntax match typescriptNumber /\<0[bB][01][01_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty syntax match typescriptNumber /\<0[oO][0-7][0-7_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty syntax match typescriptNumber /\<0[xX][0-9a-fA-F][0-9a-fA-F_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty -syntax match typescriptNumber /\d[0-9_]*\.\d[0-9_]*\|\d[0-9_]*\|\.\d[0-9]*/ - \ nextgroup=typescriptExponent,@typescriptSymbols skipwhite skipempty -syntax match typescriptExponent /[eE][+-]\=\d[0-9]*\>/ - \ nextgroup=@typescriptSymbols skipwhite skipempty contained +syntax match typescriptNumber /\<\%(\d[0-9_]*\%(\.\d[0-9_]*\)\=\|\.\d[0-9_]*\)\%([eE][+-]\=\d[0-9_]*\)\=\>/ + \ nextgroup=typescriptSymbols skipwhite skipempty - -" runtime syntax/basic/object.vim syntax region typescriptObjectLiteral matchgroup=typescriptBraces \ start=/{/ end=/}/ - \ contains=@typescriptComments,typescriptObjectLabel,typescriptStringProperty,typescriptComputedPropertyName + \ contains=@typescriptComments,typescriptObjectLabel,typescriptStringProperty,typescriptComputedPropertyName,typescriptObjectAsyncKeyword \ fold contained +syntax keyword typescriptObjectAsyncKeyword async contained + syntax match typescriptObjectLabel contained /\k\+\_s*/ \ nextgroup=typescriptObjectColon,@typescriptCallImpl \ skipwhite skipempty @@ -136,7 +182,6 @@ syntax match typescriptObjectSpread /\.\.\./ contained containedin=typescriptObj syntax match typescriptObjectColon contained /:/ nextgroup=@typescriptValue skipwhite skipempty -"runtime syntax/basic/symbols.vim " + - ^ ~ syntax match typescriptUnaryOp /[+\-~!]/ \ nextgroup=@typescriptValue @@ -153,10 +198,12 @@ syntax match typescriptBinaryOp contained /===\?/ nextgroup=@typescriptValue s syntax match typescriptBinaryOp contained />\(>>=\|>>\|>=\|>\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty " 4: <<=, <<, <=, < syntax match typescriptBinaryOp contained /<\(<=\|<\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty -" 3: ||, |=, | -syntax match typescriptBinaryOp contained /|\(|\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty -" 3: &&, &=, & |