diff options
author | Bram Moolenaar <Bram@vim.org> | 2020-01-25 13:27:42 +0100 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2020-01-25 13:27:42 +0100 |
commit | 1d9215b9aaa120b9d78fee49488556f73007ce78 (patch) | |
tree | e22bd6772e3424e2c4934ce3f28e0f2f8e2fb90e /runtime | |
parent | 7f51bbe0d19f1f0cb0321326f45a17b4f5155f89 (diff) | |
download | vim-git-1d9215b9aaa120b9d78fee49488556f73007ce78.tar.gz |
Update runtime files.
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/doc/options.txt | 4 | ||||
-rw-r--r-- | runtime/doc/todo.txt | 10 | ||||
-rw-r--r-- | runtime/doc/usr_02.txt | 90 | ||||
-rw-r--r-- | runtime/filetype.vim | 2 | ||||
-rwxr-xr-x | runtime/ftplugin/swift.vim | 15 | ||||
-rwxr-xr-x | runtime/ftplugin/swiftgyb.vim | 11 | ||||
-rw-r--r-- | runtime/syntax/amiga.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/csh.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/dcl.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/elmfilt.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/exports.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/lex.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/lisp.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/maple.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/rpcgen.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/sh.vim | 26 | ||||
-rwxr-xr-x | runtime/syntax/sil.vim | 178 | ||||
-rw-r--r-- | runtime/syntax/sm.vim | 4 | ||||
-rwxr-xr-x | runtime/syntax/swift.vim | 277 | ||||
-rwxr-xr-x | runtime/syntax/swiftgyb.vim | 24 | ||||
-rw-r--r-- | runtime/syntax/tags.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/tex.vim | 32 | ||||
-rw-r--r-- | runtime/syntax/vim.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/xmath.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/xxd.vim | 4 | ||||
-rw-r--r-- | runtime/syntax/yacc.vim | 4 |
26 files changed, 625 insertions, 104 deletions
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 1393e6258..876ddf358 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 8.2. Last change: 2020 Jan 18 +*options.txt* For Vim version 8.2. Last change: 2020 Jan 24 VIM REFERENCE MANUAL by Bram Moolenaar @@ -5253,7 +5253,7 @@ A jump table for the options with a short description can be found at |Q_op|. default because it makes using the pull down menus a little goofy, as a pointer transit may activate a window unintentionally. MS-Windows: Also see 'scrollfocus' for what window is scrolled when - using the mouse scroll whel. + using the mouse scroll wheel. *'mousehide'* *'mh'* *'nomousehide'* *'nomh'* 'mousehide' 'mh' boolean (default on) diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index 5c88918da..9a51915a2 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 8.2. Last change: 2020 Jan 20 +*todo.txt* For Vim version 8.2. Last change: 2020 Jan 23 VIM REFERENCE MANUAL by Bram Moolenaar @@ -121,7 +121,7 @@ Terminal emulator window: conversions. Error numbers available: -E366, E450, E451, E452, +E450, E451, E452, E453, E454, E460, E489, E491, E565, E578, E610, E611, E653, E654, E856, E857, E860, E861, E863, E889, E900 @@ -171,12 +171,12 @@ in terminal.c and then CTRL-N twice. Should do current file first and not split it up when more results are found. (Also #1890) +Undo history wrong when ":next file" re-uses a buffer. (#5426) +ex_next() should pass flag to do_argfile(), then to do_ecmd(). + Adding "10" to 'spellsuggest' causes spell suggestions to become very slow. (#4087) -Instead of using a syntax error, use #error to fail early when something is -wrong. E.g. in vim.h "Error:", and blowfish.c "error!". (#5299) - ":helptags ALL" should skip directories where "tags" cannot be written. (Matěj Cepl, #5026) diff --git a/runtime/doc/usr_02.txt b/runtime/doc/usr_02.txt index 83ec2066a..a866b7abb 100644 --- a/runtime/doc/usr_02.txt +++ b/runtime/doc/usr_02.txt @@ -509,14 +509,14 @@ Summary: *help-summary* > 1) Use Ctrl-D after typing a topic and let Vim show all available topics. Or press Tab to complete: > - :help some<Tab> + :help some<Tab> < More information on how to use the help: > :help helphelp 2) Follow the links in bars to related help. You can go from the detailed help to the user documentation, which describes certain commands more from a user perspective and less detailed. E.g. after: > - :help pattern.txt + :help pattern.txt < You can see the user guide topics |03.9| and |usr_27.txt| in the introduction. @@ -528,27 +528,27 @@ Summary: *help-summary* > < to open the help page which describes all option handling and then search using regular expressions, e.g. textwidth. Certain options have their own namespace, e.g.: > - :help cpo-<letter> + :help cpo-<letter> < for the corresponding flag of the 'cpoptions' settings, substitute <letter> by a specific flag, e.g.: > - :help cpo-; + :help cpo-; < And for the guioption flags: > - :help go-<letter> + :help go-<letter> 4) Normal mode commands do not have a prefix. To go to the help page for the "gt" command: > - :help gt + :help gt 5) Insert mode commands start with i_. Help for deleting a word: > - :help i_CTRL-W + :help i_CTRL-W 6) Visual mode commands start with v_. Help for jumping to the other side of the Visual area: > - :help v_o + :help v_o 7) Command line editing and arguments start with c_. Help for using the command argument %: > - :help c_% + :help c_% 8) Ex-commands always start with ":", so to go to the ":s" command help: > :help :s @@ -559,56 +559,56 @@ Summary: *help-summary* > 10) Key combinations. They usually start with a single letter indicating the mode for which they can be used. E.g.: > - :help i_CTRL-X + :help i_CTRL-X < takes you to the family of CTRL-X commands for insert mode which can be used to auto-complete different things. Note, that certain keys will always be written the same, e.g. Control will always be CTRL. For normal mode commands there is no prefix and the topic is available at :h CTRL-<Letter>. E.g. > - :help CTRL-W + :help CTRL-W < In contrast > :help c_CTRL-R < will describe what the CTRL-R does when entering commands in the Command line and > - :help v_CTRL-A + :help v_CTRL-A < talks about incrementing numbers in visual mode and > :help g_CTRL-A < talks about the "g<C-A>" command (e.g. you have to press "g" then - <CTRL-A>). Here the "g" stand for the normal command "g" which always + <CTRL-A>). Here the "g" stands for the normal command "g" which always expects a second key before doing something similar to the commands - starting with "z" + starting with "z". 11) Regexp items always start with /. So to get help for the "\+" quantifier in Vim regexes: > - :help /\+ + :help /\+ < If you need to know everything about regular expressions, start reading at: > - :help pattern.txt + :help pattern.txt 12) Registers always start with "quote". To find out about the special ":" register: > - :help quote: + :help quote: 13) Vim script is available at > :help eval.txt -< Certain aspects of the language are available at :h expr-X where "X" is a - single letter. E.g. > - :help expr-! -< will take you to the topic describing the "!" (Not) operator for - VimScript. - Also important is > - :help function-list -< to find a short description of all functions available. Help topics for - Vim script functions always include the "()", so: > - :help append() -< talks about the append Vim script function rather than how to append text - in the current buffer. +< Certain aspects of the language are available at :h expr-X where "X" is a + single letter. E.g. > + :help expr-! +< will take you to the topic describing the "!" (Not) operator for Vim + script. + Also important is > + :help function-list +< to find a short description of all functions available. Help topics for + Vim script functions always include the "()", so: > + :help append() +< talks about the append Vim script function rather than how to append text + in the current buffer. 14) Mappings are talked about in the help page :h |map.txt|. Use > - :help mapmode-i + :help mapmode-i < to find out about the |:imap| command. Also use :map-topic to find out about certain subtopics particular for mappings. e.g: > - :help :map-local + :help :map-local < for buffer-local mappings or > :help map-bar < for how the '|' is handled in mappings. @@ -619,7 +619,7 @@ Summary: *help-summary* > 16) Window management commands always start with CTRL-W, so you find the corresponding help at :h CTRL-W_letter. E.g. > - :help CTRL-W_p + :help CTRL-W_p < for moving the previous accessed window. You can also access > :help windows.txt < and read your way through if you are looking for window handling @@ -628,30 +628,30 @@ Summary: *help-summary* > 17) Use |:helpgrep| to search in all help pages (and also of any installed plugins). See |:helpgrep| for how to use it. To search for a topic: > - :helpgrep topic + :helpgrep topic < This takes you to the first match. To go to the next one: > :cnext < All matches are available in the quickfix window which can be opened with: > - :copen + :copen < Move around to the match you like and press Enter to jump to that help. 18) The user manual. This describes help topics for beginners in a rather friendly way. Start at |usr_toc.txt| to find the table of content (as you might have guessed): > - :help usr_toc.txt + :help usr_toc.txt < Skim over the contents to find interesting topics. The "Digraphs" and "Entering special characters" items are in chapter 24, so to go to that particular help page: > - :help usr_24.txt + :help usr_24.txt < Also if you want to access a certain chapter in the help, the chapter number can be accessed directly like this: > - :help 10.1 + :help 10.1 < which goes to chapter 10.1 in |usr_10.txt| and talks about recording macros. 19) Highlighting groups. Always start with hl-groupname. E.g. > - :help hl-WarningMsg + :help hl-WarningMsg < talks about the WarningMsg highlighting group. 20) Syntax highlighting is namespaced to :syn-topic. E.g. > @@ -662,24 +662,24 @@ Summary: *help-summary* > usually start with :l 22) Autocommand events can be found by their name: > - :help BufWinLeave + :help BufWinLeave < To see all possible events: > :help autocommand-events 23) Command-line switches always start with "-". So for the help of the -f command switch of Vim use: > - :help -f + :help -f 24) Optional features always start with "+". To find out about the conceal feature use: > - :help +conceal + :help +conceal 25) Documentation for included filetype specific functionality is usually - available in the form ft-<filetype>-<functionality>. So > - :help ft-c-syntax + available in the form ft-<filetype>-<functionality>. So > + :help ft-c-syntax < talks about the C syntax file and the option it provides. Sometimes, additional sections for omni completion > - :help ft-php-omni + :help ft-php-omni < or filetype plugins > :help ft-tex-plugin < are available. @@ -691,7 +691,7 @@ Summary: *help-summary* > < talks about the warning "Changing a readonly file". Sometimes, however, those error codes are not described, but rather are listed at the Vim command that usually causes this. So: > - :help E128 + :help E128 < takes you to the |:function| command diff --git a/runtime/filetype.vim b/runtime/filetype.vim index 53f670831..d8184faee 100644 --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar <Bram@vim.org> -" Last Change: 2019 Nov 26 +" Last Change: 2020 Jan 22 " Listen very carefully, I will say this only once if exists("did_load_filetypes") diff --git a/runtime/ftplugin/swift.vim b/runtime/ftplugin/swift.vim new file mode 100755 index 000000000..26d04eb5f --- /dev/null +++ b/runtime/ftplugin/swift.vim @@ -0,0 +1,15 @@ +" This source file is part of the Swift.org open source project +" +" Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors +" Licensed under Apache License v2.0 with Runtime Library Exception +" +" See https://swift.org/LICENSE.txt for license information +" See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors +" +" Vim maintainer: Emir SARI <bitigchi@me.com> + +setlocal comments=s1:/*,mb:*,ex:*/,:///,:// +setlocal expandtab +setlocal ts=2 +setlocal sw=2 +setlocal smartindent diff --git a/runtime/ftplugin/swiftgyb.vim b/runtime/ftplugin/swiftgyb.vim new file mode 100755 index 000000000..8e8fc2b79 --- /dev/null +++ b/runtime/ftplugin/swiftgyb.vim @@ -0,0 +1,11 @@ +" This source file is part of the Swift.org open source project +" +" Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors +" Licensed under Apache License v2.0 with Runtime Library Exception +" +" See https://swift.org/LICENSE.txt for license information +" See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors +" +" Vim maintainer: Emir SARI <bitigchi@me.com> + +runtime! ftplugin/swift.vim diff --git a/runtime/syntax/amiga.vim b/runtime/syntax/amiga.vim index eab9f6616..5a664c4f6 100644 --- a/runtime/syntax/amiga.vim +++ b/runtime/syntax/amiga.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: AmigaDos -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 -" Version: 9 +" Version: 10 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_AMIGA " quit when a syntax file was already loaded diff --git a/runtime/syntax/csh.vim b/runtime/syntax/csh.vim index c134aa7ef..6a056c700 100644 --- a/runtime/syntax/csh.vim +++ b/runtime/syntax/csh.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: C-shell (csh) -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 -" Version: 13 +" Version: 14 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_CSH " quit when a syntax file was already loaded diff --git a/runtime/syntax/dcl.vim b/runtime/syntax/dcl.vim index 73df8e1ba..530fbdb59 100644 --- a/runtime/syntax/dcl.vim +++ b/runtime/syntax/dcl.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: DCL (Digital Command Language - vms) -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Mar 26, 2019 -" Version: 12 +" Version: 13 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_DCL " quit when a syntax file was already loaded diff --git a/runtime/syntax/elmfilt.vim b/runtime/syntax/elmfilt.vim index ec97af038..d995853e8 100644 --- a/runtime/syntax/elmfilt.vim +++ b/runtime/syntax/elmfilt.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Elm Filter rules -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 -" Version: 8 +" Version: 9 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_ELMFILT " quit when a syntax file was already loaded diff --git a/runtime/syntax/exports.vim b/runtime/syntax/exports.vim index 55efbb1e5..05a3f1acf 100644 --- a/runtime/syntax/exports.vim +++ b/runtime/syntax/exports.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: exports -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 -" Version: 7 +" Version: 8 " Notes: This file includes both SysV and BSD 'isms " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_EXPORTS diff --git a/runtime/syntax/lex.vim b/runtime/syntax/lex.vim index 560aa44be..9e0b307d6 100644 --- a/runtime/syntax/lex.vim +++ b/runtime/syntax/lex.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Lex -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 -" Version: 16 +" Version: 17 " URL: http://mysite.verizon.net/astronaut/vim/index.html#SYNTAX_LEX " " Option: diff --git a/runtime/syntax/lisp.vim b/runtime/syntax/lisp.vim index 17c54d1a4..434150ab2 100644 --- a/runtime/syntax/lisp.vim +++ b/runtime/syntax/lisp.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Lisp -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Jul 11, 2019 -" Version: 29 +" Version: 30 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_LISP " " Thanks to F Xavier Noria for a list of 978 Common Lisp symbols taken from HyperSpec diff --git a/runtime/syntax/maple.vim b/runtime/syntax/maple.vim index f14cf79cf..78f2b4e09 100644 --- a/runtime/syntax/maple.vim +++ b/runtime/syntax/maple.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Maple V (based on release 4) -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Mar 26, 2019 -" Version: 16 +" Version: 17 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_MAPLE " " Package Function Selection: {{{1 diff --git a/runtime/syntax/rpcgen.vim b/runtime/syntax/rpcgen.vim index 08183d43a..60c9b8cdd 100644 --- a/runtime/syntax/rpcgen.vim +++ b/runtime/syntax/rpcgen.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: rpcgen -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 -" Version: 12 +" Version: 13 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_RPCGEN if exists("b:current_syntax") diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim index ae62e195a..0f4406d3e 100644 --- a/runtime/syntax/sh.vim +++ b/runtime/syntax/sh.vim @@ -1,9 +1,9 @@ " Vim syntax file " Language: shell (sh) Korn shell (ksh) bash (sh) -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Previous Maintainer: Lennart Schultz <Lennart.Schultz@ecmwf.int> -" Last Change: Jun 16, 2019 -" Version: 188 +" Last Change: Oct 16, 2019 +" Version: 189 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH " For options and settings, please use: :help ft-sh-syntax " This file includes many ideas from Eric Brunet (eric.brunet@ens.fr) @@ -124,13 +124,14 @@ syn cluster shErrorList contains=shDoError,shIfError,shInError,shCaseError,shEsa if exists("b:is_kornshell") || exists("b:is_bash") syn cluster ErrorList add=shDTestError endif -syn cluster shArithParenList contains=shArithmetic,shCaseEsac,shComment,shDeref,shDo,shDerefSimple,shEcho,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shExDoubleQuote,shHereString,shRedir,shSingleQuote,shDoubleQuote,shStatement,shVariable,shAlias,shTest,shCtrlSeq,shSpecial,shParen,bashSpecialVariables,bashStatement,shIf,shFor +syn cluster shArithParenList contains=shArithmetic,shCaseEsac,shComment,shDeref,shDo,shDerefSimple,shEcho,shEscape,shNumber,shOperator,shPosnParm,shExSingleQuote,shExDoubleQuote,shHereString,shRedir,shSingleQuote,shDoubleQuote,shStatement,shVariable,shAlias,shTest,shCtrlSeq,shSpecial,shParen,bashSpecialVariables,bashStatement,shIf,shFor,shFunctionKey,shFunctionOne,shFunctionTwo syn cluster shArithList contains=@shArithParenList,shParenError syn cluster shCaseEsacList contains=shCaseStart,shCaseLabel,shCase,shCaseBar,shCaseIn,shComment,shDeref,shDerefSimple,shCaseCommandSub,shCaseExSingleQuote,shCaseSingleQuote,shCaseDoubleQuote,shCtrlSeq,@shErrorList,shStringSpecial,shCaseRange syn cluster shCaseList contains=@shCommandSubList,shCaseEsac,shColon,shCommandSub,shCommandSubBQ,shComment,shDo,shEcho,shExpr,shFor,shForPP,shHereDoc,shIf,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq syn cluster shCommandSubList contains=shAlias,shArithmetic,shCmdParenRegion,shCommandSub,shComment,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shEcho,shEscape,shExDoubleQuote,shExpr,shExSingleQuote,shHereDoc,shNumber,shOperator,shOption,shPosnParm,shHereString,shRedir,shSingleQuote,shSpecial,shStatement,shSubSh,shTest,shVariable syn cluster shCurlyList contains=shNumber,shComma,shDeref,shDerefSimple,shDerefSpecial -syn cluster shDblQuoteList contains=shArithmetic,shCommandSub,shCommandSubBQ,shDeref,shDerefSimple,shEscape,shPosnParm,shCtrlSeq,shSpecial,shSpecialDQ +" COMBAK: removing shEscape fromshDblQuoteList fails ksh04:43 +syn cluster shDblQuoteList contains=shArithmetic,shCommandSub,shCommandSubBQ,shDeref,shDerefSimple,shPosnParm,shCtrlSeq,shSpecial,shSpecialDQ syn cluster shDerefList contains=shDeref,shDerefSimple,shDerefVar,shDerefSpecial,shDerefWordError,shDerefPSR,shDerefPPS syn cluster shDerefVarList contains=shDerefOff,shDerefOp,shDerefVarArray,shDerefOpError syn cluster shEchoList contains=shArithmetic,shCommandSub,shCommandSubBQ,shDeref,shDerefSimple,shEscape,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shCtrlSeq,shEchoQuote @@ -147,6 +148,7 @@ syn cluster shHereListDQ contains=shBeginHere,@shDblQuoteList,shHerePayload syn cluster shIdList contains=shCommandSub,shCommandSubBQ,shWrapLineOperator,shSetOption,shComment,shDeref,shDerefSimple,shHereString,shNumber,shOperator,shRedir,shExSingleQuote,shExDoubleQuote,shSingleQuote,shDoubleQuote,shExpr,shCtrlSeq,shStringSpecial,shAtExpr syn cluster shIfList contains=@shLoopList,shDblBrace,shDblParen,shFunctionKey,shFunctionOne,shFunctionTwo syn cluster shLoopList contains=@shCaseList,@shErrorList,shCaseEsac,shConditional,shDblBrace,shExpr,shFor,shForPP,shIf,shOption,shSet,shTest,shTestOpr,shTouch +syn cluster shPPSLeftList contains=shAlias,shArithmetic,shCmdParenRegion,shCommandSub,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shEcho,shEscape,shExDoubleQuote,shExpr,shExSingleQuote,shHereDoc,shNumber,shOperator,shOption,shPosnParm,shHereString,shRedir,shSingleQuote,shSpecial,shStatement,shSubSh,shTest,shVariable syn cluster shPPSRightList contains=shComment,shDeref,shDerefSimple,shEscape,shPosnParm syn cluster shSubShList contains=@shCommandSubList,shCommandSubBQ,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator syn cluster shTestList contains=shArithmetic,shCharClass,shCommandSub,shCommandSubBQ,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shSpecialDQ,shExDoubleQuote,shExpr,shExSingleQuote,shNumber,shOperator,shSingleQuote,shTest,shTestOpr @@ -156,8 +158,8 @@ syn cluster shForList contains=shTestOpr,shNumber,shDerefSimple,shDeref,shComman " Echo: {{{1 " ==== " This one is needed INSIDE a CommandSub, so that `echo bla` be correct -syn region shEcho matchgroup=shStatement start="\<echo\>" skip="\\$" matchgroup=shEchoDelim end="$" matchgroup=NONE end="[<>;&|()`]"me=e-1 end="\d[<>]"me=e-2 end="\s#"me=e-2 contains=@shEchoList skipwhite nextgroup=shQuickComment -syn region shEcho matchgroup=shStatement start="\<print\>" skip="\\$" matchgroup=shEchoDelim end="$" matchgroup=NONE end="[<>;&|()`]"me=e-1 end="\d[<>]"me=e-2 end="\s#"me=e-2 contains=@shEchoList skipwhite nextgroup=shQuickComment +syn region shEcho matchgroup=shStatement start="\<echo\>" skip="\\$" matchgroup=shEchoDelim end="$" matchgroup=NONE end="[<>;&|()`]"me=e-1 end="\d[<>]"me=e-2 end="#"me=e-1 contains=@shEchoList skipwhite nextgroup=shQuickComment +syn region shEcho matchgroup=shStatement start="\<print\>" skip="\\$" matchgroup=shEchoDelim end="$" matchgroup=NONE end="[<>;&|()`]"me=e-1 end="\d[<>]"me=e-2 end="#"me=e-1 contains=@shEchoList skipwhite nextgroup=shQuickComment syn match shEchoQuote contained '\%(\\\\\)*\\["`'()]' " This must be after the strings, so that ... \" will be correct @@ -196,7 +198,7 @@ endif " Options: {{{1 " ==================== syn match shOption "\s\zs[-+][-_a-zA-Z#@]\+" -syn match shOption "\s\zs--[^ \t$`'"|);]\+" +syn match shOption "\s\zs--[^ \t$=`'"|);]\+" " File Redirection Highlighted As Operators: {{{1 "=========================================== @@ -292,9 +294,12 @@ endif "====== syn match shWrapLineOperator "\\$" syn region shCommandSubBQ start="`" skip="\\\\\|\\." end="`" contains=shBQComment,@shCommandSubList -"see ksh13 +"COMBAK: see ksh13:50 "syn match shEscape contained '\%(^\)\@!\%(\\\\\)*\\.' nextgroup=shSingleQuote,shDoubleQuote,shComment +"COMBAK: see sh11:27 syn match shEscape contained '\%(^\)\@!\%(\\\\\)*\\.' nextgroup=shComment +"COMBAK: see ksh13:53 +"syn match shEscape contained '\%(^\)\@!\%(\\\\\)*\\.' " $() and $(()): {{{1 " $(..) is not supported by sh (Bourne shell). However, apparently @@ -356,6 +361,7 @@ syn region shDoubleQuote matchgroup=shQuote start=+\%(\%(\\\\\)*\\\)\@<!"+ skip syn region shDoubleQuote matchgroup=shQuote start=+"+ skip=+\\"+ end=+"+ contained contains=@shDblQuoteList,shStringSpecial,@Spell nextgroup=shSpecialStart syn match shStringSpecial "[^[:print:] \t]" contained syn match shStringSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" nextgroup=shComment +syn match shStringSpecial "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" syn match shSpecialSQ "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" contained nextgroup=shBkslshSnglQuote,@shNoZSList syn match shSpecialDQ "[^\\]\zs\%(\\\\\)*\\[\\"'`$()#]" contained nextgroup=shBkslshDblQuote,@shNoZSList syn match shSpecialStart "\%(\\\\\)*\\[\\"'`$()#]" contained nextgroup=shBkslshSnglQuote,shBkslshDblQuote,@shNoZSList @@ -527,7 +533,7 @@ if exists("b:is_bash") " bash : ${parameter//pattern/string} " bash : ${parameter//pattern} syn match shDerefPPS contained '/\{1,2}' nextgroup=shDerefPPSleft - syn region shDerefPPSleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPPSright contains=@shCommandSubList + syn region shDerefPPSleft contained start='.' skip=@\%(\\\\\)*\\/@ matchgroup=shDerefOp end='/' end='\ze}' nextgroup=shDerefPPSright contains=@shPPSLeftList syn region shDerefPPSright contained start='.' skip=@\%(\\\\\)\+@ end='\ze}' contains=@shPPSRightList " bash : ${parameter/#substring/replacement} diff --git a/runtime/syntax/sil.vim b/runtime/syntax/sil.vim new file mode 100755 index 000000000..5583497f1 --- /dev/null +++ b/runtime/syntax/sil.vim @@ -0,0 +1,178 @@ +" This source file is part of the Swift.org open source project +" +" Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors +" Licensed under Apache License v2.0 with Runtime Library Exception +" +" See https://swift.org/LICENSE.txt for license information +" See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors +" +" Vim syntax file +" Language: sil +" +" Vim maintainer: Emir SARI <bitigchi@me.com> + +if exists("b:current_syntax") + finish +endif + +let s:keepcpo = &cpo +set cpo&vim + +syn keyword silStage skipwhite nextgroup=silStages + \ sil_stage +syn keyword silStages + \ canonical + \ raw + +syn match silIdentifier skipwhite + \ /@\<[A-Za-z_0-9]\+\>/ + +syn match silConvention skipwhite + \ /$\?@convention/ +syn region silConvention contained contains=silConventions + \ start="@convention(" end=")" +syn keyword silConventions + \ block + \ c + \ method + \ objc_method + \ thick + \ thin + \ witness_method + +syn match silFunctionType skipwhite + \ /@\(\<autoreleased\>\|\<callee_guaranteed\>\|\<callee_owned\>\|\<error\>\|\<guaranteed\>\|\<in\>\|\<in_constant\>\|\<in_guaranteed\>\|\<inout\>\|\<inout_aliasable\>\|\<noescape\>\|\<out\>\|\<owned\>\)/ +syn match silMetatypeType skipwhite + \ /@\(\<thick\>\|\<thin\>\|\<objc\>\)/ + +" TODO: handle [tail_elems sil-type * sil-operand] +syn region silAttribute contains=silAttributes + \ start="\[" end="\]" +syn keyword silAttributes contained containedin=silAttribute + \ abort + \ deinit + \ delegatingself + \ derivedself + \ derivedselfonly + \ dynamic + \ exact + \ init + \ modify + \ mutating + \ objc + \ open + \ read + \ rootself + \ stack + \ static + \ strict + \ unknown + \ unsafe + \ var + +syn keyword swiftImport import skipwhite nextgroup=swiftImportModule +syn match swiftImportModule /\<[A-Za-z_][A-Za-z_0-9]*\>/ contained nextgroup=swiftImportComponent +syn match swiftImportComponent /\.\<[A-Za-z_][A-Za-z_0-9]*\>/ contained nextgroup=swiftImportComponent + +syn region swiftComment start="/\*" end="\*/" contains=swiftComment,swiftTodo +syn region swiftLineComment start="//" end="$" contains=swiftTodo + +syn match swiftLineComment /^#!.*/ +syn match swiftTypeName /\<[A-Z][a-zA-Z_0-9]*\>/ +syn match swiftDecimal /\<[-]\?[0-9]\+\>/ +syn match swiftDecimal /\<[-+]\?[0-9]\+\>/ + +syn match swiftTypeName /\$\*\<\?[A-Z][a-zA-Z0-9_]*\>/ +syn match swiftVarName /%\<[A-z[a-z_0-9]\+\(#[0-9]\+\)\?\>/ + +syn keyword swiftKeyword break case continue default do else for if in static switch repeat return where while skipwhite + +syn keyword swiftKeyword sil internal thunk skipwhite +syn keyword swiftKeyword public hidden private shared public_external hidden_external skipwhite +syn keyword swiftKeyword getter setter allocator initializer enumelt destroyer globalaccessor objc skipwhite +syn keyword swiftKeyword alloc_global alloc_stack alloc_ref alloc_ref_dynamic alloc_box alloc_existential_box alloc_value_buffer dealloc_stack dealloc_box dealloc_existential_box dealloc_ref dealloc_partial_ref dealloc_value_buffer skipwhite +syn keyword swiftKeyword debug_value debug_value_addr skipwhite +syn keyword swiftKeyword load load_unowned store assign mark_uninitialized mark_function_escape copy_addr destroy_addr index_addr index_raw_pointer bind_memory to skipwhite +syn keyword swiftKeyword strong_retain strong_release strong_retain_unowned ref_to_unowned unowned_to_ref unowned_retain unowned_release load_weak store_unowned store_weak fix_lifetime autorelease_value set_deallocating is_unique is_escaping_closure skipwhite +syn keyword swiftKeyword function_ref integer_literal float_literal string_literal global_addr skipwhite +syn keyword swiftKeyword class_method super_method witness_method objc_method objc_super_method skipwhite +syn keyword swiftKeyword partial_apply builtin skipwhite +syn keyword swiftApplyKeyword apply try_apply skipwhite +syn keyword swiftKeyword metatype value_metatype existential_metatype skipwhite +syn keyword swiftKeyword retain_value release_value retain_value_addr release_value_addr tuple tuple_extract tuple_element_addr struct struct_extract struct_element_addr ref_element_addr skipwhite +syn keyword swiftKeyword init_enum_data_addr unchecked_enum_data unchecked_take_enum_data_addr inject_enum_addr skipwhite +syn keyword swiftKeyword init_existential_addr init_existential_value init_existential_metatype deinit_existential_addr deinit_existential_value open_existential_addr open_existential_box open_existential_box_value open_existential_metatype init_existential_ref open_existential_ref open_existential_value skipwhite +syn keyword swiftKeyword upcast address_to_pointer pointer_to_address pointer_to_thin_function unchecked_addr_cast unchecked_ref_cast unchecked_ref_cast_addr ref_to_raw_pointer ref_to_bridge_object ref_to_unmanaged unmanaged_to_ref raw_pointer_to_ref skipwhite +syn keyword swiftKeyword convert_function thick_to_objc_metatype thin_function_to_pointer objc_to_thick_metatype thin_to_thick_function unchecked_ref_bit_cast unchecked_trivial_bit_cast bridge_object_to_ref bridge_object_to_word unchecked_bitwise_cast skipwhite +syn keyword swiftKeyword objc_existential_metatype_to_object objc_metatype_to_object objc_protocol skipwhite +syn keyword swiftKeyword unconditional_checked_cast unconditional_checked_cast_addr unconditional_checked_cast_value skipwhite +syn keyword swiftKeyword cond_fail skipwhite +syn keyword swiftKeyword unreachable return throw br cond_br switch_value select_enum select_enum_addr select_value switch_enum switch_enum_addr dynamic_method_br checked_cast_br checked_cast_value_br checked_cast_addr_br skipwhite +syn keyword swiftKeyword project_box project_existential_box project_value_buffer project_block_storage init_block_storage_header copy_block mark_dependence skipwhite + +syn keyword swiftTypeDefinition class extension protocol struct typealias enum skipwhite nextgroup=swiftTypeName +syn region swiftTypeAttributes start="\[" end="\]" skipwhite contained nextgroup=swiftTypeName +syn match swiftTypeName /\<[A-Za-z_][A-Za-z_0-9\.]*\>/ contained nextgroup=swiftTypeParameters + +syn region swiftTypeParameters start="<" end=">" skipwhite contained + +syn keyword swiftFuncDefinition func skipwhite nextgroup=swiftFuncAttributes,swiftFuncName,swiftOperator +syn region swiftFuncAttributes start="\[" end="\]" skipwhite contained nextgroup=swiftFuncName,swiftOperator +syn match swiftFuncName /\<[A-Za-z_][A-Za-z_0-9]*\>/ skipwhite contained nextgroup=swiftTypeParameters +syn keyword swiftFuncKeyword subscript init destructor nextgroup=swiftTypeParameters + +syn keyword swiftVarDefinition var skipwhite nextgroup=swiftVarName +syn keyword swiftVarDefinition let skipwhite nextgroup=swiftVarName +syn match swiftVarName /\<[A-Za-z_][A-Za-z_0-9]*\>/ skipwhite contained + +syn keyword swiftDefinitionModifier static + +syn match swiftImplicitVarName /\$\<[A-Za-z_0-9]\+\>/ + +hi def link swiftImport Include +hi def link swiftImportModule Title +hi def link swiftImportComponent Identifier +hi def link swiftApplyKeyword Statement +hi def link swiftKeyword Statement +hi def link swiftTypeDefinition Define +hi def link swiftTypeName Type +hi def link swiftTypeParameters Special +hi def link swiftTypeAttributes PreProc +hi def link swiftFuncDefinition Define +hi def link swiftDefinitionModifier Define +hi def link swiftFuncName Function +hi def link swiftFuncAttributes PreProc +hi def link swiftFuncKeyword Function +hi def link swiftVarDefinition Define +hi def link swiftVarName Identifier +hi def link swiftImplicitVarName Identifier +hi def link swiftIdentifierKeyword Identifier +hi def link swiftTypeDeclaration Delimiter +hi def link swiftBoolean Boolean +hi def link swiftString String +hi def link swiftInterpolation Special +hi def link swiftComment Comment +hi def link swiftLineComment Comment +hi def link swiftDecimal Number +hi def link swiftHex Number +hi def link swiftOct Number +hi def link swiftBin Number +hi def link swiftOperator Function +hi def link swiftChar Character +hi def link swiftLabel Label +hi def link swiftNew Operator + +hi def link silStage Special +hi def link silStages Type +hi def link silConvention Special +hi def link silConventionParameter Special +hi def link silConventions Type +hi def link silIdentifier Identifier +hi def link silFunctionType Special +hi def link silMetatypeType Special +hi def link silAttribute PreProc + +let b:current_syntax = "sil" + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/runtime/syntax/sm.vim b/runtime/syntax/sm.vim index 0ecc96875..a16575c51 100644 --- a/runtime/syntax/sm.vim +++ b/runtime/syntax/sm.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: sendmail -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Oct 25, 2016 -" Version: 8 +" Version: 9 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SM if exists("b:current_syntax") finish diff --git a/runtime/syntax/swift.vim b/runtime/syntax/swift.vim new file mode 100755 index 000000000..533d3fb7a --- /dev/null +++ b/runtime/syntax/swift.vim @@ -0,0 +1,277 @@ +" This source file is part of the Swift.org open source project +" +" Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors +" Licensed under Apache License v2.0 with Runtime Library Exception +" +" See https://swift.org/LICENSE.txt for license information +" See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors +" +" Vim syntax file +" Language: swift +" Maintainer: Joe Groff <jgroff@apple.com> +" Last Change: 2018 Jan 21 +" +" Vim maintainer: Emir SARI <bitigchi@me.com> + +if exists("b:current_syntax") + finish +endif + +let s:keepcpo = &cpo +set cpo&vim + +syn keyword swiftKeyword + \ associatedtype + \ break + \ catch + \ continue + \ defer + \ do + \ else + \ fallthrough + \ for + \ guard + \ if + \ in + \ repeat + \ return + \ switch + \ throw + \ try + \ where + \ while +syn match swiftMultiwordKeyword + \ "indirect case" + +syn keyword swiftImport skipwhite skipempty nextgroup=swiftImportModule + \ import + +syn keyword swiftDefinitionModifier + \ convenience + \ dynamic + \ fileprivate + \ final + \ internal + \ lazy + \ nonmutating + \ open + \ override + \ prefix + \ private + \ public + \ required + \ rethrows + \ static + \ throws + \ weak + +syn keyword swiftInOutKeyword skipwhite skipempty nextgroup=swiftTypeName + \ inout + +syn keyword swiftIdentifierKeyword + \ Self + \ metatype + \ self + \ super + +syn keyword swiftFuncKeywordGeneral skipwhite skipempty nextgroup=swiftTypeParameters + \ init + +syn keyword swiftFuncKeyword + \ deinit + \ subscript + +syn keyword swiftScope + \ autoreleasepool + +syn keyword swiftMutating skipwhite skipempty nextgroup=swiftFuncDefinition + \ mutating +syn keyword swiftFuncDefinition skipwhite skipempty nextgroup=swiftTypeName,swiftOperator + \ func + +syn keyword swiftTypeDefinition skipwhite skipempty nextgroup=swiftTypeName + \ class + \ enum + \ extension + \ protocol + \ struct + +syn keyword swiftTypeAliasDefinition skipwhite skipempty nextgroup=swiftTypeAliasName + \ typealias + +syn match swiftMultiwordTypeDefinition skipwhite skipempty nextgroup=swiftTypeName + \ "indirect enum" + +syn keyword swiftVarDefinition skipwhite skipempty nextgroup=swiftVarName + \ let + \ var + +syn keyword swiftLabel + \ get + \ set + \ didSet + \ willSet + +syn keyword swiftBoolean + \ false + \ true + +syn keyword swiftNil + \ nil + +syn match swiftImportModule contained nextgroup=swiftImportComponent + \ /\<[A-Za-z_][A-Za-z_0-9]*\>/ +syn match swiftImportComponent contained nextgroup=swiftImportComponent + \ /\.\<[A-Za-z_][A-Za-z_0-9]*\>/ + +syn match swiftTypeAliasName contained skipwhite skipempty nextgroup=swiftTypeAliasValue + \ /\<[A-Za-z_][A-Za-z_0-9]*\>/ +syn match swiftTypeName contained skipwhite skipempty nextgroup=swiftTypeParameters + \ /\<[A-Za-z_][A-Za-z_0-9\.]*\>/ +syn match swiftVarName contained skipwhite skipempty nextgroup=swiftTypeDeclaration + \ /\<[A-Za-z_][A-Za-z_0-9]*\>/ +syn match swiftImplicitVarName + \ /\$\<[A-Za-z_0-9]\+\>/ + +" TypeName[Optionality]? +syn match swiftType contained skipwhite skipempty nextgroup=swiftTypeParameters + \ /\<[A-Za-z_][A-Za-z_0-9\.]*\>[!?]\?/ +" [Type:Type] (dictionary) or [Type] (array) +syn region swiftType contained contains=swiftTypePair,swiftType + \ matchgroup=Delimiter start=/\[/ end=/\]/ +syn match swiftTypePair contained skipwhite skipempty nextgroup=swiftTypeParameters,swiftTypeDeclaration + \ /\<[A-Za-z_][A-Za-z_0-9\.]*\>[!?]\?/ +" (Type[, Type]) (tuple) +" FIXME: we should be able to use skip="," and drop swiftParamDelim +syn region swiftType contained contains=swiftType,swiftParamDelim + \ matchgroup=Delimiter start="[^@]\?(" end=")" matchgroup=NONE skip="," +syn match swiftParamDelim contained + \ /,/ +" <Generic Clause> (generics) +syn region swiftTypeParameters contained contains=swiftVarName,swiftConstraint + \ matchgroup=Delimiter start="<" end=">" matchgroup=NONE skip="," +syn keyword swiftConstraint contained + \ where + +syn match swiftTypeAliasValue skipwhite skipempty nextgroup=swiftType + \ /=/ +syn match swiftTypeDeclaration skipwhite skipempty nextgroup=swiftType,swiftInOutKeyword + \ /:/ +syn match swiftTypeDeclaration skipwhite skipempty nextgroup=swiftType + \ /->/ + +syn match swiftKeyword + \ /\<case\>/ +syn region swiftCaseLabelRegion + \ matchgroup=swiftKeyword start=/\<case\>/ matchgroup=Delimiter end=/:/ oneline contains=TOP +syn region swiftDefaultLabelRegion + \ matchgroup=swiftKeyword start=/\<default\>/ matchgroup=Delimiter end=/:/ oneline + +syn region swiftParenthesisRegion contains=TOP + \ matchgroup=NONE start=/(/ end=/)/ + +syn region swiftString contains=swiftInterpolationRegion + \ start=/"/ skip=/\\\\\|\\"/ end=/"/ +syn region swiftInterpolationRegion contained contains=TOP + \ matchgroup=swiftInterpolation start=/\\(/ end=/)/ +syn region swiftComment contains=swiftComment,swiftLineComment,swiftTodo + \ start="/\*" end="\*/" +syn region swiftLineComment contains=swiftComment,swiftTodo + \ start="//" end="$" + +syn match swiftDecimal + \ /[+\-]\?\<\([0-9][0-9_]*\)\([.][0-9_]*\)\?\([eE][+\-]\?[0-9][0-9_]*\)\?\>/ +syn match swiftHex + \ /[+\-]\?\<0x[0-9A-Fa-f][0-9A-Fa-f_]*\(\([.][0-9A-Fa-f_]*\)\?[pP][+\-]\?[0-9][0-9_]*\)\?\>/ +syn match swiftOct + \ /[+\-]\?\<0o[0-7][0-7_]*\>/ +syn match swiftBin + \ /[+\-]\?\<0b[01][01_]*\>/ + +syn match swiftOperator skipwhite skipempty nextgroup=swiftTypeParameters + \ "\.\@<!\.\.\.\@!\|[/=\-+*%<>!&|^~]\@<!\(/[/*]\@![/=\-+*%<>!&|^~]*\|*/\@![/=\-+*%<>!&|^~]*\|->\@![/=\-+*%<>!&|^~]*\|[=+%<>!&|^~][/=\-+*%<>!&|^~]*\)" +syn match swiftOperator skipwhite skipempty nextgroup=swiftTypeParameters + \ "\.\.[<.]" + +syn match swiftChar + \ /'\([^'\\]\|\\\(["'tnr0\\]\|x[0-9a-fA-F]\{2}\|u[0-9a-fA-F]\{4}\|U[0-9a-fA-F]\{8}\)\)'/ + +syn match swiftTupleIndexNumber contains=swiftDecimal + \ /\.[0-9]\+/ +syn match swiftDecimal contained + \ /[0-9]\+/ + +syn match swiftPreproc + \ /#\(\<file\>\|\<line\>\|\<function\>\)/ +syn match swiftPreproc + \ /^\s*#\(\<if\>\|\<else\>\|\<elseif\>\|\<endif\>\|\<error\>\|\<warning\>\)/ +syn region swiftPreprocFalse + \ start="^\s*#\<if\>\s\+\<false\>" end="^\s*#\(\<else\>\|\<elseif\>\|\<endif\>\)" + +syn match swiftAttribute + \ /@\<\w\+\>/ skipwhite skipempty nextgroup=swiftType,swiftTypeDefinition + +syn keyword swiftTodo MARK TODO FIXME contained + +syn match swiftCastOp skipwhite skipempty nextgroup=swiftType + \ "\<is\>" +syn match swiftCastOp skipwhite skipempty nextgroup=swiftType + \ "\<as\>[!?]\?" + +syn match swiftNilOps + \ "??" + +syn region swiftReservedIdentifier oneline + \ start=/`/ end=/`/ + +hi def link swiftImport Include +hi def link swiftImportModule Title +hi def link swiftImportComponent Identifier +hi def link swiftKeyword Statement +hi def link swiftMultiwordKeyword Statement +hi def link swiftTypeDefinition Define +hi def link swiftMultiwordTypeDefinition Define +hi def link swiftType Type +hi def link swiftTypePair Type +hi def link swiftTypeAliasName Identifier +hi def link swiftTypeName Function +hi def link swiftConstraint Special +hi def link swiftFuncDefinition Define +hi def link swiftDefinitionModifier Operator +hi def link swiftInOutKeyword Define +hi def link swiftFuncKeyword Function +hi def link swiftFuncKeywordGeneral Function +hi def link swiftTypeAliasDefinition Define +hi def link swiftVarDefinition Define +hi def link swiftVarName Identifier +hi def link swiftImplicitVarName Identifier +hi def link swiftIdentifierKeyword Identifier +hi def link swiftTypeAliasValue Delimiter +hi def link swiftTypeDeclaration Delimiter +hi def link swiftTypeParameters Delimiter +hi def link swiftBoolean Boolean +hi def link swiftString String +hi def link swiftInterpolation Special +hi def link swiftComment Comment +hi def link swiftLineComment Comment +hi def link swiftDecimal Number +hi def link swiftHex Number +hi def link swiftOct Number +hi def link swiftBin Number +hi def link swiftOperator Function +hi def link swiftChar Character +hi def link swiftLabel Operator +hi def link swiftMutating Statement +hi def link swiftPreproc PreCondit +hi def link swiftPreprocFalse Comment +hi def link swiftAttribute Type +hi def link swiftTodo Todo +hi def link swiftNil Constant +hi def link swiftCastOp Operator +hi def link swiftNilOps Operator +hi def link swiftScope PreProc + +let b:current_syntax = "swift" + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/runtime/syntax/swiftgyb.vim b/runtime/syntax/swiftgyb.vim new file mode 100755 index 000000000..566b75b2e --- /dev/null +++ b/runtime/syntax/swiftgyb.vim @@ -0,0 +1,24 @@ +" This source file is part of the Swift.org open source project +" +" Copyright (c) 2014 - 2020 Apple Inc. and the Swift project authors +" Licensed under Apache License v2.0 with Runtime Library Exception +" +" See https://swift.org/LICENSE.txt for license information +" See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors +" +" Vim syntax file +" Language: gyb on swift +" +" Vim maintainer: Emir SARI <bitigchi@me.com> + +runtime! syntax/swift.vim +unlet b:current_syntax + +syn include @Python syntax/python.vim +syn region pythonCode matchgroup=gybPythonCode start=+^ *%+ end=+$+ contains=@Python keepend +syn region pythonCode matchgroup=gybPythonCode start=+%{+ end=+}%+ contains=@Python keepend +syn match gybPythonCode /\${[^}]*}/ +hi def link gybPythonCode CursorLineNr + +let b:current_syntax = "swiftgyb" + diff --git a/runtime/syntax/tags.vim b/runtime/syntax/tags.vim index f34696d4b..4c06dc1df 100644 --- a/runtime/syntax/tags.vim +++ b/runtime/syntax/tags.vim @@ -1,7 +1,7 @@ " Language: tags -" Maintainer: Charles E. Campbell <NdrOchip@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Oct 26, 2016 -" Version: 7 +" Version: 8 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TAGS " quit when a syntax file was already loaded diff --git a/runtime/syntax/tex.vim b/runtime/syntax/tex.vim index 363c781d0..83f6f8254 100644 --- a/runtime/syntax/tex.vim +++ b/runtime/syntax/tex.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: TeX -" Maintainer: Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM> -" Last Change: May 14, 2019 -" Version: 114 +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> +" Last Change: Jan 24, 2020 +" Version: 116 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TEX " " Notes: {{{1 @@ -147,6 +147,11 @@ if exists("g:tex_nospell") && g:tex_nospell else let s:tex_nospell = 0 endif +if exists("g:tex_excludematcher") + let s:tex_excludematcher= g:tex_excludematcher +else + let s:tex_excludematcher= 0 +endif " Clusters: {{{1 " -------- @@ -156,8 +161,12 @@ if !s:tex_no_error endif syn cluster texEnvGroup contains=texMatcher,texMathDelim,texSpecialChar,texStatement syn cluster texFoldGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMatcher,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texBeginEnd,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract,texBoldStyle,texItalStyle,texEmphStyle,texNoSpell -syn cluster texBoldGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMatcher,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texBeginEnd,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract,texBoldStyle,texBoldItalStyle,texNoSpell -syn cluster texItalGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMatcher,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texBeginEnd,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract,texItalStyle,texEmphStyle,texItalBoldStyle,texNoSpell +syn cluster texBoldGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texBeginEnd,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract,texBoldStyle,texBoldItalStyle,texNoSpell +syn cluster texItalGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texBeginEnd,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract,texItalStyle,texEmphStyle,texItalBoldStyle,texNoSpell +if !s:tex_excludematcher + syn cluster texBoldGroup add=texMatcher + syn cluster texItalGroup add=texMatcher +endif if !s:tex_nospell syn cluster texMatchGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcher,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texBoldStyle,texBoldItalStyle,texItalStyle,texItalBoldStyle,texZone,texInputFile,texOption,@Spell syn cluster texMatchNMGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcherNM,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texBoldStyle,texBoldItalStyle,texItalStyle,texItalBoldStyle,texZone,texInputFile,texOption,@Spell @@ -305,11 +314,6 @@ if s:tex_conceal !~# 'b' endif syn match texTypeStyle "\\textmd\>" syn match texTypeStyle "\\textrm\>" -syn match texTypeStyle "\\textsc\>" -syn match texTypeStyle "\\textsf\>" -syn match texTypeStyle "\\textsl\>" -syn match texTypeStyle "\\texttt\>" -syn match texTypeStyle "\\textup\>" syn match texTypeStyle "\\mathbb\>" syn match texTypeStyle "\\mathbf\>" @@ -386,12 +390,18 @@ if s:tex_fast =~# 'b' syn region texItalStyle matchgroup=texTypeStyle start="\\textit\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup,@Spell syn region texItalBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell syn region texEmphStyle matchgroup=texTypeStyle start="\\emph\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup,@Spell + syn region texEmphStyle matchgroup=texTypeStyle start="\\texts[cfl]\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell + syn region texEmphStyle matchgroup=texTypeStyle start="\\textup\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell + syn region texEmphStyle matchgroup=texTypeStyle start="\\texttt\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell else syn region texBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup syn region texBoldItalStyle matchgroup=texTypeStyle start="\\textit\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup syn region texItalStyle matchgroup=texTypeStyle start="\\textit\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup syn region texItalBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup syn region texEmphStyle matchgroup=texTypeStyle start="\\emph\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup + syn region texEmphStyle matchgroup=texTypeStyle start="\\texts[cfl]\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texEmphGroup + syn region texEmphStyle matchgroup=texTypeStyle start="\\textup\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texEmphGroup + syn region texEmphStyle matchgroup=texTypeStyle start="\\texttt\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texEmphGroup endif endif endif @@ -624,7 +634,7 @@ if s:tex_fast =~# 'r' syn region texRefOption contained matchgroup=Delimiter start='\[' end=']' contains=@texRefGroup,texRefZone nextgroup=texRefOption,texCite syn region texCite contained matchgroup=Delimiter start='{' end='}' contains=@texRefGroup,texRefZone,texCite endif -syn match texRefZone '\\cite\%([tp]\*\=\)\=' nextgroup=texRefOption,texCite +syn match texRefZone '\\cite\%([tp]\*\=\)\=\>' nextgroup=texRefOption,texCite " Handle newcommand, newenvironment : {{{1 syn match texNewCmd "\\newcommand\>" nextgroup=texCmdName skipwhite skipnl diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index ae53bd254..b7988178b 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Vim 8.0 script -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: November 29, 2019 -" Version: 8.0-28 +" Version: 8.0-29 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM " Automatically generated keyword lists: {{{1 diff --git a/runtime/syntax/xmath.vim b/runtime/syntax/xmath.vim index 22b3e85da..37ae95111 100644 --- a/runtime/syntax/xmath.vim +++ b/runtime/syntax/xmath.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: xmath (a simulation tool) -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 -" Version: 9 +" Version: 10 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_XMATH " For version 5.x: Clear all syntax items diff --git a/runtime/syntax/xxd.vim b/runtime/syntax/xxd.vim index f3c43e816..2f90b6b0b 100644 --- a/runtime/syntax/xxd.vim +++ b/runtime/syntax/xxd.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: bin using xxd -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Aug 31, 2016 -" Version: 10 +" Version: 11 " Notes: use :help xxd to see how to invoke it " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_XXD diff --git a/runtime/syntax/yacc.vim b/runtime/syntax/yacc.vim index 8e4a225ff..3aa01e884 100644 --- a/runtime/syntax/yacc.vim +++ b/runtime/syntax/yacc.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Yacc -" Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz> +" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Mar 25, 2019 -" Version: 16 +" Version: 17 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_YACC " " Options: {{{1 |