From 22040ce638ed610cfdbba03376ad9864a2a5d321 Mon Sep 17 00:00:00 2001 From: Adam Stankiewicz Date: Thu, 14 Jan 2021 20:59:40 +0100 Subject: Update --- README.md | 4 +- after/ftplugin/jsx.vim | 2 +- after/syntax/puppet.vim | 28 +++++++++ after/syntax/ruby.vim | 115 ++---------------------------------- after/syntax/yardoc_support.vim | 128 ++++++++++++++++++++++++++++++++++++++++ autoload/go/config.vim | 7 ++- autoload/polyglot/ft.vim | 23 +++++++- autoload/polyglot/init.vim | 2 +- autoload/polyglot/sleuth.vim | 2 +- compiler/lilypond.vim | 23 -------- ctags/puppet.ctags | 3 +- extras/filetype.vim | 4 +- ftplugin/erlang.vim | 5 +- ftplugin/fstab.vim | 4 +- ftplugin/lilypond.vim | 61 ------------------- indent/lilypond.vim | 64 -------------------- indent/systemverilog.vim | 2 +- packages.yaml | 4 +- syntax/abap.vim | 4 +- syntax/crystal.vim | 64 +++++++++----------- syntax/julia.vim | 4 +- syntax/lilypond-words.vim | 7 --- syntax/lilypond.vim | 91 ---------------------------- syntax/ocaml.vim | 6 ++ syntax/odin.vim | 14 +++-- syntax/pgsql.vim | 16 +++-- syntax/prolog.vim | 10 ++-- syntax/typescriptreact.vim | 4 +- 28 files changed, 272 insertions(+), 429 deletions(-) create mode 100644 after/syntax/puppet.vim create mode 100644 after/syntax/yardoc_support.vim delete mode 100644 compiler/lilypond.vim delete mode 100644 ftplugin/lilypond.vim delete mode 100644 indent/lilypond.vim delete mode 100644 syntax/lilypond-words.vim delete mode 100644 syntax/lilypond.vim diff --git a/README.md b/README.md index e2e1ee74..be4ceb04 100644 --- a/README.md +++ b/README.md @@ -108,7 +108,7 @@ On top of all language packs from [vim repository](https://github.com/vim/vim/tr - [idris](https://github.com/idris-hackers/idris-vim) (Idris syntax highlighting for idr and lidr files) - [ion](https://github.com/vmchale/ion-vim) (Syntax highlighting for ion files) - [javascript-sql](https://github.com/statico/vim-javascript-sql) -- [javascript](https://github.com/pangloss/vim-javascript) (JavaScript syntax highlighting for js, bones, cjs, es, es6 and 17 more files) +- [javascript](https://github.com/pangloss/vim-javascript) (JavaScript syntax highlighting for js, bones, cjs, es, es6 and 18 more files) - [jenkins](https://github.com/martinda/Jenkinsfile-vim-syntax) (Syntax highlighting for jenkinsfile and Jenkinsfile files) - [jq](https://github.com/vito-c/jq.vim) (JSONiq syntax highlighting for jq files) - [json5](https://github.com/GutenYe/json5.vim) (JSON5 syntax highlighting for json5 files) @@ -116,7 +116,7 @@ On top of all language packs from [vim repository](https://github.com/vim/vim/tr - [jsonc](https://github.com/neoclide/jsonc.vim) (Syntax highlighting for cjson and jsonc files) - [jsonnet](https://github.com/google/vim-jsonnet) (Jsonnet syntax highlighting for jsonnet and libsonnet files) - [jst](https://github.com/briancollins/vim-jst) (EJS syntax highlighting for ejs, ect and jst files) -- [jsx](https://github.com/MaxMEllon/vim-jsx-pretty) (JSX syntax highlighting for jsx files) +- [jsx](https://github.com/MaxMEllon/vim-jsx-pretty) (Syntax highlighting for jsx files) - [julia](https://github.com/JuliaEditorSupport/julia-vim) (Julia syntax highlighting for jl files) - [kotlin](https://github.com/udalov/kotlin-vim) (Kotlin syntax highlighting for kt, ktm and kts files) - [ledger](https://github.com/ledger/vim-ledger) (Syntax highlighting for ldg, ledger and journal files) diff --git a/after/ftplugin/jsx.vim b/after/ftplugin/jsx.vim index e1af589f..d3bd2a8d 100644 --- a/after/ftplugin/jsx.vim +++ b/after/ftplugin/jsx.vim @@ -15,7 +15,7 @@ endif if exists("loaded_matchit") let b:match_ignorecase = 0 let b:match_words = '(:),\[:\],{:},<:>,' . - \ '<\@<=\([^/][^ \t>]*\)[^>]*\%(>\|$\):<\@<=/\1>' + \ '<\@<=\([A-z0-9.]\+\):\(:p'), 'yard', 'after/syntax/puppet.vim') + finish +endif + +" Puppet syntax extensions for highlighting YARD documentation. +" +" Author: Gabriel Filion +" URI: https://github.com/noprompt/vim-yardoc +" Version: 0.0.1 +" +" This file reuses the main yardoc syntax definitions and glues them together +" with puppet syntax groups from vim-puppet + +runtime! after/syntax/yardoc_support.vim + +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Yard glue to puppet +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +syn match puppetComment "\s*#.*$" contains=puppetTodo,@Spell,yardComment +syn region puppetComment start="/\*" end="\*/" contains=puppetTodo,@Spell,yardComment extend fold keepend +syn cluster puppetNotTop add=@yardTags,@yardDirectives,@yardTypes,@yardLists,@yardHashes + +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Tacking on Yard to puppet syntax classes +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +hi def link yardComment puppetComment +hi def link yardGenericTag puppetKeyword +hi def link yardGenericDirective puppetKeyword diff --git a/after/syntax/ruby.vim b/after/syntax/ruby.vim index 082115e1..85de287e 100644 --- a/after/syntax/ruby.vim +++ b/after/syntax/ruby.vim @@ -7,125 +7,22 @@ endif " Author: Joel Holdbrooks " URI: https://github.com/noprompt/vim-yardoc " Version: 0.0.1 +" +" This file reuses the main yardoc syntax definitions and glues them together +" with Vim's builtin ruby syntax groups -"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Tags -"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -syn match yardGenericTag "@\h\+" contained -syn match yardAbstract "@abstract" contained -syn match yardApi "@api" contained -syn match yardAttr "@attr" contained -syn match yardAttrReader "@attr_reader" contained -syn match yardAttrWriter "@attr_writer" contained -syn match yardAuthor "@author" contained -syn match yardDeprecated "@deprecated" contained -syn match yardExample "@example" contained -syn match yardNote "@note" contained -syn match yardOption "@option" contained -syn match yardOverload "@overload" contained -syn match yardParam "@param" contained -syn match yardParamName /@param \h\+/hs=s+7 contained contains=yardParam -syn match yardPrivate "@private" contained -syn match yardRaise "@raise" contained -syn match yardReturn "@return" contained -syn match yardSee "@see" contained -syn match yardSince "@since" contained -syn match yardTodo "@todo" contained -syn match yardVersion "@version" contained -syn match yardYield "@yield" contained -syn match yardYieldParam "@yieldparam" contained -syn match yardYieldReturn "@yieldreturn" contained -syn cluster yardTags contains=yardGenericTag,yardAbstract,yardApi,yardAttr,yardAttrReader,yardAttrWriter,yardAuthor,yardDeprecated,yardExample,yardNote,yardOption,yardOverload,yardParam,yardParamName,yardPrivate,yardRaise,yardReturn,yardSee,yardSince,yardTodo,yardVersion,yardYield,yardYieldParam,yardYieldReturn - -"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Directives -"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -syn match yardGenericDirective "@!\h\+" contained -syn match yardAttribute "@!attribute" contained -syn match yardEndGroup "@!endgroup" contained -syn match yardGroup "@!group" contained -syn match yardMacro "@!macro" contained -syn match yardMethod "@!method" contained -syn match yardParse "@!parse" contained -syn match yardScope "@!scope" contained -syn match yardVisibility "@!visibility" contained - -syn cluster yardDirectives contains=yardGenericDirective,yardAttribute,yardEndGroup,yardGroup,yardMacro,yardMethod,yardParse,yardScope,yardVisibility - -"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Types, Lists, and Hashes -"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -syn match yardDuckType "#\h\+" contained -syn match yardType "[A-Z]\h\+" contained -syn match yardLiteral "\(true\|false\|nil\|self\|void\)" contained -syn match yardComma "," nextgroup=@yardTypes contained -syn match yardArrow "=>" nextgroup=@yardTypes contained - -syn region yardParametricType start="[A-Z]\+\h\+<" end=">" contains=yardType,yardOrderDependentList,yardComma skipwhite contained -syn region yardOrderDependentList start="(" end=")" contains=@yardTypes,yardComma skipwhite contained -syn region yardTypeList start="\[" end="]" contains=@yardTypes,yardOrderDependentList,@yardHashes skipwhite contained -syn region yardHashAngle start="Hash<" end=">" contains=yardDuckType,yardType,yardLiteral,yardArrow,yardComma skipwhite contained -syn region yardHashCurly start="Hash{" end="}" contains=@yardTypes,yardArrow,yardComma skipwhite contained - -syn cluster yardTypes contains=yardDuckType,yardType,yardLiteral,yardParametricType -syn cluster yardHashes contains=yardArrow,yardHashAngle,yardHashCurly -syn cluster yardLists contains=yardComma,yardTypeList,yardOrderDependentList +runtime! after/syntax/yardoc_support.vim """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Yard +" Yard glue to ruby """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -syn match yardComment "#\s*@!\{,1}\h\+.*" contains=@yardTags,@yardDirectives,yardTypeList syn match rubyComment "#.*" contains=rubySharpBang,rubySpaceError,rubyTodo,@Spell,yardComment syn region rubyMultilineComment start="\%(\%(^\s*#.*\n\)\@:p'), 'yard', 'after/syntax/yardoc_support.vim') + finish +endif + +" Generic syntax extensions for highlighting YARD documentation. +" +" Author: Joel Holdbrooks +" URI: https://github.com/noprompt/vim-yardoc +" Version: 0.0.1 + +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Tags +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +syn match yardGenericTag "@\h\+" contained +syn match yardAbstract "@abstract" contained +syn match yardApi "@api" contained +syn match yardAttr "@attr" contained +syn match yardAttrReader "@attr_reader" contained +syn match yardAttrWriter "@attr_writer" contained +syn match yardAuthor "@author" contained +syn match yardDeprecated "@deprecated" contained +syn match yardExample "@example" contained +syn match yardNote "@note" contained +syn match yardOption "@option" contained +syn match yardOverload "@overload" contained +syn match yardParam "@param" contained +syn match yardParamName /@param \h\+/hs=s+7 contained contains=yardParam +syn match yardPrivate "@private" contained +syn match yardRaise "@raise" contained +syn match yardReturn "@return" contained +syn match yardSee "@see" contained +syn match yardSince "@since" contained +syn match yardTodo "@todo" contained +syn match yardVersion "@version" contained +syn match yardYield "@yield" contained +syn match yardYieldParam "@yieldparam" contained +syn match yardYieldReturn "@yieldreturn" contained +syn cluster yardTags contains=yardGenericTag,yardAbstract,yardApi,yardAttr,yardAttrReader,yardAttrWriter,yardAuthor,yardDeprecated,yardExample,yardNote,yardOption,yardOverload,yardParam,yardParamName,yardPrivate,yardRaise,yardReturn,yardSee,yardSince,yardTodo,yardVersion,yardYield,yardYieldParam,yardYieldReturn + +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Directives +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +syn match yardGenericDirective "@!\h\+" contained +syn match yardAttribute "@!attribute" contained +syn match yardEndGroup "@!endgroup" contained +syn match yardGroup "@!group" contained +syn match yardMacro "@!macro" contained +syn match yardMethod "@!method" contained +syn match yardParse "@!parse" contained +syn match yardScope "@!scope" contained +syn match yardVisibility "@!visibility" contained + +syn cluster yardDirectives contains=yardGenericDirective,yardAttribute,yardEndGroup,yardGroup,yardMacro,yardMethod,yardParse,yardScope,yardVisibility + +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Types, Lists, and Hashes +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +syn match yardDuckType "#\h\+" contained +syn match yardType "[A-Z]\h\+" contained +syn match yardLiteral "\(true\|false\|nil\|self\|void\)" contained +syn match yardComma "," nextgroup=@yardTypes contained +syn match yardArrow "=>" nextgroup=@yardTypes contained + +syn region yardParametricType start="[A-Z]\+\h\+<" end=">" contains=yardType,yardOrderDependentList,yardComma skipwhite contained +syn region yardOrderDependentList start="(" end=")" contains=@yardTypes,yardComma skipwhite contained +syn region yardTypeList start="\[" end="]" contains=@yardTypes,yardOrderDependentList,@yardHashes skipwhite contained +syn region yardHashAngle start="Hash<" end=">" contains=yardDuckType,yardType,yardLiteral,yardArrow,yardComma skipwhite contained +syn region yardHashCurly start="Hash{" end="}" contains=@yardTypes,yardArrow,yardComma skipwhite contained + +syn cluster yardTypes contains=yardDuckType,yardType,yardLiteral,yardParametricType +syn cluster yardHashes contains=yardArrow,yardHashAngle,yardHashCurly +syn cluster yardLists contains=yardComma,yardTypeList,yardOrderDependentList + +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Yard +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +syn match yardComment "#\s*@!\{,1}\h\+.*" contains=@yardTags,@yardDirectives,yardTypeList + +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" Links +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" @note The links to language syntax classes is done in each language syntax +" script. +" +" Tags +hi def link yardAbstract yardGenericTag +hi def link yardApi yardGenericTag +hi def link yardAttr yardGenericTag +hi def link yardAttrReader yardGenericTag +hi def link yardAttrWriter yardGenericTag +hi def link yardAuthor yardGenericTag +hi def link yardDeprecated yardGenericTag +hi def link yardExample yardGenericTag +hi def link yardNote yardGenericTag +hi def link yardOption yardGenericTag +hi def link yardOverload yardGenericTag +hi def link yardParam yardGenericTag +hi def link yardPrivate yardGenericTag +hi def link yardRaise yardGenericTag +hi def link yardReturn yardGenericTag +hi def link yardSee yardGenericTag +hi def link yardSince yardGenericTag +hi def link yardTodo yardGenericTag +hi def link yardVersion yardGenericTag +hi def link yardYield yardGenericTag +hi def link yardYieldParam yardGenericTag +hi def link yardYieldReturn yardGenericTag +" Directives +hi def link yardAttribute yardGenericDirective +hi def link yardEndGroup yardGenericDirective +hi def link yardGroup yardGenericDirective +hi def link yardMacro yardGenericDirective +hi def link yardMethod yardGenericDirective +hi def link yardParse yardGenericDirective +hi def link yardScope yardGenericDirective +hi def link yardVisibility yardGenericDirective +" Types +hi def link yardComma yardComment +hi def link yardType yardComment +hi def link yardDuckType yardComment +hi def link yardLiteral yardComment +" Lists +hi def link yardTypeList yardComment +hi def link yardParametricType yardComment +" Hashes +hi def link yardArrow yardComment +hi def link yardHashAngle yardComment +hi def link yardHashCurly yardComment diff --git a/autoload/go/config.vim b/autoload/go/config.vim index b087b2c4..ca89b16f 100644 --- a/autoload/go/config.vim +++ b/autoload/go/config.vim @@ -263,13 +263,14 @@ function! go#config#SetTemplateAutocreate(value) abort let g:go_template_autocreate = a:value endfunction +let s:default_metalinter = 'staticcheck' function! go#config#MetalinterCommand() abort - return get(g:, 'go_metalinter_command', 'golangci-lint') + return get(g:, 'go_metalinter_command', s:default_metalinter) endfunction function! go#config#MetalinterAutosaveEnabled() abort let l:default = [] - if get(g:, 'go_metalinter_command', 'golangci-lint') == 'golangci-lint' + if get(g:, 'go_metalinter_command', s:default_metalinter) == 'golangci-lint' let l:default = ['govet', 'golint'] endif @@ -278,7 +279,7 @@ endfunction function! go#config#MetalinterEnabled() abort let l:default = [] - if get(g:, 'go_metalinter_command', 'golangci-lint') == 'golangci-lint' + if get(g:, 'go_metalinter_command', s:default_metalinter) == 'golangci-lint' let l:default = ['vet', 'golint', 'errcheck'] endif diff --git a/autoload/polyglot/ft.vim b/autoload/polyglot/ft.vim index 35812c37..f872bf9c 100644 --- a/autoload/polyglot/ft.vim +++ b/autoload/polyglot/ft.vim @@ -362,6 +362,10 @@ func polyglot#ft#FTinc() setf aspvbs elseif lines =~ "' + func polyglot#ft#FTprogress_pascal() if exists("g:filetype_p") exe "setf " . g:filetype_p @@ -419,8 +426,7 @@ func polyglot#ft#FTprogress_pascal() let lnum = 1 while lnum <= 10 && lnum < line('$') let line = getline(lnum) - if line =~ '^\s*\(program\|unit\|procedure\|function\|const\|type\|var\)\>' - \ || line =~ '^\s*{' || line =~ '^\s*(\*' + if line =~ s:ft_pascal_comments || line =~? s:ft_pascal_keywords setf pascal return elseif line !~ '^\s*$' || line =~ '^/\*' @@ -433,6 +439,19 @@ func polyglot#ft#FTprogress_pascal() setf progress endfunc +func polyglot#ft#FTpp() + if exists("g:filetype_pp") + exe "setf " . g:filetype_pp + else + let line = getline(nextnonblank(1)) + if line =~ s:ft_pascal_comments || line =~? s:ft_pascal_keywords + setf pascal + else + setf puppet + endif + endif +endfunc + func polyglot#ft#FTr() let max = line("$") > 50 ? 50 : line("$") diff --git a/autoload/polyglot/init.vim b/autoload/polyglot/init.vim index 19134f9e..bd91a37f 100644 --- a/autoload/polyglot/init.vim +++ b/autoload/polyglot/init.vim @@ -2336,7 +2336,7 @@ if !has_key(g:polyglot_is_disabled, 'jsx') endif if !has_key(g:polyglot_is_disabled, 'javascript') - au BufNewFile,BufRead *._js,*.bones,*.cjs,*.es,*.es6,*.frag,*.gs,*.jake,*.javascript,*.js,*.jsb,*.jscad,*.jsfl,*.jsm,*.jss,*.mjs,*.njs,*.pac,*.sjs,*.ssjs,*.xsjs,*.xsjslib,Jakefile setf javascript + au BufNewFile,BufRead *._js,*.bones,*.cjs,*.es,*.es6,*.frag,*.gs,*.jake,*.javascript,*.js,*.jsb,*.jscad,*.jsfl,*.jsm,*.jss,*.jsx,*.mjs,*.njs,*.pac,*.sjs,*.ssjs,*.xsjs,*.xsjslib,Jakefile setf javascript au BufNewFile,BufRead *.flow setf flow endif diff --git a/autoload/polyglot/sleuth.vim b/autoload/polyglot/sleuth.vim index 725e1887..f3df470a 100644 --- a/autoload/polyglot/sleuth.vim +++ b/autoload/polyglot/sleuth.vim @@ -256,7 +256,7 @@ let s:globs = { \ 'jam': '*.jpl,*.jpr,Prl*.*,JAM*.*', \ 'java': '*.java,*.jav', \ 'javacc': '*.jj,*.jjt', - \ 'javascript': '*.js,*._js,*.bones,*.cjs,*.es,*.es6,*.frag,*.gs,*.jake,*.jsb,*.jscad,*.jsfl,*.jsm,*.jss,*.mjs,*.njs,*.pac,*.sjs,*.ssjs,*.xsjs,*.xsjslib,*.javascript,Jakefile', + \ 'javascript': '*.js,*._js,*.bones,*.cjs,*.es,*.es6,*.frag,*.gs,*.jake,*.jsb,*.jscad,*.jsfl,*.jsm,*.jss,*.jsx,*.mjs,*.njs,*.pac,*.sjs,*.ssjs,*.xsjs,*.xsjslib,*.javascript,Jakefile', \ 'javascriptreact': '*.jsx', \ 'jess': '*.clp', \ 'jgraph': '*.jgr', diff --git a/compiler/lilypond.vim b/compiler/lilypond.vim deleted file mode 100644 index 60a1c52b..00000000 --- a/compiler/lilypond.vim +++ /dev/null @@ -1,23 +0,0 @@ -if polyglot#init#is_disabled(expand(':p'), 'lilypond', 'compiler/lilypond.vim') - finish -endif - -" LilyPond compiler file -" Language: LilyPond -" Maintainer: Heikki Junes -" Last Change: 2004 Mar 01 -" -" Installed As: vim/compiler/lilypond.vim -" -" Only load this indent file when no other was loaded. -if exists("current_compiler") - finish -endif -let current_compiler = "lilypond" - -" default make -setlocal makeprg=lilypond\ $* -" errorformat for lily (with columns) and gcc -" (how to see multiple-line error messages?) -setlocal errorformat=%f:%l:%c:\ %m,%f:%l:\ %m,In\ file\ included\ from\ %f:%l:,\^I\^Ifrom\ %f:%l%m -" diff --git a/ctags/puppet.ctags b/ctags/puppet.ctags index ba9ca180..23716997 100644 --- a/ctags/puppet.ctags +++ b/ctags/puppet.ctags @@ -1,10 +1,11 @@ --langdef=puppet --langmap=puppet:.pp +--regex-puppet=/^[[:space:]]*class[[:space:]]*([a-z][a-zA-Z0-9_:\-]+)/::\1/c,class/ --regex-puppet=/^[[:space:]]*class[[:space:]]*([a-z][a-zA-Z0-9_:\-]+)/\1/c,class/ --regex-puppet=/^[[:space:]]*site[[:space:]]*([a-zA-Z0-9_\-]+)/\1/s,site/ --regex-puppet=/^[[:space:]]*node[[:space:]]*[\'|\"]*([a-zA-Z0-9_\.\-]+)[\'|\"]*/\1/n,node/ --regex-puppet=/^[[:space:]]*define[[:space:]]*([a-z][a-zA-Z0-9_:\-]+)/\1/d,definition/ ---regex-puppet=/^[[:space:]]*(include|require)[[:space:]]*([a-zA-Z0-9_:]+)/\1 \2/i,include/ +--regex-puppet=/^[[:space:]]*(include|require)[[:space:]]*:{0,2}([a-zA-Z0-9_:]+)/\1 ::\2/i,include/ --regex-puppet=/^[[:space:]]*([\$][a-zA-Z0-9_:]+)[[:space:]]*=/\1/v,variable/ --regex-puppet=/^[[:space:]]*[~|\-]?>?[[:space:]]*([a-z][a-zA-Z0-9_:]+)[[:space:]]*\{ *(.*):/\1[\2]/r,resource/ --regex-puppet=/([A-Z][a-zA-Z0-9_:]+)[[:space:]]*\{/\1/f,default/ diff --git a/extras/filetype.vim b/extras/filetype.vim index 703ff96e..9e0be36d 100644 --- a/extras/filetype.vim +++ b/extras/filetype.vim @@ -1174,7 +1174,9 @@ au BufNewFile,BufRead *.papp,*.pxml,*.pxsl setf papp au BufNewFile,BufRead */etc/passwd,*/etc/passwd-,*/etc/passwd.edit,*/etc/shadow,*/etc/shadow-,*/etc/shadow.edit,*/var/backups/passwd.bak,*/var/backups/shadow.bak setf passwd " Pascal (also *.p) -au BufNewFile,BufRead *.pas,*.pp setf pascal +au BufNewFile,BufRead *.pas setf pascal + +au BufNewFile,BufRead *.pp call polyglot#ft#FTpp() " Delphi or Lazarus program file au BufNewFile,BufRead *.dpr,*.lpr setf pascal diff --git a/ftplugin/erlang.vim b/ftplugin/erlang.vim index f23ba875..798f1ded 100644 --- a/ftplugin/erlang.vim +++ b/ftplugin/erlang.vim @@ -3,14 +3,15 @@ if polyglot#init#is_disabled(expand(':p'), 'erlang', 'ftplugin/erlang.vim endif " Vim ftplugin file -" Language: Erlang +" Language: Erlang (http://www.erlang.org) " Maintainer: Csaba Hoch " Author: Oscar Hellström " Contributors: Ricardo Catalinas Jiménez " Eduardo Lopez (http://github.com/tapichu) " Arvid Bjurklint (http://github.com/slarwise) +" Last Update: 2021-Jan-08 " License: Vim license -" Version: 2012/01/25 +" URL: https://github.com/vim-erlang/vim-erlang-runtime if exists('b:did_ftplugin') finish diff --git a/ftplugin/fstab.vim b/ftplugin/fstab.vim index 5f0972ca..437c1247 100644 --- a/ftplugin/fstab.vim +++ b/ftplugin/fstab.vim @@ -6,7 +6,7 @@ endif " Language: fstab file " Maintainer: Radu Dineiu " URL: https://raw.github.com/rid9/vim-fstab/master/ftplugin/fstab.vim -" Last Change: 2020 Dec 29 +" Last Change: 2021 Jan 02 " Version: 1.0 " " Credits: @@ -20,4 +20,4 @@ let b:did_ftplugin = 1 setlocal commentstring=#%s let b:undo_ftplugin = "setlocal commentstring<" -" vim: ts=8 ft=vim \ No newline at end of file +" vim: ts=8 ft=vim diff --git a/ftplugin/lilypond.vim b/ftplugin/lilypond.vim deleted file mode 100644 index ed2d1cdb..00000000 --- a/ftplugin/lilypond.vim +++ /dev/null @@ -1,61 +0,0 @@ -if polyglot#init#is_disabled(expand(':p'), 'lilypond', 'ftplugin/lilypond.vim') - finish -endif - -" LilyPond filetype plugin -" Language: LilyPond (ft=ly) -" Maintainer: Heikki Junes -" Last Change: 2010 Jul 26 -" -" Installed As: vim/ftplugin/lilypond.vim -" Uses Generated File: vim/syntax/lilypond-words.vim -" -" Only do this when not done yet for this buffer -if exists("b:did_ftplugin") - finish -endif - -" Don't load another plugin for this buffer -let b:did_ftplugin = 1 - -setlocal autoindent -setlocal shiftwidth=2 -" -" some handy key mappings -" -" save & make and play midi with timidity -map :w:se makeprg=lilypond\ \"%<\":make:!timidity "%<.midi" -" -" save & make -map :w:se makeprg=lilypond\ \"%<\":make -" -" view ps with ghostview -map :!gv --watch "%<.ps" & -" -" prev error -map :cp -" -" next error -map :cn -" -" make -map :w:se makeprg=make\ -k:make -" -" menu -source $VIMRUNTIME/menu.vim -setlocal wildmenu -setlocal cpo-=< -setlocal wcm= -map :emenu -" -" comment region -map :g!/%.*/normal 0i% -" -" remove comments in region -map :g/%.*/normal 0x -" -" Completions in Insert/Replace-mode with -setlocal dictionary-=$VIM/syntax/lilypond-words dictionary+=$VIM/syntax/lilypond-words -setlocal complete-=k complete+=k -" -setlocal showmatch diff --git a/indent/lilypond.vim b/indent/lilypond.vim deleted file mode 100644 index 3d3edb05..00000000 --- a/indent/lilypond.vim +++ /dev/null @@ -1,64 +0,0 @@ -if polyglot#init#is_disabled(expand(':p'), 'lilypond', 'indent/lilypond.vim') - finish -endif - -" LilyPond indent file -" Language: LilyPond -" Maintainer: Heikki Junes -" Last Change: 2010 Jul 26 -" -" Installed As: vim/indent/lilypond.vim -" -" Only load this indent file when no other was loaded. -if exists("b:did_indent") - finish -endif -let b:did_indent = 1 - -setlocal indentexpr=GetLilyPondIndent() -setlocal indentkeys=o,O,},>>,!^F - -" Only define the function once. -if exists("*GetLilyPondIndent") - finish -endif - -function GetLilyPondIndent() - if v:lnum == 1 - return 0 - endif - - "Find a non-blank line above the current line. - let lnum = prevnonblank(v:lnum - 1) - "Check if a block was started: '{' or '<<' is the last non-blank character of the previous line. - if getline(lnum) =~ '^.*\({\|<<\)\s*$' - let ind = indent(lnum) + &sw - else - let ind = indent(lnum) - endif - - "Check if a block was ended: '}' or '>>' is the first non-blank character of the current line. - if getline(v:lnum) =~ '^\s*\(}\|>>\)' - let ind = ind - &sw - endif - - " Check if the first character from the previous line is within - " a `lilyScheme' region, and if so, use lisp-style indentation - " for the current line. - " - " TODO: - " - Only works in version 7.1.215 or later, though it should - " silently fail in older versions. - " - We should support `lilyScheme' regions that begin in the - " middle of the line, too. - for id in synstack(lnum, 1) - if synIDattr(id, "name") == "lilyScheme" - let ind = lispindent(v:lnum) - endif - endfor - - return ind -endfunction -" -" -" diff --git a/indent/systemverilog.vim b/indent/systemverilog.vim index 0f8321b5..ed1d97a5 100644 --- a/indent/systemverilog.vim +++ b/indent/systemverilog.vim @@ -231,4 +231,4 @@ endfunction let &cpo = s:cpo_save unlet s:cpo_save -" vim:sw=2 \ No newline at end of file +" vim:sw=2 diff --git a/packages.yaml b/packages.yaml index cb469f02..a102eebc 100644 --- a/packages.yaml +++ b/packages.yaml @@ -942,7 +942,9 @@ remote: MaxMEllon/vim-jsx-pretty dependencies: javascript filetypes: - name: javascriptreact - linguist: JSX + patterns: + - pattern: '*.jsx' + description: Syntax Extension to JavaScript --- name: julia remote: JuliaEditorSupport/julia-vim diff --git a/syntax/abap.vim b/syntax/abap.vim index ed10cce9..534e06ef 100644 --- a/syntax/abap.vim +++ b/syntax/abap.vim @@ -5,7 +5,7 @@ endif " Vim ABAP syntax file " Language: SAP - ABAP/R4 " Maintainer: Marius Piedallu van Wyk -" Last Change: 2018 Dec 12 +" Last Change: 2021 Jan 02 " Comment: Thanks to EPI-USE Labs for all your assistance. :) " Quit when a syntax file was already loaded @@ -197,4 +197,4 @@ hi def link abapHex Number let b:current_syntax = "abap" -" vim: ts=8 sw=2 \ No newline at end of file +" vim: ts=8 sw=2 diff --git a/syntax/crystal.vim b/syntax/crystal.vim index 7dfdf507..a776e59b 100644 --- a/syntax/crystal.vim +++ b/syntax/crystal.vim @@ -93,10 +93,6 @@ syn match crystalStringEscape "\\\\\|\\[abefnrstv]\|\\\o\{1,3}\|\\x\x\{1,2}" syn match crystalStringEscape "\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)" contained display syn region crystalInterpolation matchgroup=crystalInterpolationDelim start="#{" end="}" contained contains=TOP -syn match crystalInterpolation "#\%(\$\|@@\=\)\w\+" display contained contains=crystalInterpolationDelim,crystalInstanceVariable,crystalClassVariable,crystalGlobalVariable,crystalPredefinedVariable -syn match crystalInterpolationDelim "#\ze\%(\$\|@@\=\)\w\+" display contained -syn match crystalInterpolation "#\$\%(-\w\|\W\)" display contained contains=crystalInterpolationDelim,crystalPredefinedVariable,crystalInvalidVariable -syn match crystalInterpolationDelim "#\ze\$\%(-\w\|\W\)" display contained syn region crystalNoInterpolation start="\\#{" end="}" contained syn match crystalNoInterpolation "\\#{" display contained syn match crystalNoInterpolation "\\#\%(\$\|@@\=\)\w\+" display contained @@ -156,7 +152,6 @@ syn match crystalAnnotationName "\%(\%([.@$]\@1\|::\)\@=" syn match crystalClassVariable "@@\%(\h\|%\|[^\x00-\x7F]\)\%(\w\|%\|[^\x00-\x7F]\)*" display syn match crystalInstanceVariable "@\%(\h\|%\|[^\x00-\x7F]\)\%(\w\|%\|[^\x00-\x7F]\)*" display -syn match crystalGlobalVariable "$\%(\%(\h\|%\|[^\x00-\x7F]\)\%(\w\|%\|[^\x00-\x7F]\)*\|-.\)" syn match crystalFreshVariable "\%(\h\|[^\x00-\x7F]\)\@1\|<=\|<\|===\|[=!]=\|[=!]\~\|!\|>>\|>=\|>\||\|-@\|-\|/\|\[][=?]\|\[]\|\*\*\|\*\|&\|%\|+@\|+\|`\)" syn match crystalSymbol "[]})\"':]\@1_,;:!?/.'"@$*\&+0]\)" @@ -172,17 +167,11 @@ SynFold ':' syn region crystalSymbol start="[]})\"':]\@1\|{\)\s*\)\@<=|" end="|" oneline display contains=crystalBlockParameter -syn match crystalInvalidVariable "$[^ %A-Za-z_-]" -syn match crystalPredefinedVariable #$[!$&"'*+,./0:;<=>?@\`~]# -syn match crystalPredefinedVariable "$\d\+" display -syn match crystalPredefinedVariable "$_\>" display -syn match crystalPredefinedVariable "$-[0FIKadilpvw]\>" display -syn match crystalPredefinedVariable "$\%(deferr\|defout\|stderr\|stdin\|stdout\)\>" display -syn match crystalPredefinedVariable "$\%(DEBUG\|FILENAME\|KCODE\|LOADED_FEATURES\|LOAD_PATH\|PROGRAM_NAME\|SAFE\|VERBOSE\)\>" display -syn match crystalPredefinedConstant "\%(\%(\.\@1\%(\s*(\)\@!" -syn match crystalPredefinedConstant "\%(\%(\.\@1\%(\s*(\)\@!" -syn match crystalPredefinedConstant "\%(\%(\.\@1\%(\s*(\)\@!" -syn match crystalPredefinedConstant "\%(\%(\.\@1\%(\s*(\)\@!" +" In Crystal, almost all special variables were removed and global variables +" are not supported https://github.com/crystal-lang/crystal/commit/e872c716d0e936557b34c614efc5a4c24d845f79 +" NOTE: Only $~ and $? are supported since they are actually not global. +syn match crystalPredefinedVariable "$[~?]" +syn match crystalPredefinedConstant "\%(\%(\.\@1\%(\s*(\)\@!" " Normal Regular Expression SynFold '/' syn region crystalRegexp matchgroup=crystalRegexpDelimiter start="\%(\%(^\|\<\%(and\|or\|while\|until\|unless\|if\|elsif\|ifdef\|when\|in\|not\|then\|else\)\|[;\~=!|&(,[<>?:*+-]\)\s*\)\@<=/" end="/[imx]*" skip="\\\\\|\\/" contains=@crystalRegexpSpecial @@ -250,9 +239,9 @@ SynFold '<<' syn region crystalString start=+\%(\%(class\|::\)\_s*\|\%([]}).]\)\ SynFold '<<' syn region crystalString start=+\%(\%(class\|::\)\_s*\|\%([]}).]\)\s\|\w\)\@" nextgroup=crystalAliasDeclaration skipwhite skipnl syn match crystalDefine "\" nextgroup=crystalMethodDeclaration skipwhite skipnl syn match crystalDefine "\" nextgroup=crystalFunctionDeclaration skipwhite skipnl - syn match crystalDefine "\" nextgroup=crystalFunction skipwhite skipnl syn match crystalDefine "\<\%(type\|alias\)\>\%(\s*\h\w*\s*=\)\@=" nextgroup=crystalTypeDeclaration skipwhite skipnl syn match crystalClass "\" nextgroup=crystalClassDeclaration skipwhite skipnl syn match crystalModule "\" nextgroup=crystalModuleDeclaration skipwhite skipnl @@ -293,13 +281,17 @@ if !exists('b:crystal_no_expensive') && !exists('g:crystal_no_expensive') syn match crystalEnum "\" nextgroup=crystalEnumDeclaration skipwhite skipnl syn match crystalAnnotation "\" nextgroup=crystalAnnotationDeclaration skipwhite skipnl - SynFold 'def' syn region crystalMethodBlock start="\<\%(def\|macro\)\>" matchgroup=crystalDefine end="\%(\<\%(def\|macro\)\_s\+\)\@" contains=TOP - SynFold 'class' syn region crystalBlock start="\" matchgroup=crystalClass end="\" contains=TOP - SynFold 'module' syn region crystalBlock start="\" matchgroup=crystalModule end="\" contains=TOP - SynFold 'struct' syn region crystalBlock start="\" matchgroup=crystalStruct end="\" contains=TOP - SynFold 'lib' syn region crystalBlock start="\" matchgroup=crystalLib end="\" contains=TOP - SynFold 'enum' syn region crystalBlock start="\" matchgroup=crystalEnum end="\" contains=TOP - SynFold 'annotation' syn region crystalBlock start="\" matchgroup=crystalAnnotation end="\" contains=TOP + SynFold 'def' syn region crystalMethodBlock start="\" matchgroup=crystalDefine end="\%(\" contains=TOP,crystalForallKeyword + SynFold 'macro' syn region crystalMethodBlock start="\" matchgroup=crystalDefine end="\%(\" contains=TOP + SynFold 'class' syn region crystalBlock start="\" matchgroup=crystalClass end="\" contains=TOP + SynFold 'module' syn region crystalBlock start="\" matchgroup=crystalModule end="\" contains=TOP + SynFold 'struct' syn region crystalBlock start="\" matchgroup=crystalStruct end="\" contains=TOP + SynFold 'lib' syn region crystalBlock start="\" matchgroup=crystalLib end="\" contains=TOP + SynFold 'enum' syn region crystalBlock start="\" matchgroup=crystalEnum end="\" contains=TOP + SynFold 'annotation' syn region crystalBlock start="\" matchgroup=crystalAnnotation end="\" contains=TOP + + " keywords in method declaration + syn match crystalForallKeyword "\[?!]\@!" contained containedin=crystalMethodBlock " modifiers syn match crystalConditionalModifier "\<\%(if\|unless\|ifdef\)\>" display @@ -341,8 +333,9 @@ else syn match crystalControl "\[?!]\@!" nextgroup=crystalMacroDeclaration skipwhite skipnl syn match crystalControl "\[?!]\@!" nextgroup=crystalEnumDeclaration skipwhite skipnl syn match crystalControl "\[?!]\@!" nextgroup=crystalAnnotationDeclaration skipwhite skipnl - syn match crystalControl "\<\%(case\|begin\|do\|if\|ifdef\|unless\|while\|until\|else\|elsif\|ensure\|then\|when\|in\|end\)\>[?!]\@!" - syn match crystalKeyword "\<\%(alias\|undef\)\>[?!]\@!" + syn match crystalControl "\<\%(case\|begin\|do\|if\|ifdef\|unless\|while\|select\|until\|else\|elsif\|ensure\|then\|when\|in\|end\)\>[?!]\@!" + syn match crystalKeyword "\[?!]\@!" + syn match crystalForallKeyword "\[?!]\@!" endif " Link attribute @@ -353,13 +346,13 @@ if !exists('g:crystal_no_special_methods') syn keyword crystalAccess protected private " attr is a common variable name syn keyword crystalAttribute abstract - syn match crystalAttribute "\<\%(class_\)\=\%(getter\|setter\|property\)[!?]\=\s" display + syn match crystalAttribute "\<\%(\%(class_\)\=\%(getter\|setter\|property\)[!?]\=\|def_\%(clone\|equals\|equals_and_hash\|hash\)\|delegate\|forward_missing_to\)\s" display syn match crystalControl "\<\%(abort\|at_exit\|exit\|fork\|loop\)\>[?!]\@!" display syn keyword crystalException raise " false positive with 'include?' syn match crystalInclude "\[?!]\@!" display syn keyword crystalInclude extend require - syn keyword crystalKeyword caller typeof pointerof sizeof instance_sizeof + syn keyword crystalKeyword caller typeof pointerof sizeof instance_sizeof offsetof syn match crystalRecord "\" transparent contains=NONE syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE -syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE +syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE syn match crystalKeywordAsMethod "\<\%(alias\|begin\|case\|class\|def\|do\|end\)[?!]" transparent contains=NONE -syn match crystalKeywordAsMethod "\<\%(if\|ifdef\|module\|undef\|unless\|until\|while\)[?!]" transparent contains=NONE +syn match crystalKeywordAsMethod "\<\%(if\|ifdef\|module\|unless\|until\|while\)[?!]" transparent contains=NONE syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE -syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE +syn match crystalKeywordAsMethod "\%(\%(\.\@1" transparent contains=NONE hi def link crystalClass crystalDefine hi def link crystalModule crystalDefine @@ -450,7 +443,6 @@ hi def link crystalStructName crystalConstant hi def link crystalLibName crystalConstant hi def link crystalEnumName crystalConstant hi def link crystalAnnotationName crystalConstant -hi def link crystalGlobalVariable crystalIdentifier hi def link crystalBlockParameter crystalIdentifier hi def link crystalInstanceVariable crystalIdentifier hi def link crystalFreshVariable crystalIdentifier @@ -486,9 +478,9 @@ hi def link crystalRegexp crystalString hi def link crystalMacro PreProc hi def link crystalMacroDelim crystalMacro hi def link crystalMacroKeyword crystalKeyword +hi def link crystalForallKeyword crystalDefine hi def link crystalLinkAttrDelim crystalMacroDelim hi def link crystalError Error -hi def link crystalInvalidVariable crystalError hi def link crystalSpaceError crystalError hi def link crystalInvalidInteger crystalError diff --git a/syntax/julia.vim b/syntax/julia.vim index 056df9c4..42ed6acb 100644 --- a/syntax/julia.vim +++ b/syntax/julia.vim @@ -143,7 +143,7 @@ exec 'syntax region juliaConditionalEBlock matchgroup=juliaConditional transpar exec 'syntax region juliaWhileBlock matchgroup=juliaRepeat start="'.s:nodot.'\" end="'.s:nodot.'\" contains=@juliaExpressions fold' exec 'syntax region juliaForBlock matchgroup=juliaRepeat start="'.s:nodot.'\" end="'.s:nodot.'\" contains=@juliaExpressions,juliaOuter fold' exec 'syntax region juliaBeginBlock matchgroup=juliaBlKeyword start="'.s:nodot.'\" end="'.s:nodot.'\" contains=@juliaExpressions fold' -exec 'syntax region juliaFunctionBlock matchgroup=juliaBlKeyword start="'.s:nodot.'\" end="'.s:nodot.'\" contains=@juliaExpressions fold' +exec 'syntax region juliaFunctionBlock matchgroup=juliaBlKeyword start="'.s:nodot.'\" end="'.s:nodot.'\" contains=@juliaExpressions fold' exec 'syntax region juliaMacroBlock matchgroup=juliaBlKeyword start="'.s:nodot.'\" end="'.s:nodot.'\" contains=@juliaExpressions fold' exec 'syntax region juliaQuoteBlock matchgroup=juliaBlKeyword start="'.s:nodot.'\" end="'.s:nodot.'\" contains=@juliaExpressions fold' exec 'syntax region juliaStructBlock matchgroup=juliaBlKeyword start="'.s:nodot.'\" end="'.s:nodot.'\" contains=@juliaExpressions fold' @@ -344,7 +344,7 @@ exec 'syntax region juliaQuotedParBlockS matchgroup=juliaQParDelim contained s " force precedence over Symbols syntax match juliaOperator display "::" -syntax region juliaCommentL matchgroup=juliaCommentDelim excludenl start="#\ze\%([^=]\|$\)" end="$" contains=juliaTodo,juliaCommentM,@juliaSpellcheckComments +syntax region juliaCommentL matchgroup=juliaCommentDelim excludenl start="#\ze\%([^=]\|$\)" end="$" contains=juliaTodo,@juliaSpellcheckComments syntax region juliaCommentM matchgroup=juliaCommentDelim fold start="#=\ze\%([^#]\|$\)" end="=#" contains=juliaTodo,juliaCommentM,@juliaSpellcheckComments syntax keyword juliaTodo contained TODO FIXME XXX diff --git a/syntax/lilypond-words.vim b/syntax/lilypond-words.vim deleted file mode 100644 index 5d3c5a90..00000000 --- a/syntax/lilypond-words.vim +++ /dev/null @@ -1,7 +0,0 @@ -if polyglot#init#is_disabled(expand(':p'), 'lilypond', 'syntax/lilypond-words.vim') - finish -endif - -syn match lilyKeyword "[-_^]\?\\\(xNotesOn\|xNotesOff\|xNote\|wordwrap-string-internal\|wordwrap-string\|wordwrap-lines\|wordwrap-internal\|wordwrap-field\|wordwrap\|withMusicProperty\|with-url\|with-link\|with-dimensions\|with-color\|with\|whiteout\|whiteTriangleMarkup\|walkerHeadsMinor\|walkerHeads\|vspace\|void\|voiceTwoStyle\|voiceTwo\|voiceThreeStyle\|voiceThree\|voiceOneStyle\|voiceOne\|voiceNeutralStyle\|voiceFourStyle\|voiceFour\|vocalName\|virgula\|virga\|verylongfermata\|versus\|version\|verbatim-file\|vcenter\|varcoda\|upright\|upprall\|upmordent\|upbow\|up\|unset\|unit\|unfoldRepeats\|undo\|underline\|unaCorda\|unHideNotes\|typewriter\|type\|tweak\|turn\|tupletUp\|tupletSpan\|tupletNeutral\|tupletDown\|tuplet\|trill\|triangle\|treCorde\|transposition\|transposedCueDuring\|transpose\|transparent\|translate-scaled\|translate\|topLevelAlignment\|tocTitleMarkup\|tocItemWithDotsMarkup\|tocItemMarkup\|tocItem\|tiny\|timing\|times\|timeSignatureSettings\|timeSignatureFraction\|time\|tied-lyric\|tieWaitForNote\|tieUp\|tieSolid\|tieNeutral\|tieHalfSolid\|tieHalfDashed\|tieDown\|tieDotted\|tieDashed\|tieDashPattern\|thumb\|textSpannerUp\|textSpannerNeutral\|textSpannerDown\|textLengthOn\|textLengthOff\|text\|tenuto\|temporary\|tempoWholesPerMinute\|tempo\|teeny\|tag\|table-of-contents\|tablatureFormat\|tabStaffLineLayoutFunction\|tabFullNotation\|systemStartDelimiter\|sustainOn\|sustainOff\|super\|subdivideBeams\|sub\|styledNoteHeads\|strut\|stropha\|strokeFingerOrientations\|stringTunings\|stringOneTopmost\|stringNumberOrientations\|stopped\|stopTrillSpan\|stopTextSpan\|stopStaff\|stopSlashedGraceMusic\|stopMeasureCount\|stopGroup\|stopGraceSlur\|stopGraceMusic\|stopAppoggiaturaMusic\|stopAcciaccaturaMusic\|stop\|stencil\|stemUp\|stemNeutral\|stemDown\|startTrillSpan\|startTextSpan\|startStaff\|startSlashedGraceMusic\|startRepeatType\|startMeasureCount\|startGroup\|startGraceSlur\|startGraceMusic\|startAppoggiaturaMusic\|startAcciaccaturaMusic\|start\|staccato\|staccatissimo\|squashedPosition\|spp\|spacingTweaks\|sp\|southernHarmonyHeadsMinor\|southernHarmonyHeads\|sostenutoOn\|sostenutoOff\|soloText\|soloIIText\|snappizzicato\|smaller\|smallCaps\|small\|slurUp\|slurSolid\|slurNeutral\|slurHalfSolid\|slurHalfDashed\|slurDown\|slurDotted\|slurDashed\|slurDashPattern\|slashedGrace\|slashed-digit\|slashChordSeparator\|skipTypesetting\|skip\|single\|simultaneous\|simple\|signumcongruentiae\|showStaffSwitch\|showSplitTiedTabNotes\|shortfermata\|shortVocalName\|shortInstrumentName\|shiftOnnn\|shiftOnn\|shiftOn\|shiftOff\|shiftDurations\|sharp\|shape\|sfz\|sfp\|sff\|sf\|settingsFrom\|setDefaultDurationToQuarter\|set\|sesquisharp\|sesquiflat\|sequential\|semisharp\|semiflat\|semicirculus\|semiGermanChords\|segno\|searchForVoice\|scriptDefinitions\|score\|scaleDurations\|scale\|sans\|sacredHarpHeadsMinor\|sacredHarpHeads\|rtoe\|rounded-box\|rotate\|roman\|rightHandFinger\|right-column\|right-brace\|right-align\|right\|rheel\|rfz\|revertTimeSignatureSettings\|revert\|reverseturn\|retrograde\|restrainOpenStrings\|rest-by-number\|rest\|responsum\|resetRelativeOctave\|replace\|repeatTie\|repeatCountVisibility\|repeat\|removeWithTag\|remove\|relative\|rehearsalMark\|raise\|quotedEventTypes\|quotedCueEventTypes\|quoteDuring\|quilisma\|put-adjacent\|pushToTag\|pt\|property-recursive\|printPartCombineTexts\|printKeyCancellation\|predefinedFretboardsOn\|predefinedFretboardsOff\|predefinedDiagramTable\|prallup\|prallprall\|prallmordent\|pralldown\|prall\|ppppp\|pppp\|ppp\|pp\|powerChords\|powerChordSymbol\|powerChordExceptions\|postscript\|portato\|pointAndClickTypes\|pointAndClickOn\|pointAndClickOff\|pitchedTrill\|phrygian\|phrasingSlurUp\|phrasingSlurSolid\|phrasingSlurNeutral\|phrasingSlurHalfSolid\|phrasingSlurHalfDashed\|phrasingSlurDown\|phrasingSlurDotted\|phrasingSlurDashed\|phrasingSlurDashPattern\|pes\|pedalUnaCordaStyle\|pedalUnaCordaStrings\|pedalSustainStyle\|pedalSustainStrings\|pedalSostenutoStyle\|pedalSostenutoStrings\|pattern\|path\|partialJazzMusic\|partialJazzExceptions\|partial\|partcombineUp\|partcombineUnisonoOnce\|partcombineUnisono\|partcombineSoloIOnce\|partcombineSoloIIOnce\|partcombineSoloII\|partcombineSoloI\|partcombineForce\|partcombineDown\|partcombineChordsOnce\|partcombineChords\|partcombineAutomaticOnce\|partcombineAutomatic\|partcombineApartOnce\|partcombineApart\|partcombine\|partCombineTextsOnNote\|partCombineListener\|parenthesize\|parallelMusic\|paper\|palmMuteOn\|palmMuteOff\|palmMute\|pageTurn\|pageBreak\|page-ref\|page-link\|pad-x\|pad-to-box\|pad-markup\|pad-around\|p\|overrideTimeSignatureSettings\|overrideProperty\|override-lines\|override\|oval\|ottava\|oriscus\|open\|oneVoice\|once\|on-the-fly\|omit\|offset\|octaveCheck\|numericTimeSignature\|number\|null\|notemode\|noteToFretFunction\|note-by-number\|note\|normalsize\|normal-text\|normal-size-super\|normal-size-sub\|noPageTurn\|noPageBreak\|noChordSymbol\|noBreak\|noBeam\|newSpacingSection\|new\|neumeDemoLayout\|natural\|name\|musicglyph\|musicMap\|mp\|mordent\|modalTranspose\|modalInversion\|mm\|mixolydian\|minorChordModifier\|minor\|midiInstrument\|midiChannelMapping\|midi\|middleCPosition\|middleCClefPosition\|mf\|metronomeMarkFormatter\|mergeDifferentlyHeadedOn\|mergeDifferentlyHeadedOff\|mergeDifferentlyDottedOn\|mergeDifferentlyDottedOff\|melismaEnd\|melismaBusyProperties\|melisma\|medium\|maxima\|markuplist\|markup\|markletter\|markalphabet\|markLengthOn\|markLengthOff\|markFormatter\|mark\|marcato\|map-markup-commands\|makeClusters\|majorSevenSymbol\|major\|maininput\|magnify\|lyricsto\|lyrics\|lyricmode\|lyricMelismaAlignment\|lydian\|ltoe\|lower\|lookup\|longfermata\|longa\|locrian\|localKeySignature\|lineprall\|linea\|line\|ligature\|lheel\|left-column\|left-brace\|left-align\|left\|layout\|larger\|large\|languageSaveAndChange\|languageRestore\|language\|laissezVibrer\|label\|killCues\|kievanOn\|kievanOff\|keyAlterationOrder\|key\|keepWithTag\|keepAliveInterfaces\|justify-string\|justify-field\|justify\|justified-lines\|italic\|italianChords\|ionian\|inversion\|interscoreline\|instrumentTransposition\|instrumentSwitch\|instrumentName\|instrumentEqualizer\|indent\|include\|inclinatum\|inStaffSegno\|in\|improvisationOn\|improvisationOff\|implicitTimeSignatureVisibility\|ij\|iij\|ignoreFiguredBassRest\|ignoreBarChecks\|ignatzekExceptions\|ignatzekExceptionMusic\|ictus\|huge\|hspace\|highStringOne\|hideStaffSwitch\|hideSplitTiedTabNotes\|hideNotes\|hide\|header\|hcenter-in\|hbracket\|harp-pedal\|harmonicsOn\|harmonicsOff\|harmonicNote\|harmonicByRatio\|harmonicByFret\|harmonicAccidentals\|harmonic\|handleNegativeFrets\|halign\|halfopen\|grobdescriptions\|graceSettings\|grace\|glissando\|germanChords\|general-align\|fz\|funkHeadsMinor\|funkHeads\|fullJazzExceptions\|fromproperty\|fret-diagram-verbose\|fret-diagram-terse\|fret-diagram\|frenchChords\|fraction\|fp\|footnote\|fontsize\|fontSize\|fontCaps\|flexa\|flat\|flageolet\|firstClef\|fingeringOrientations\|finger\|finalis\|filled-box\|fill-with-pattern\|fill-line\|figures\|figuremode\|figuredBassFormatter\|fffff\|ffff\|fff\|ff\|fermataMarkup\|fermata\|featherDurations\|f\|eyeglasses\|extraNatural\|explicitKeySignatureVisibility\|explicitCueClefVisibility\|explicitClefVisibility\|expandFullBarRests\|eventChords\|espressivo\|epsfile\|episemInitium\|episemFinis\|endincipit\|enddim\|enddecresc\|enddecr\|endcresc\|endcr\|endSpanners\|endRepeatType\|ellipse\|easyHeadsOn\|easyHeadsOff\|dynamicUp\|dynamicNeutral\|dynamicDown\|dynamicAbsoluteVolumeFunction\|dynamic\|drums\|drummode\|drumStyleTable\|drumPitchTable\|draw-line\|draw-hline\|draw-dotted-line\|draw-dashed-line\|draw-circle\|downprall\|downmordent\|downbow\|down\|doublesharp\|doubleflat\|doubleRepeatType\|dotsUp\|dotsNeutral\|dotsDown\|dorian\|divisioMinima\|divisioMaxima\|divisioMaior\|displayScheme\|displayMusic\|displayLilyMusic\|dir-column\|dimTextDim\|dimTextDecresc\|dimTextDecr\|dimHairpin\|dim\|description\|descendens\|deprecatedenddim\|deprecatedendcresc\|deprecateddim\|deprecatedcresc\|denies\|deminutum\|defineBarLine\|defaultchild\|defaultTimeSignature\|defaultNoteHeads\|defaultBarType\|default\|decrescendoSpanner\|decresc\|decr\|deadNotesOn\|deadNotesOff\|deadNote\|dashUnderscore\|dashPlus\|dashLarger\|dashHat\|dashDot\|dashDash\|dashBang\|cueDuringWithClef\|cueDuring\|cueClefUnset\|cueClefTranspositionFormatter\|cueClef\|crossStaff\|crescendoSpanner\|crescTextCresc\|crescHairpin\|cresc\|createSpacing\|cr\|context\|consists\|concat\|compressFullBarRests\|compoundMeter\|command-name\|combine\|column-lines\|column\|coda\|cm\|clefTranspositionFormatter\|clefTransposition\|clefPosition\|clefGlyph\|clef\|circulus\|circle\|chords\|chordmodifiers\|chordmode\|chordRootNamer\|chordPrefixSpacer\|chordNoteNamer\|chordNameSeparator\|chordNameLowercaseMinor\|chordNameFunction\|chordNameExceptionsPartial\|chordNameExceptionsFull\|chordNameExceptions\|char\|change\|center-column\|center-align\|center\|cavum\|caps\|caesura\|cadenzaOn\|cadenzaOff\|breve\|breathe\|breakDynamicSpan\|break\|bracket\|box\|bookpart\|bookOutputSuffix\|bookOutputName\|book\|bold\|blackTriangleMarkup\|bigger\|bendAfter\|beamHalfMeasure\|beam\|bassStaffProperties\|bassFigureStaffAlignmentUp\|bassFigureStaffAlignmentNeutral\|bassFigureStaffAlignmentDown\|bassFigureExtendersOn\|bassFigureExtendersOff\|barNumberVisibility\|barNumberFormatter\|barNumberCheck\|barCheckSynchronize\|barAlways\|bar\|balloonText\|balloonLengthOn\|balloonLengthOff\|balloonGrobText\|backslashed-digit\|automaticBars\|autochange\|autoCautionaries\|autoBeaming\|autoBeamOn\|autoBeamOff\|autoBeamCheck\|autoAccidentals\|auto-footnote\|augmentum\|auctum\|assertBeamSlope\|assertBeamQuant\|ascendens\|arrow-head\|arpeggioParenthesisDashed\|arpeggioParenthesis\|arpeggioNormal\|arpeggioBracket\|arpeggioArrowUp\|arpeggioArrowDown\|arpeggio\|appoggiatura\|applyOutput\|applyMusic\|applyContext\|appendToTag\|alternative\|alterBroken\|allowVoltaHook\|allowPageTurn\|alias\|aikenHeadsMinor\|aikenHeads\|afterGraceFraction\|afterGrace\|aeolian\|addlyrics\|additionalPitchPrefix\|addQuote\|addInstrumentDefinition\|accidentalStyle\|acciaccatura\|accepts\|accentus\|accent\|absolute\|abs-fontsize\|aDueText\|RemoveEmptyTabStaffContext\|RemoveEmptyStaffContext\|RemoveEmptyRhythmicStaffContext\|RemoveEmptyDrumStaffContext\|IJ\|IIJ\|C\|B\|AncientRemoveEmptyStaffContext\|A\|n\)\(\A\|\n\)"me=e-1 -syn match lilyReservedWord "\(\A\|\n\)\(warnings\|staff\|spacing\|signature\|shift\|routine\|notes\|handler\|corrected\|beams\|arpeggios\|Volta_engraver\|Voice\|Vertical_align_engraver\|Vaticana_ligature_engraver\|VaticanaVoice\|VaticanaStaff\|Tweak_engraver\|Tuplet_engraver\|Trill_spanner_engraver\|Timing_translator\|Time_signature_performer\|Time_signature_engraver\|Tie_performer\|Tie_engraver\|Text_spanner_engraver\|Text_engraver\|Tempo_performer\|Tab_tie_follow_engraver\|Tab_staff_symbol_engraver\|Tab_note_heads_engraver\|TabVoice\|TabStaff\|System_start_delimiter_engraver\|Stem_engraver\|Stanza_number_engraver\|Stanza_number_align_engraver\|Staff_symbol_engraver\|Staff_performer\|Staff_collecting_engraver\|StaffGroup\|Staff\|Spanner_break_forbid_engraver\|Span_bar_stub_engraver\|Span_bar_engraver\|Span_arpeggio_engraver\|Spacing_engraver\|Slur_performer\|Slur_engraver\|Slash_repeat_engraver\|Separating_line_group_engraver\|Script_row_engraver\|Script_engraver\|Script_column_engraver\|Score\|Rhythmic_column_engraver\|RhythmicStaff\|Rest_engraver\|Rest_collision_engraver\|Repeat_tie_engraver\|Repeat_acknowledge_engraver\|Pure_from_neighbor_engraver\|Pitched_trill_engraver\|Pitch_squash_engraver\|Piano_pedal_performer\|Piano_pedal_engraver\|Piano_pedal_align_engraver\|PianoStaff\|Phrasing_slur_engraver\|PetrucciVoice\|PetrucciStaff\|Percent_repeat_engraver\|Part_combine_engraver\|Parenthesis_engraver\|Paper_column_engraver\|Output_property_engraver\|Ottava_spanner_engraver\|NullVoice\|Note_spacing_engraver\|Note_performer\|Note_name_engraver\|Note_heads_engraver\|Note_head_line_engraver\|NoteNames\|New_fingering_engraver\|Multi_measure_rest_engraver\|Midi_control_function_performer\|Metronome_mark_engraver\|Mensural_ligature_engraver\|MensuralVoice\|MensuralStaff\|Mark_engraver\|Lyrics\|Lyric_performer\|Lyric_engraver\|Ligature_bracket_engraver\|Ledger_line_engraver\|Laissez_vibrer_engraver\|Kievan_ligature_engraver\|KievanVoice\|KievanStaff\|Key_performer\|Key_engraver\|Keep_alive_together_engraver\|Instrument_switch_engraver\|Instrument_name_engraver\|Hyphen_engraver\|Grob_pq_engraver\|GregorianTranscriptionVoice\|GregorianTranscriptionStaff\|GrandStaff\|Grace_spacing_engraver\|Grace_engraver\|Grace_beam_engraver\|Grace_auto_beam_engraver\|Global\|Glissando_engraver\|Fretboard_engraver\|FretBoards\|Forbid_line_break_engraver\|Footnote_engraver\|Font_size_engraver\|Fingering_engraver\|Fingering_column_engraver\|Figured_bass_position_engraver\|Figured_bass_engraver\|FiguredBass\|Extender_engraver\|Episema_engraver\|Dynamics\|Dynamic_performer\|Dynamic_engraver\|Dynamic_align_engraver\|Drum_notes_engraver\|Drum_note_performer\|DrumVoice\|DrumStaff\|Double_percent_repeat_engraver\|Dots_engraver\|Dot_column_engraver\|Devnull\|Default_bar_line_engraver\|Custos_engraver\|Cue_clef_engraver\|CueVoice\|Control_track_performer\|Concurrent_hairpin_engraver\|Collision_engraver\|Cluster_spanner_engraver\|Clef_engraver\|Chord_tremolo_engraver\|Chord_name_engraver\|ChordNames\|ChordNameVoice\|ChoirStaff\|Breathing_sign_engraver\|Break_align_engraver\|Bend_engraver\|Beam_performer\|Beam_engraver\|Beam_collision_engraver\|Bar_number_engraver\|Bar_engraver\|Axis_group_engraver\|Auto_beam_engraver\|Arpeggio_engraver\|Accidental_engraver\|Score\)\(\A\|\n\)"ms=s+1,me=e-1 -syn match lilyNote "\<\(\(\(solx\|soltcs\|soltcb\|solstqt\|solss\|solsqt\|solsd\|solsb\|sols\|solkk\|solk\|soldsd\|soldd\|sold\|solcs\|solcb\|solbtqt\|solbsb\|solbqt\|solbb\|solb\|sol\|six\|sitcs\|sitcb\|sistqt\|siss\|sisqt\|sisd\|sisb\|sis\|sikk\|sik\|sidsd\|sidd\|sid\|sics\|sicb\|sibtqt\|sibsb\|sibqt\|sibb\|sib\|si\|rex\|retcs\|retcb\|restqt\|ress\|resqt\|resd\|resb\|res\|rekk\|rek\|redsd\|redd\|red\|recs\|recb\|rebtqt\|rebsb\|rebqt\|rebb\|reb\|re\|mix\|mitcs\|mitcb\|mistqt\|miss\|misqt\|misd\|misb\|mis\|mikk\|mik\|midsd\|midd\|mid\|mics\|micb\|mibtqt\|mibsb\|mibqt\|mibb\|mib\|mi\|lax\|latcs\|latcb\|lastqt\|lass\|lasqt\|lasd\|lasb\|las\|lakk\|lak\|ladsd\|ladd\|lad\|lacs\|lacb\|labtqt\|labsb\|labqt\|labb\|lab\|la\|hississ\|hiss\|hisis\|hisih\|his\|hih\|hessess\|heses\|heseh\|h\|gx\|gtqs\|gtqf\|gss\|gsharpsharp\|gsharp\|gs\|gqs\|gqf\|gississ\|giss\|gisis\|gisih\|gis\|gih\|gflatflat\|gflat\|gff\|gf\|gessess\|gess\|geses\|geseh\|ges\|geh\|g\|fx\|ftqs\|ftqf\|fss\|fsharpsharp\|fsharp\|fs\|fqs\|fqf\|fississ\|fiss\|fisis\|fisih\|fis\|fih\|fflatflat\|fflat\|fff\|ff\|fessess\|fess\|feses\|feseh\|fes\|feh\|fax\|fatcs\|fatcb\|fastqt\|fass\|fasqt\|fasd\|fasb\|fas\|fakk\|fak\|fadsd\|fadd\|fad\|facs\|facb\|fabtqt\|fabsb\|fabqt\|fabb\|fab\|fa\|f\|ex\|etqs\|etqf\|essess\|ess\|esharpsharp\|esharp\|eses\|eseh\|es\|eqs\|eqf\|eississ\|eiss\|eisis\|eisih\|eis\|eih\|eflatflat\|eflat\|eff\|ef\|eessess\|eess\|eeses\|eeseh\|ees\|eeh\|e\|dx\|dtqs\|dtqf\|dss\|dsharpsharp\|dsharp\|ds\|dqs\|dqf\|dox\|dotcs\|dotcb\|dostqt\|doss\|dosqt\|dosd\|dosb\|dos\|dokk\|dok\|dodsd\|dodd\|dod\|docs\|docb\|dobtqt\|dobsb\|dobqt\|dobb\|dob\|do\|dississ\|diss\|disis\|disih\|dis\|dih\|dflatflat\|dflat\|dff\|df\|dessess\|dess\|deses\|deseh\|des\|deh\|d\|cx\|ctqs\|ctqf\|css\|csharpsharp\|csharp\|cs\|cqs\|cqf\|cississ\|ciss\|cisis\|cisih\|cis\|cih\|cflatflat\|cflat\|cff\|cf\|cessess\|cess\|ceses\|ceseh\|ces\|ceh\|c\|bx\|btqs\|btqf\|bss\|bsharpsharp\|bsharp\|bs\|bqs\|bqf\|bisis\|bisih\|bis\|bih\|bflatflat\|bflat\|bff\|bf\|bess\|beses\|beseh\|bes\|beh\|bb\|b\|ax\|atqs\|atqf\|assess\|ass\|asharpsharp\|asharp\|ases\|aseh\|asas\|asah\|as\|aqs\|aqf\|aississ\|aiss\|aisis\|aisih\|ais\|aih\|aflatflat\|aflat\|aff\|af\|aessess\|aess\|aeses\|aeseh\|aes\|aeh\|a\|a\)\([,']\)\{,4}\([?!]\)\?\)\|s\|r\|R\|q\)\(\(128\|64\|32\|16\|8\|4\|2\|1\|\\breve\|\\longa\|\\maxima\)[.]\{,8}\)\?\(\A\|\n\)"me=e-1 diff --git a/syntax/lilypond.vim b/syntax/lilypond.vim deleted file mode 100644 index c8ea6d46..00000000 --- a/syntax/lilypond.vim +++ /dev/null @@ -1,91 +0,0 @@ -if polyglot#init#is_disabled(expand(':p'), 'lilypond', 'syntax/lilypond.vim') - finish -endif - -" LilyPond syntax file -" Language: LilyPond -" Maintainer: Heikki Junes -" Last Change: 2010 Jul 26 -" -" Installed As: vim/syntax/lilypond.vim -" Uses Generated File: vim/syntax/lilypond-words.vim -" -" For version 5.x: Clear all syntax items -" For version 6.x: Quit when a syntax file was already loaded -if version < 600 - syntax clear -elseif exists("b:current_syntax") - finish -endif - -" Read the LilyPond syntax match groups: -" lilyKeyword, lilyReservedWord, lilyNote -if version < 600 - so :p:h/lilypond-words.vim -else - runtime! syntax/lilypond-words.vim - if exists("b:current_syntax") - unlet b:current_syntax - endif -endif - -" Match also parethesis of angle type -setlocal mps+=<:> - -" Case matters -syn case match - -syn cluster lilyMatchGroup contains=lilyMatcher,lilyString,lilyComment,lilyStatement,lilyNumber,lilySlur,lilySpecial,lilyNote,lilyKeyword,lilyArticulation,lilyReservedWord,lilyScheme - -syn region lilyMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[<>]" end="}" contains=@lilyMatchGroup fold -syn region lilyMatcher matchgroup=Delimiter start="\[" end="]" contains=@lilyMatchGroup fold -syn region lilyMatcher matchgroup=Delimiter start="<" skip="\\\\\|\\[{<>}]" end=">" contains=@lilyMatchGroup fold - -syn region lilyString start=/"/ end=/"/ skip=/\\"/ -syn region lilyComment start="%{" skip="%$" end="%}" -syn region lilyComment start="%\([^{]\|$\)" end="$" - -syn match lilyNumber "[-_^.]\?\d\+[.]\?" -syn match lilySlur "[(~)]" -syn match lilySlur "\\[()]" -syn match lilySpecial "\\[\\]" -" avoid highlighting the extra character in situations like -" c--\mf c^^\mf c__\mf -syn match lilyArticulation "[-_^][-_^+|>.]" - -" Include Scheme syntax highlighting, where appropriate -syn include @embeddedScheme syntax/scheme.vim -unlet b:current_syntax -syn region lilyScheme matchgroup=Delimiter start="#['`]\?(" matchgroup=Delimiter end=")" contains=@embeddedScheme - -" Rest of syntax highlighting rules start here -" -" " Define the default highlighting. -" " For version 5.7 and earlier: only when not done already -" " For version 5.8 and later: only when an item doesn't have highlighting yet -if version >= 508 || !exists("did_lily_syn_inits") - if version < 508 - let did_lily_syn_inits = 1 - command -nargs=+ HiLink hi link - else - command -nargs=+ HiLink hi def link - endif - - HiLink Delimiter Identifier - - HiLink lilyString String - HiLink lilyComment Comment - - HiLink lilyNote Identifier - HiLink lilyArticulation PreProc - HiLink lilyKeyword Keyword - HiLink lilyReservedWord Type - - HiLink lilyNumber Constant - HiLink lilySpecial Special - HiLink lilySlur ModeMsg - - delcommand HiLink -endif - -let b:current_syntax = "lilypond" diff --git a/syntax/ocaml.vim b/syntax/ocaml.vim index 032c133d..c3508ce8 100644 --- a/syntax/ocaml.vim +++ b/syntax/ocaml.vim @@ -27,6 +27,9 @@ if exists("b:current_syntax") && b:current_syntax == "ocaml" finish endif +let s:keepcpo = &cpo +set cpo&vim + " ' can be used in OCaml identifiers setlocal iskeyword+=' @@ -388,4 +391,7 @@ hi def link ocamlPpxEncl ocamlEncl let b:current_syntax = "ocaml" +let &cpo = s:keepcpo +unlet s:keepcpo + " vim: ts=8 diff --git a/syntax/odin.vim b/syntax/odin.vim index bafd9575..10374351 100644 --- a/syntax/odin.vim +++ b/syntax/odin.vim @@ -8,6 +8,7 @@ endif syntax keyword odinUsing using syntax keyword odinTransmute transmute +syntax keyword odinCast cast syntax keyword odinDistinct distinct syntax keyword odinOpaque opaque @@ -68,7 +69,6 @@ syntax match odinFunction "\v<\w*>(\s*::\s*proc)@=" syntax match odinTagNote "@\<\w\+\>" display -syntax match odinClass "\v<[A-Z]\w+>" display syntax match odinConstant "\v<[A-Z0-9,_]+>" display syntax match odinRange "\.\." display syntax match odinHalfRange "\.\.\<" display @@ -79,7 +79,11 @@ syntax match odinReturnOp "->" display syntax match odinInteger "\-\?\<\d\+\>" display syntax match odinFloat "\-\?\<[0-9][0-9_]*\%(\.[0-9][0-9_]*\)\%([eE][+-]\=[0-9_]\+\)\=" display -syntax match odinHex "\-\?\<0x[0-9A-Fa-f]\+\>" display +syntax match odinHex "\<0[xX][0-9A-Fa-f]\+\>" display +syntax match odinDoz "\<0[zZ][0-9a-bA-B]\+\>" display +syntax match odinOct "\<0[oO][0-7]\+\>" display +syntax match odinBin "\<0[bB][01]\+\>" display + syntax match odinAddressOf "&" display syntax match odinDeref "\^" display @@ -93,6 +97,7 @@ syntax region odinBlockComment start=/\v\/\*/ end=/\v\*\// contains=odinBlockCom highlight link odinUsing Keyword highlight link odinTransmute Keyword +highlight link odinCast Keyword highlight link odinDistinct Keyword highlight link odinOpaque Keyword highlight link odinReturn Keyword @@ -162,8 +167,6 @@ highlight link odinFixMe Todo highlight link odinNoCheckin Todo highlight link odinHack Todo -highlight link odinClass Type - highlight link odinTemplate Constant highlight link odinTagNote Identifier @@ -174,5 +177,8 @@ highlight link odinNull Type highlight link odinInteger Number highlight link odinFloat Float highlight link odinHex Number +highlight link odinOct Number +highlight link odinBin Number +highlight link odinDoz Number let b:current_syntax = "odin" diff --git a/syntax/pgsql.vim b/syntax/pgsql.vim index 81acfd2b..70c3d38c 100644 --- a/syntax/pgsql.vim +++ b/syntax/pgsql.vim @@ -9,7 +9,7 @@ endif " License: Vim license (see `:help license`) " Based on PostgreSQL 13.1 -" Automatically generated on 2020-12-30 at 10:21:40 +" Automatically generated on 2021-01-13 at 20:54:21 if exists("b:current_syntax") finish @@ -2010,20 +2010,26 @@ else \ contains=sqlIsKeyword,sqlIsFunction,sqlComment,sqlPlpgsqlKeyword,sqlPlpgsqlVariable,sqlPlpgsqlOperator,sqlNumber,sqlIsOperator,sqlString,sqlTodo endif -" Folding -syn region sqlFold start='^\s*\zs\c\(create\|update\|alter\|select\|insert\|do\)\>' end=';$' transparent fold contains=sqlIsKeyword,sqlIsFunction,sqlComment,sqlIdentifier,sqlNumber,sqlOperator,sqlSpecial,sqlString,sqlTodo,plpgsql +let s:plgroups = 'plpgsql' " PL/ fun! s:add_syntax(s) - execute 'syn include @PL' . a:s . ' syntax/' . a:s . '.vim' + execute 'syn include @PL' .. a:s .. ' syntax/' .. a:s .. '.vim' unlet b:current_syntax - execute 'syn region pgsqlpl' . a:s . ' matchgroup=sqlString start=+\$' . a:s . '\$+ end=+\$' . a:s . '\$+ keepend contains=@PL' . a:s + execute 'syn region pgsqlpl' .. a:s .. ' matchgroup=sqlString start=+\$' .. a:s .. '\$+ end=+\$' .. a:s .. '\$+ keepend contains=@PL' .. a:s + let s:plgroups .= ',pgsqlpl' .. a:s endf for pl in get(b:, 'pgsql_pl', get(g:, 'pgsql_pl', [])) call s:add_syntax(pl) endfor +" Folding +execute "syn region sqlFold start='^\s*\zs\c\(create\|update\|alter\|select\|insert\|do\)\>' end=';$' transparent fold " + \ .. "contains=sqlIsKeyword,sqlIsFunction,sqlComment,sqlIdentifier,sqlNumber,sqlOperator,sqlSpecial,sqlString,sqlTodo," .. s:plgroups + +unlet s:plgroups + " Default highlighting hi def link sqlCatalog Constant hi def link sqlComment Comment diff --git a/syntax/prolog.vim b/syntax/prolog.vim index c7c9dab4..028b0000 100644 --- a/syntax/prolog.vim +++ b/syntax/prolog.vim @@ -5,7 +5,7 @@ endif " Vim syntax file " Language: PROLOG " Maintainer: Anton Kochkov -" Last Change: 2019 Aug 29 +" Last Change: 2021 Jan 05 " There are two sets of highlighting in here: " If the "prolog_highlighting_clean" variable exists, it is rather sparse. @@ -25,16 +25,16 @@ syn case match " Very simple highlighting for comments, clause heads and " character codes. It respects prolog strings and atoms. -syn region prologCComment start=+/\*+ end=+\*/+ -syn match prologComment +%.*+ +syn region prologCComment start=+/\*+ end=+\*/+ contains=@Spell +syn match prologComment +%.*+ contains=@Spell if !exists("prolog_highlighting_no_keyword") syn keyword prologKeyword module meta_predicate multifile dynamic endif syn match prologCharCode +0'\\\=.+ -syn region prologString start=+"+ skip=+\\\\\|\\"+ end=+"+ +syn region prologString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell syn region prologAtom start=+'+ skip=+\\\\\|\\'+ end=+'+ -syn region prologClause matchgroup=prologClauseHead start=+^\s*[a-z]\w*+ matchgroup=Normal end=+\.\s\|\.$+ contains=ALLBUT,prologClause +syn region prologClause matchgroup=prologClauseHead start=+^\s*[a-z]\w*+ matchgroup=Normal end=+\.\s\|\.$+ contains=ALLBUT,prologClause contains=@NoSpell if !exists("prolog_highlighting_clean") diff --git a/syntax/typescriptreact.vim b/syntax/typescriptreact.vim index 123b4caf..02fe927e 100644 --- a/syntax/typescriptreact.vim +++ b/syntax/typescriptreact.vim @@ -111,13 +111,13 @@ syntax match tsxEqual +=+ display contained " " s~~~~~~e -syntax region tsxString contained start=+"+ end=+"+ contains=tsxEntity,@Spell display +syntax region tsxString contained start=+["']+ end=+["']+ contains=tsxEntity,@Spell display " " s~~~~~~~~~~~~~~e syntax region tsxEscJs \ contained - \ contains=@typescriptValue,@tsxComment + \ contains=@typescriptValue,@tsxComment,typescriptObjectSpread \ matchgroup=typescriptBraces \ start=+{+ \ end=+}+ -- cgit v1.2.3