mirror of
https://github.com/sheerun/vim-polyglot.git
synced 2025-11-11 04:53:51 -05:00
Update
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
if !exists('g:polyglot_disabled') || !(index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'jsx') != -1)
|
if !exists('g:polyglot_disabled') || !(index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'jsx') != -1)
|
||||||
|
|
||||||
source <sfile>:h/typescript.vim
|
source <sfile>:h/tsx.vim
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
if !exists('g:polyglot_disabled') || !(index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'jsx') != -1)
|
if !exists('g:polyglot_disabled') || !(index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'jsx') != -1)
|
||||||
|
|
||||||
source <sfile>:h/typescript.vim
|
source <sfile>:h/tsx.vim
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -1,5 +1,28 @@
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
|
" Copyright (c) 2016-2019 Jon Parise <jon@indelible.org>
|
||||||
|
"
|
||||||
|
" Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
" of this software and associated documentation files (the "Software"), to
|
||||||
|
" deal in the Software without restriction, including without limitation the
|
||||||
|
" rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
" sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
" furnished to do so, subject to the following conditions:
|
||||||
|
"
|
||||||
|
" The above copyright notice and this permission notice shall be included in
|
||||||
|
" all copies or substantial portions of the Software.
|
||||||
|
"
|
||||||
|
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
" IN THE SOFTWARE.
|
||||||
|
"
|
||||||
|
" Language: GraphQL
|
||||||
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
if exists('b:current_syntax')
|
if exists('b:current_syntax')
|
||||||
let s:current_syntax = b:current_syntax
|
let s:current_syntax = b:current_syntax
|
||||||
unlet b:current_syntax
|
unlet b:current_syntax
|
||||||
@@ -11,10 +34,10 @@ endif
|
|||||||
|
|
||||||
let s:tags = '\%(' . join(graphql#javascript_tags(), '\|') . '\)'
|
let s:tags = '\%(' . join(graphql#javascript_tags(), '\|') . '\)'
|
||||||
|
|
||||||
exec 'syntax region graphqlTemplateString start=+' . s:tags . '\@20<=`+ skip=+\\`+ end=+`+ contains=@GraphQLSyntax,jsTemplateExpression,jsSpecial extend'
|
if graphql#has_syntax_group('jsTemplateExpression')
|
||||||
|
" pangloss/vim-javascript
|
||||||
|
exec 'syntax region graphqlTemplateString start=+' . s:tags . '\@20<=`+ skip=+\\\\\|\\`+ end=+`+ contains=@GraphQLSyntax,jsTemplateExpression,jsSpecial extend'
|
||||||
exec 'syntax match graphqlTaggedTemplate +' . s:tags . '\ze`+ nextgroup=graphqlTemplateString'
|
exec 'syntax match graphqlTaggedTemplate +' . s:tags . '\ze`+ nextgroup=graphqlTemplateString'
|
||||||
|
|
||||||
" Support expression interpolation ((${...})) inside template strings.
|
|
||||||
syntax region graphqlTemplateExpression start=+${+ end=+}+ contained contains=jsTemplateExpression containedin=graphqlFold keepend
|
syntax region graphqlTemplateExpression start=+${+ end=+}+ contained contains=jsTemplateExpression containedin=graphqlFold keepend
|
||||||
|
|
||||||
hi def link graphqlTemplateString jsTemplateString
|
hi def link graphqlTemplateString jsTemplateString
|
||||||
@@ -23,5 +46,19 @@ hi def link graphqlTemplateExpression jsTemplateExpression
|
|||||||
|
|
||||||
syn cluster jsExpression add=graphqlTaggedTemplate
|
syn cluster jsExpression add=graphqlTaggedTemplate
|
||||||
syn cluster graphqlTaggedTemplate add=graphqlTemplateString
|
syn cluster graphqlTaggedTemplate add=graphqlTemplateString
|
||||||
|
elseif graphql#has_syntax_group('javaScriptStringT')
|
||||||
|
" runtime/syntax/javascript.vim
|
||||||
|
exec 'syntax region graphqlTemplateString start=+' . s:tags . '\@20<=`+ skip=+\\\\\|\\`+ end=+`+ contains=@GraphQLSyntax,javaScriptSpecial,javaScriptEmbed,@htmlPreproc extend'
|
||||||
|
exec 'syntax match graphqlTaggedTemplate +' . s:tags . '\ze`+ nextgroup=graphqlTemplateString'
|
||||||
|
syntax region graphqlTemplateExpression start=+${+ end=+}+ contained contains=@javaScriptEmbededExpr containedin=graphqlFold keepend
|
||||||
|
|
||||||
|
hi def link graphqlTemplateString javaScriptStringT
|
||||||
|
hi def link graphqlTaggedTemplate javaScriptEmbed
|
||||||
|
hi def link graphqlTemplateExpression javaScriptEmbed
|
||||||
|
|
||||||
|
syn cluster htmlJavaScript add=graphqlTaggedTemplate
|
||||||
|
syn cluster javaScriptEmbededExpr add=graphqlTaggedTemplate
|
||||||
|
syn cluster graphqlTaggedTemplate add=graphqlTemplateString
|
||||||
|
endif
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
5
after/syntax/javascriptreact/graphql.vim
Normal file
5
after/syntax/javascriptreact/graphql.vim
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
|
runtime! after/syntax/javascript/graphql.vim
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -72,7 +72,7 @@ syntax region jsxExpressionBlock
|
|||||||
\ end=+}+
|
\ end=+}+
|
||||||
\ contained
|
\ contained
|
||||||
\ extend
|
\ extend
|
||||||
\ contains=@jsExpression,jsSpreadExpression,@javascriptExpression,javascriptSpreadOp,@javaScriptEmbededExpr,@typescriptExpression,typescriptObjectSpread
|
\ contains=@jsExpression,jsSpreadExpression,@javascriptExpression,javascriptSpreadOp,@javaScriptEmbededExpr,@typescriptExpression,typescriptObjectSpread,jsComment,@javascriptComments,javaScriptLineComment,javaScriptComment,typescriptLineComment,typescriptComment
|
||||||
|
|
||||||
" <foo.bar>
|
" <foo.bar>
|
||||||
" ~
|
" ~
|
||||||
|
|||||||
@@ -1,28 +1,63 @@
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
if !exists('g:polyglot_disabled') || !(index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'jsx') != -1)
|
||||||
|
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
" Vim syntax file
|
||||||
|
"
|
||||||
|
" Language: javascript.jsx
|
||||||
|
" Maintainer: MaxMellon <maxmellon1994@gmail.com>
|
||||||
|
" Depends: leafgarland/typescript-vim
|
||||||
|
"
|
||||||
|
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||||
|
|
||||||
|
if get(g:, 'vim_jsx_pretty_disable_tsx', 0)
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
let s:jsx_cpo = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
syntax case match
|
||||||
|
|
||||||
" GraphQL Support
|
|
||||||
if exists('b:current_syntax')
|
if exists('b:current_syntax')
|
||||||
let s:current_syntax = b:current_syntax
|
let s:current_syntax = b:current_syntax
|
||||||
unlet b:current_syntax
|
unlet b:current_syntax
|
||||||
endif
|
endif
|
||||||
syn include @GraphQLSyntax syntax/graphql.vim
|
|
||||||
if exists('s:current_syntax')
|
if exists('s:current_syntax')
|
||||||
let b:current_syntax = s:current_syntax
|
let b:current_syntax = s:current_syntax
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let s:tags = '\%(' . join(graphql#javascript_tags(), '\|') . '\)'
|
" refine the typescript line comment
|
||||||
|
syntax region typescriptLineComment start=+//+ end=/$/ contains=@Spell,typescriptCommentTodo,typescriptRef extend keepend
|
||||||
|
|
||||||
exec 'syntax region graphqlTemplateString start=+' . s:tags . '\@20<=`+ skip=+\\`+ end=+`+ contains=@GraphQLSyntax,typescriptTemplateSubstitution extend'
|
for syntax_name in ['tsxRegion', 'tsxFragment']
|
||||||
exec 'syntax match graphqlTaggedTemplate +' . s:tags . '\ze`+ nextgroup=graphqlTemplateString'
|
if hlexists(syntax_name)
|
||||||
|
exe 'syntax clear ' . syntax_name
|
||||||
|
endif
|
||||||
|
endfor
|
||||||
|
|
||||||
" Support expression interpolation ((${...})) inside template strings.
|
if !hlexists('typescriptTypeCast')
|
||||||
syntax region graphqlTemplateExpression start=+${+ end=+}+ contained contains=typescriptTemplateSubstitution containedin=graphqlFold keepend
|
" add a typescriptBlock group for typescript
|
||||||
|
syntax region typescriptBlock
|
||||||
|
\ matchgroup=typescriptBraces
|
||||||
|
\ start="{"
|
||||||
|
\ end="}"
|
||||||
|
\ contained
|
||||||
|
\ extend
|
||||||
|
\ contains=@typescriptExpression,typescriptBlock
|
||||||
|
\ fold
|
||||||
|
hi def link typescriptTypeBrackets typescriptOpSymbols
|
||||||
|
endif
|
||||||
|
|
||||||
hi def link graphqlTemplateString typescriptTemplate
|
runtime syntax/jsx_pretty.vim
|
||||||
hi def link graphqlTemplateExpression typescriptTemplateSubstitution
|
syntax cluster typescriptExpression add=jsxRegion,typescriptParens
|
||||||
|
" Fix type casting ambiguity with JSX syntax
|
||||||
|
syntax match typescriptTypeBrackets +[<>]+ contained
|
||||||
|
syntax match typescriptTypeCast +<\([_$A-Za-z0-9]\+\)>\%(\s*\%([_$A-Za-z0-9]\+\s*;\?\|(\)\%(\_[^<]*</\1>\)\@!\)\@=+ contains=typescriptTypeBrackets,@typescriptType,typescriptType nextgroup=@typescriptExpression
|
||||||
|
|
||||||
syn cluster typescriptExpression add=graphqlTaggedTemplate
|
let b:current_syntax = 'typescript.tsx'
|
||||||
syn cluster graphqlTaggedTemplate add=graphqlTemplateString
|
|
||||||
|
|
||||||
|
let &cpo = s:jsx_cpo
|
||||||
|
unlet s:jsx_cpo
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -1,60 +0,0 @@
|
|||||||
if !exists('g:polyglot_disabled') || !(index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'jsx') != -1)
|
|
||||||
|
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
" Vim syntax file
|
|
||||||
"
|
|
||||||
" Language: javascript.jsx
|
|
||||||
" Maintainer: MaxMellon <maxmellon1994@gmail.com>
|
|
||||||
" Depends: leafgarland/typescript-vim
|
|
||||||
"
|
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
|
|
||||||
if get(g:, 'vim_jsx_pretty_disable_tsx', 0)
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
|
|
||||||
let s:jsx_cpo = &cpo
|
|
||||||
set cpo&vim
|
|
||||||
|
|
||||||
syntax case match
|
|
||||||
|
|
||||||
if exists('b:current_syntax')
|
|
||||||
let s:current_syntax = b:current_syntax
|
|
||||||
unlet b:current_syntax
|
|
||||||
endif
|
|
||||||
|
|
||||||
if exists('s:current_syntax')
|
|
||||||
let b:current_syntax = s:current_syntax
|
|
||||||
endif
|
|
||||||
|
|
||||||
" refine the typescript line comment
|
|
||||||
syntax region typescriptLineComment start=+//+ end=/$/ contains=@Spell,typescriptCommentTodo,typescriptRef extend keepend
|
|
||||||
|
|
||||||
for syntax_name in ['tsxRegion', 'tsxFragment']
|
|
||||||
if hlexists(syntax_name)
|
|
||||||
exe 'syntax clear ' . syntax_name
|
|
||||||
endif
|
|
||||||
endfor
|
|
||||||
|
|
||||||
if !hlexists('typescriptTypeCast')
|
|
||||||
" add a typescriptBlock group for typescript
|
|
||||||
syntax region typescriptBlock
|
|
||||||
\ matchgroup=typescriptBraces
|
|
||||||
\ start="{"
|
|
||||||
\ end="}"
|
|
||||||
\ contained
|
|
||||||
\ extend
|
|
||||||
\ contains=@typescriptExpression,typescriptBlock
|
|
||||||
\ fold
|
|
||||||
endif
|
|
||||||
|
|
||||||
syntax cluster typescriptExpression add=jsxRegion,typescriptParens
|
|
||||||
|
|
||||||
runtime syntax/jsx_pretty.vim
|
|
||||||
|
|
||||||
let b:current_syntax = 'typescript.tsx'
|
|
||||||
|
|
||||||
let &cpo = s:jsx_cpo
|
|
||||||
unlet s:jsx_cpo
|
|
||||||
|
|
||||||
endif
|
|
||||||
@@ -1,5 +1,28 @@
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
|
" Copyright (c) 2016-2019 Jon Parise <jon@indelible.org>
|
||||||
|
"
|
||||||
|
" Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
" of this software and associated documentation files (the "Software"), to
|
||||||
|
" deal in the Software without restriction, including without limitation the
|
||||||
|
" rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
" sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
" furnished to do so, subject to the following conditions:
|
||||||
|
"
|
||||||
|
" The above copyright notice and this permission notice shall be included in
|
||||||
|
" all copies or substantial portions of the Software.
|
||||||
|
"
|
||||||
|
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
" IN THE SOFTWARE.
|
||||||
|
"
|
||||||
|
" Language: GraphQL
|
||||||
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
if exists('b:current_syntax')
|
if exists('b:current_syntax')
|
||||||
let s:current_syntax = b:current_syntax
|
let s:current_syntax = b:current_syntax
|
||||||
unlet b:current_syntax
|
unlet b:current_syntax
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
if !exists('g:polyglot_disabled') || !(index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'jsx') != -1)
|
if !exists('g:polyglot_disabled') || !(index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'typescript') != -1 || index(g:polyglot_disabled, 'jsx') != -1)
|
||||||
|
|
||||||
source <sfile>:h/typescript.vim
|
source <sfile>:h/tsx.vim
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
5
after/syntax/typescriptreact/graphql.vim
Normal file
5
after/syntax/typescriptreact/graphql.vim
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
|
runtime! after/syntax/typescript/graphql.vim
|
||||||
|
|
||||||
|
endif
|
||||||
5
after/syntax/vue/graphql.vim
Normal file
5
after/syntax/vue/graphql.vim
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
|
runtime! after/syntax/javascript/graphql.vim
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -122,7 +122,7 @@ fu! csv#Init(start, end, ...) "{{{3
|
|||||||
" Enable vartabs for tab delimited files
|
" Enable vartabs for tab delimited files
|
||||||
if b:delimiter=="\t" && has("vartabs")&& !exists("b:csv_fixed_width_cols")
|
if b:delimiter=="\t" && has("vartabs")&& !exists("b:csv_fixed_width_cols")
|
||||||
if get(b:, 'col_width', []) ==# []
|
if get(b:, 'col_width', []) ==# []
|
||||||
call csv#CalculateColumnWidth(line('$'))
|
call csv#CalculateColumnWidth(line('$'), 1)
|
||||||
endif
|
endif
|
||||||
let &l:vts=join(b:col_width, ',')
|
let &l:vts=join(b:col_width, ',')
|
||||||
let g:csv_no_conceal=1
|
let g:csv_no_conceal=1
|
||||||
@@ -636,7 +636,7 @@ fu! csv#ArrangeCol(first, last, bang, limit, ...) range "{{{3
|
|||||||
endif
|
endif
|
||||||
let cur=winsaveview()
|
let cur=winsaveview()
|
||||||
" Force recalculation of Column width
|
" Force recalculation of Column width
|
||||||
let row = exists("a:1") ? a:1 : ''
|
let row = exists("a:1") ? a:1 : line('$')
|
||||||
if a:bang || !empty(row)
|
if a:bang || !empty(row)
|
||||||
if a:bang && exists("b:col_width")
|
if a:bang && exists("b:col_width")
|
||||||
" Unarrange, so that if csv_arrange_align has changed
|
" Unarrange, so that if csv_arrange_align has changed
|
||||||
@@ -670,7 +670,7 @@ fu! csv#ArrangeCol(first, last, bang, limit, ...) range "{{{3
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
if !exists("b:col_width")
|
if !exists("b:col_width")
|
||||||
call csv#CalculateColumnWidth(row)
|
call csv#CalculateColumnWidth(row, 1)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" abort on empty file
|
" abort on empty file
|
||||||
|
|||||||
@@ -84,7 +84,18 @@ function! go#config#StatuslineDuration() abort
|
|||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! go#config#SnippetEngine() abort
|
function! go#config#SnippetEngine() abort
|
||||||
return get(g:, 'go_snippet_engine', 'automatic')
|
let l:engine = get(g:, 'go_snippet_engine', 'automatic')
|
||||||
|
if l:engine is? "automatic"
|
||||||
|
if get(g:, 'did_plugin_ultisnips') is 1
|
||||||
|
let l:engine = 'ultisnips'
|
||||||
|
elseif get(g:, 'loaded_neosnippet') is 1
|
||||||
|
let l:engine = 'neosnippet'
|
||||||
|
elseif get(g:, 'loaded_minisnip') is 1
|
||||||
|
let l:engine = 'minisnip'
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
return l:engine
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! go#config#PlayBrowserCommand() abort
|
function! go#config#PlayBrowserCommand() abort
|
||||||
@@ -516,6 +527,10 @@ function! go#config#GoplsFuzzyMatching() abort
|
|||||||
return get(g:, 'go_gopls_fuzzy_matching', 1)
|
return get(g:, 'go_gopls_fuzzy_matching', 1)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
function! go#config#GoplsStaticCheck() abort
|
||||||
|
return get(g:, 'go_gopls_staticcheck', 0)
|
||||||
|
endfunction
|
||||||
|
|
||||||
function! go#config#GoplsUsePlaceholders() abort
|
function! go#config#GoplsUsePlaceholders() abort
|
||||||
return get(g:, 'go_gopls_use_placeholders', 0)
|
return get(g:, 'go_gopls_use_placeholders', 0)
|
||||||
endfunction
|
endfunction
|
||||||
@@ -524,6 +539,10 @@ function! go#config#GoplsEnabled() abort
|
|||||||
return get(g:, 'go_gopls_enabled', 1)
|
return get(g:, 'go_gopls_enabled', 1)
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
function! go#config#DiagnosticsEnabled() abort
|
||||||
|
return get(g:, 'go_diagnostics_enabled', 0)
|
||||||
|
endfunction
|
||||||
|
|
||||||
" Set the default value. A value of "1" is a shortcut for this, for
|
" Set the default value. A value of "1" is a shortcut for this, for
|
||||||
" compatibility reasons.
|
" compatibility reasons.
|
||||||
if exists("g:go_gorename_prefill") && g:go_gorename_prefill == 1
|
if exists("g:go_gorename_prefill") && g:go_gorename_prefill == 1
|
||||||
|
|||||||
@@ -1,13 +1,36 @@
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
" Vim plugin
|
" Copyright (c) 2016-2019 Jon Parise <jon@indelible.org>
|
||||||
|
"
|
||||||
|
" Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
" of this software and associated documentation files (the "Software"), to
|
||||||
|
" deal in the Software without restriction, including without limitation the
|
||||||
|
" rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
" sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
" furnished to do so, subject to the following conditions:
|
||||||
|
"
|
||||||
|
" The above copyright notice and this permission notice shall be included in
|
||||||
|
" all copies or substantial portions of the Software.
|
||||||
|
"
|
||||||
|
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
" IN THE SOFTWARE.
|
||||||
|
"
|
||||||
" Language: GraphQL
|
" Language: GraphQL
|
||||||
" Maintainer: Jon Parise <jon@indelible.org>
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
if exists('g:autoloaded_graphql')
|
function! graphql#has_syntax_group(group) abort
|
||||||
finish
|
try
|
||||||
endif
|
silent execute 'silent highlight ' . a:group
|
||||||
let g:autoloaded_graphql = 1
|
catch
|
||||||
|
return v:false
|
||||||
|
endtry
|
||||||
|
return v:true
|
||||||
|
endfunction
|
||||||
|
|
||||||
function! graphql#javascript_tags() abort
|
function! graphql#javascript_tags() abort
|
||||||
return get(g:, 'graphql_javascript_tags', ['gql', 'graphql', 'Relay.QL'])
|
return get(g:, 'graphql_javascript_tags', ['gql', 'graphql', 'Relay.QL'])
|
||||||
|
|||||||
@@ -519,6 +519,29 @@ endif
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
augroup filetypedetect
|
augroup filetypedetect
|
||||||
" graphql, from graphql.vim in jparise/vim-graphql:_ALL
|
" graphql, from graphql.vim in jparise/vim-graphql:_ALL
|
||||||
|
" Copyright (c) 2016-2019 Jon Parise <jon@indelible.org>
|
||||||
|
"
|
||||||
|
" Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
" of this software and associated documentation files (the "Software"), to
|
||||||
|
" deal in the Software without restriction, including without limitation the
|
||||||
|
" rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
" sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
" furnished to do so, subject to the following conditions:
|
||||||
|
"
|
||||||
|
" The above copyright notice and this permission notice shall be included in
|
||||||
|
" all copies or substantial portions of the Software.
|
||||||
|
"
|
||||||
|
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
" IN THE SOFTWARE.
|
||||||
|
"
|
||||||
|
" Language: GraphQL
|
||||||
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
" vint: -ProhibitAutocmdWithNoGroup
|
" vint: -ProhibitAutocmdWithNoGroup
|
||||||
au BufRead,BufNewFile *.graphql,*.graphqls,*.gql setfiletype graphql
|
au BufRead,BufNewFile *.graphql,*.graphqls,*.gql setfiletype graphql
|
||||||
augroup end
|
augroup end
|
||||||
|
|||||||
@@ -32,6 +32,20 @@ if exists('g:dhall_strip_whitespace')
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
function! DhallFormat()
|
||||||
|
let cursor = getpos('.')
|
||||||
|
exec 'silent %!dhall format'
|
||||||
|
call setpos('.', cursor)
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
if exists('g:dhall_format')
|
||||||
|
if g:dhall_format == 1
|
||||||
|
augroup dhall
|
||||||
|
au BufWritePre *.dhall call DhallFormat()
|
||||||
|
augroup END
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
augroup dhall
|
augroup dhall
|
||||||
au BufNewFile,BufRead *.dhall setl shiftwidth=2
|
au BufNewFile,BufRead *.dhall setl shiftwidth=2
|
||||||
augroup END
|
augroup END
|
||||||
|
|||||||
@@ -1,6 +1,25 @@
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
" Vim filetype plugin
|
" Copyright (c) 2016-2019 Jon Parise <jon@indelible.org>
|
||||||
|
"
|
||||||
|
" Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
" of this software and associated documentation files (the "Software"), to
|
||||||
|
" deal in the Software without restriction, including without limitation the
|
||||||
|
" rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
" sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
" furnished to do so, subject to the following conditions:
|
||||||
|
"
|
||||||
|
" The above copyright notice and this permission notice shall be included in
|
||||||
|
" all copies or substantial portions of the Software.
|
||||||
|
"
|
||||||
|
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
" IN THE SOFTWARE.
|
||||||
|
"
|
||||||
" Language: GraphQL
|
" Language: GraphQL
|
||||||
" Maintainer: Jon Parise <jon@indelible.org>
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,25 @@
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
" Vim indent file
|
" Copyright (c) 2016-2019 Jon Parise <jon@indelible.org>
|
||||||
|
"
|
||||||
|
" Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
" of this software and associated documentation files (the "Software"), to
|
||||||
|
" deal in the Software without restriction, including without limitation the
|
||||||
|
" rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
" sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
" furnished to do so, subject to the following conditions:
|
||||||
|
"
|
||||||
|
" The above copyright notice and this permission notice shall be included in
|
||||||
|
" all copies or substantial portions of the Software.
|
||||||
|
"
|
||||||
|
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
" IN THE SOFTWARE.
|
||||||
|
"
|
||||||
" Language: GraphQL
|
" Language: GraphQL
|
||||||
" Maintainer: Jon Parise <jon@indelible.org>
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,13 @@ endif
|
|||||||
|
|
||||||
let s:itemization_pattern = '^\s*[-*+]\s'
|
let s:itemization_pattern = '^\s*[-*+]\s'
|
||||||
let s:enumeration_pattern = '^\s*\%(\d\+\|#\)\.\s\+'
|
let s:enumeration_pattern = '^\s*\%(\d\+\|#\)\.\s\+'
|
||||||
|
let s:note_pattern = '^\.\. '
|
||||||
|
|
||||||
|
function! s:get_paragraph_start()
|
||||||
|
let paragraph_mark_start = getpos("'{")[1]
|
||||||
|
return getline(paragraph_mark_start) =~
|
||||||
|
\ '\S' ? paragraph_mark_start : paragraph_mark_start + 1
|
||||||
|
endfunction
|
||||||
|
|
||||||
function GetRSTIndent()
|
function GetRSTIndent()
|
||||||
let lnum = prevnonblank(v:lnum - 1)
|
let lnum = prevnonblank(v:lnum - 1)
|
||||||
@@ -30,6 +37,13 @@ function GetRSTIndent()
|
|||||||
let ind = indent(lnum)
|
let ind = indent(lnum)
|
||||||
let line = getline(lnum)
|
let line = getline(lnum)
|
||||||
|
|
||||||
|
let psnum = s:get_paragraph_start()
|
||||||
|
if psnum != 0
|
||||||
|
if getline(psnum) =~ s:note_pattern
|
||||||
|
let ind = 3
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
if line =~ s:itemization_pattern
|
if line =~ s:itemization_pattern
|
||||||
let ind += 2
|
let ind += 2
|
||||||
elseif line =~ s:enumeration_pattern
|
elseif line =~ s:enumeration_pattern
|
||||||
|
|||||||
109
syntax/c.vim
109
syntax/c.vim
@@ -3,7 +3,7 @@ if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'c/c++') == -1
|
|||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: C
|
" Language: C
|
||||||
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
||||||
" Last Change: 2016 Nov 18
|
" Last Change: 2019 Nov 29
|
||||||
|
|
||||||
" Quit when a (custom) syntax file was already loaded
|
" Quit when a (custom) syntax file was already loaded
|
||||||
if exists("b:current_syntax")
|
if exists("b:current_syntax")
|
||||||
@@ -15,6 +15,14 @@ set cpo&vim
|
|||||||
|
|
||||||
let s:ft = matchstr(&ft, '^\([^.]\)\+')
|
let s:ft = matchstr(&ft, '^\([^.]\)\+')
|
||||||
|
|
||||||
|
" Optional embedded Autodoc parsing
|
||||||
|
" To enable it add: let g:c_autodoc = 1
|
||||||
|
" to your .vimrc
|
||||||
|
if exists("c_autodoc")
|
||||||
|
syn include @cAutodoc <sfile>:p:h/autodoc.vim
|
||||||
|
unlet b:current_syntax
|
||||||
|
endif
|
||||||
|
|
||||||
" A bunch of useful C keywords
|
" A bunch of useful C keywords
|
||||||
syn keyword cStatement goto break return continue asm
|
syn keyword cStatement goto break return continue asm
|
||||||
syn keyword cLabel case default
|
syn keyword cLabel case default
|
||||||
@@ -131,7 +139,7 @@ if exists("c_no_curly_error")
|
|||||||
syn match cParenError display ")"
|
syn match cParenError display ")"
|
||||||
syn match cErrInParen display contained "^^<%\|^%>"
|
syn match cErrInParen display contained "^^<%\|^%>"
|
||||||
else
|
else
|
||||||
syn region cParen transparent start='(' end=')' end='}'me=s-1 contains=ALLBUT,cBlock,@cParenGroup,cCppParen,@cStringGroup,@Spell
|
syn region cParen transparent start='(' end=')' contains=ALLBUT,cBlock,@cParenGroup,cCppParen,@cStringGroup,@Spell
|
||||||
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
" cCppParen: same as cParen but ends at end-of-line; used in cDefine
|
||||||
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
|
syn region cCppParen transparent start='(' skip='\\$' excludenl end=')' end='$' contained contains=ALLBUT,@cParenGroup,cParen,cString,@Spell
|
||||||
syn match cParenError display ")"
|
syn match cParenError display ")"
|
||||||
@@ -214,7 +222,7 @@ if exists("c_comment_strings")
|
|||||||
syn match cCommentSkip contained "^\s*\*\($\|\s\+\)"
|
syn match cCommentSkip contained "^\s*\*\($\|\s\+\)"
|
||||||
syn region cCommentString contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=cSpecial,cCommentSkip
|
syn region cCommentString contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end=+\*/+me=s-1 contains=cSpecial,cCommentSkip
|
||||||
syn region cComment2String contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=cSpecial
|
syn region cComment2String contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end="$" contains=cSpecial
|
||||||
syn region cCommentL start="//" skip="\\$" end="$" keepend contains=@cCommentGroup,cComment2String,cCharacter,cNumbersCom,cSpaceError,@Spell
|
syn region cCommentL start="//" skip="\\$" end="$" keepend contains=@cCommentGroup,cComment2String,cCharacter,cNumbersCom,cSpaceError,cWrongComTail,@Spell
|
||||||
if exists("c_no_comment_fold")
|
if exists("c_no_comment_fold")
|
||||||
" Use "extend" here to have preprocessor lines not terminate halfway a
|
" Use "extend" here to have preprocessor lines not terminate halfway a
|
||||||
" comment.
|
" comment.
|
||||||
@@ -233,6 +241,7 @@ endif
|
|||||||
" keep a // comment separately, it terminates a preproc. conditional
|
" keep a // comment separately, it terminates a preproc. conditional
|
||||||
syn match cCommentError display "\*/"
|
syn match cCommentError display "\*/"
|
||||||
syn match cCommentStartError display "/\*"me=e-1 contained
|
syn match cCommentStartError display "/\*"me=e-1 contained
|
||||||
|
syn match cWrongComTail display "\*/"
|
||||||
|
|
||||||
syn keyword cOperator sizeof
|
syn keyword cOperator sizeof
|
||||||
if exists("c_gnu")
|
if exists("c_gnu")
|
||||||
@@ -282,6 +291,22 @@ if !exists("c_no_c11")
|
|||||||
syn keyword cOperator _Static_assert static_assert
|
syn keyword cOperator _Static_assert static_assert
|
||||||
syn keyword cStorageClass _Thread_local thread_local
|
syn keyword cStorageClass _Thread_local thread_local
|
||||||
syn keyword cType char16_t char32_t
|
syn keyword cType char16_t char32_t
|
||||||
|
" C11 atomics (take down the shield wall!)
|
||||||
|
syn keyword cType atomic_bool atomic_char atomic_schar atomic_uchar
|
||||||
|
syn keyword Ctype atomic_short atomic_ushort atomic_int atomic_uint
|
||||||
|
syn keyword cType atomic_long atomic_ulong atomic_llong atomic_ullong
|
||||||
|
syn keyword cType atomic_char16_t atomic_char32_t atomic_wchar_t
|
||||||
|
syn keyword cType atomic_int_least8_t atomic_uint_least8_t
|
||||||
|
syn keyword cType atomic_int_least16_t atomic_uint_least16_t
|
||||||
|
syn keyword cType atomic_int_least32_t atomic_uint_least32_t
|
||||||
|
syn keyword cType atomic_int_least64_t atomic_uint_least64_t
|
||||||
|
syn keyword cType atomic_int_fast8_t atomic_uint_fast8_t
|
||||||
|
syn keyword cType atomic_int_fast16_t atomic_uint_fast16_t
|
||||||
|
syn keyword cType atomic_int_fast32_t atomic_uint_fast32_t
|
||||||
|
syn keyword cType atomic_int_fast64_t atomic_uint_fast64_t
|
||||||
|
syn keyword cType atomic_intptr_t atomic_uintptr_t
|
||||||
|
syn keyword cType atomic_size_t atomic_ptrdiff_t
|
||||||
|
syn keyword cType atomic_intmax_t atomic_uintmax_t
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
|
if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
|
||||||
@@ -313,44 +338,32 @@ if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu")
|
|||||||
syn keyword cConstant PTRDIFF_MIN PTRDIFF_MAX SIG_ATOMIC_MIN SIG_ATOMIC_MAX
|
syn keyword cConstant PTRDIFF_MIN PTRDIFF_MAX SIG_ATOMIC_MIN SIG_ATOMIC_MAX
|
||||||
syn keyword cConstant SIZE_MAX WCHAR_MIN WCHAR_MAX WINT_MIN WINT_MAX
|
syn keyword cConstant SIZE_MAX WCHAR_MIN WCHAR_MAX WINT_MIN WINT_MAX
|
||||||
endif
|
endif
|
||||||
syn keyword cConstant FLT_RADIX FLT_ROUNDS
|
syn keyword cConstant FLT_RADIX FLT_ROUNDS FLT_DIG FLT_MANT_DIG FLT_EPSILON DBL_DIG DBL_MANT_DIG DBL_EPSILON
|
||||||
syn keyword cConstant FLT_DIG FLT_MANT_DIG FLT_EPSILON
|
syn keyword cConstant LDBL_DIG LDBL_MANT_DIG LDBL_EPSILON FLT_MIN FLT_MAX FLT_MIN_EXP FLT_MAX_EXP FLT_MIN_10_EXP FLT_MAX_10_EXP
|
||||||
syn keyword cConstant DBL_DIG DBL_MANT_DIG DBL_EPSILON
|
syn keyword cConstant DBL_MIN DBL_MAX DBL_MIN_EXP DBL_MAX_EXP DBL_MIN_10_EXP DBL_MAX_10_EXP LDBL_MIN LDBL_MAX LDBL_MIN_EXP LDBL_MAX_EXP
|
||||||
syn keyword cConstant LDBL_DIG LDBL_MANT_DIG LDBL_EPSILON
|
syn keyword cConstant LDBL_MIN_10_EXP LDBL_MAX_10_EXP HUGE_VAL CLOCKS_PER_SEC NULL LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY
|
||||||
syn keyword cConstant FLT_MIN FLT_MAX FLT_MIN_EXP FLT_MAX_EXP
|
syn keyword cConstant LC_NUMERIC LC_TIME SIG_DFL SIG_ERR SIG_IGN SIGABRT SIGFPE SIGILL SIGHUP SIGINT SIGSEGV SIGTERM
|
||||||
syn keyword cConstant FLT_MIN_10_EXP FLT_MAX_10_EXP
|
|
||||||
syn keyword cConstant DBL_MIN DBL_MAX DBL_MIN_EXP DBL_MAX_EXP
|
|
||||||
syn keyword cConstant DBL_MIN_10_EXP DBL_MAX_10_EXP
|
|
||||||
syn keyword cConstant LDBL_MIN LDBL_MAX LDBL_MIN_EXP LDBL_MAX_EXP
|
|
||||||
syn keyword cConstant LDBL_MIN_10_EXP LDBL_MAX_10_EXP
|
|
||||||
syn keyword cConstant HUGE_VAL CLOCKS_PER_SEC NULL
|
|
||||||
syn keyword cConstant LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY
|
|
||||||
syn keyword cConstant LC_NUMERIC LC_TIME
|
|
||||||
syn keyword cConstant SIG_DFL SIG_ERR SIG_IGN
|
|
||||||
syn keyword cConstant SIGABRT SIGFPE SIGILL SIGHUP SIGINT SIGSEGV SIGTERM
|
|
||||||
" Add POSIX signals as well...
|
" Add POSIX signals as well...
|
||||||
syn keyword cConstant SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE SIGHUP
|
syn keyword cConstant SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT SIGKILL SIGPIPE SIGQUIT SIGSEGV
|
||||||
syn keyword cConstant SIGILL SIGINT SIGKILL SIGPIPE SIGQUIT SIGSEGV
|
syn keyword cConstant SIGSTOP SIGTERM SIGTRAP SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2
|
||||||
syn keyword cConstant SIGSTOP SIGTERM SIGTRAP SIGTSTP SIGTTIN SIGTTOU
|
syn keyword cConstant _IOFBF _IOLBF _IONBF BUFSIZ EOF WEOF FOPEN_MAX FILENAME_MAX L_tmpnam
|
||||||
syn keyword cConstant SIGUSR1 SIGUSR2
|
syn keyword cConstant SEEK_CUR SEEK_END SEEK_SET TMP_MAX stderr stdin stdout EXIT_FAILURE EXIT_SUCCESS RAND_MAX
|
||||||
syn keyword cConstant _IOFBF _IOLBF _IONBF BUFSIZ EOF WEOF
|
|
||||||
syn keyword cConstant FOPEN_MAX FILENAME_MAX L_tmpnam
|
|
||||||
syn keyword cConstant SEEK_CUR SEEK_END SEEK_SET
|
|
||||||
syn keyword cConstant TMP_MAX stderr stdin stdout
|
|
||||||
syn keyword cConstant EXIT_FAILURE EXIT_SUCCESS RAND_MAX
|
|
||||||
" POSIX 2001
|
" POSIX 2001
|
||||||
syn keyword cConstant SIGBUS SIGPOLL SIGPROF SIGSYS SIGURG
|
syn keyword cConstant SIGBUS SIGPOLL SIGPROF SIGSYS SIGURG SIGVTALRM SIGXCPU SIGXFSZ
|
||||||
syn keyword cConstant SIGVTALRM SIGXCPU SIGXFSZ
|
|
||||||
" non-POSIX signals
|
" non-POSIX signals
|
||||||
syn keyword cConstant SIGWINCH SIGINFO
|
syn keyword cConstant SIGWINCH SIGINFO
|
||||||
" Add POSIX errors as well
|
" Add POSIX errors as well. List comes from:
|
||||||
syn keyword cConstant E2BIG EACCES EAGAIN EBADF EBADMSG EBUSY
|
" http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/errno.h.html
|
||||||
syn keyword cConstant ECANCELED ECHILD EDEADLK EDOM EEXIST EFAULT
|
syn keyword cConstant E2BIG EACCES EADDRINUSE EADDRNOTAVAIL EAFNOSUPPORT EAGAIN EALREADY EBADF
|
||||||
syn keyword cConstant EFBIG EILSEQ EINPROGRESS EINTR EINVAL EIO EISDIR
|
syn keyword cConstant EBADMSG EBUSY ECANCELED ECHILD ECONNABORTED ECONNREFUSED ECONNRESET EDEADLK
|
||||||
syn keyword cConstant EMFILE EMLINK EMSGSIZE ENAMETOOLONG ENFILE ENODEV
|
syn keyword cConstant EDESTADDRREQ EDOM EDQUOT EEXIST EFAULT EFBIG EHOSTUNREACH EIDRM EILSEQ
|
||||||
syn keyword cConstant ENOENT ENOEXEC ENOLCK ENOMEM ENOSPC ENOSYS
|
syn keyword cConstant EINPROGRESS EINTR EINVAL EIO EISCONN EISDIR ELOOP EMFILE EMLINK EMSGSIZE
|
||||||
syn keyword cConstant ENOTDIR ENOTEMPTY ENOTSUP ENOTTY ENXIO EPERM
|
syn keyword cConstant EMULTIHOP ENAMETOOLONG ENETDOWN ENETRESET ENETUNREACH ENFILE ENOBUFS ENODATA
|
||||||
syn keyword cConstant EPIPE ERANGE EROFS ESPIPE ESRCH ETIMEDOUT EXDEV
|
syn keyword cConstant ENODEV ENOENT ENOEXEC ENOLCK ENOLINK ENOMEM ENOMSG ENOPROTOOPT ENOSPC ENOSR
|
||||||
|
syn keyword cConstant ENOSTR ENOSYS ENOTBLK ENOTCONN ENOTDIR ENOTEMPTY ENOTRECOVERABLE ENOTSOCK ENOTSUP
|
||||||
|
syn keyword cConstant ENOTTY ENXIO EOPNOTSUPP EOVERFLOW EOWNERDEAD EPERM EPIPE EPROTO
|
||||||
|
syn keyword cConstant EPROTONOSUPPORT EPROTOTYPE ERANGE EROFS ESPIPE ESRCH ESTALE ETIME ETIMEDOUT
|
||||||
|
syn keyword cConstant ETXTBSY EWOULDBLOCK EXDEV
|
||||||
" math.h
|
" math.h
|
||||||
syn keyword cConstant M_E M_LOG2E M_LOG10E M_LN2 M_LN10 M_PI M_PI_2 M_PI_4
|
syn keyword cConstant M_E M_LOG2E M_LOG10E M_LN2 M_LN10 M_PI M_PI_2 M_PI_4
|
||||||
syn keyword cConstant M_1_PI M_2_PI M_2_SQRTPI M_SQRT2 M_SQRT1_2
|
syn keyword cConstant M_1_PI M_2_PI M_2_SQRTPI M_SQRT2 M_SQRT1_2
|
||||||
@@ -371,17 +384,17 @@ if !exists("c_no_if0")
|
|||||||
else
|
else
|
||||||
syn region cCppOutIf2 contained matchgroup=cCppOutWrapper start="0\+" end="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0\+\s*\($\|//\|/\*\|&\)\)\@!\|endif\>\)"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell
|
syn region cCppOutIf2 contained matchgroup=cCppOutWrapper start="0\+" end="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0\+\s*\($\|//\|/\*\|&\)\)\@!\|endif\>\)"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell
|
||||||
endif
|
endif
|
||||||
syn region cCppOutElse contained matchgroup=cCppOutWrapper start="^\s*\zs\(%:\|#\)\s*\(else\|elif\)" end="^\s*\zs\(%:\|#\)\s*endif\>"me=s-1 contains=TOP,cPreCondit
|
syn region cCppOutElse contained matchgroup=cCppOutWrapper start="^\s*\(%:\|#\)\s*\(else\|elif\)" end="^\s*\(%:\|#\)\s*endif\>"me=s-1 contains=TOP,cPreCondit
|
||||||
syn region cCppInWrapper start="^\s*\zs\(%:\|#\)\s*if\s\+0*[1-9]\d*\s*\($\|//\|/\*\||\)" end=".\@=\|$" contains=cCppInIf,cCppInElse fold
|
syn region cCppInWrapper start="^\s*\zs\(%:\|#\)\s*if\s\+0*[1-9]\d*\s*\($\|//\|/\*\||\)" end=".\@=\|$" contains=cCppInIf,cCppInElse fold
|
||||||
syn region cCppInIf contained matchgroup=cCppInWrapper start="\d\+" end="^\s*\zs\(%:\|#\)\s*endif\>" contains=TOP,cPreCondit
|
syn region cCppInIf contained matchgroup=cCppInWrapper start="\d\+" end="^\s*\(%:\|#\)\s*endif\>" contains=TOP,cPreCondit
|
||||||
if !exists("c_no_if0_fold")
|
if !exists("c_no_if0_fold")
|
||||||
syn region cCppInElse contained start="^\s*\zs\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2 fold
|
syn region cCppInElse contained start="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2 fold
|
||||||
else
|
else
|
||||||
syn region cCppInElse contained start="^\s*\zs\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2
|
syn region cCppInElse contained start="^\s*\(%:\|#\)\s*\(else\>\|elif\s\+\(0*[1-9]\d*\s*\($\|//\|/\*\||\)\)\@!\)" end=".\@=\|$" containedin=cCppInIf contains=cCppInElse2
|
||||||
endif
|
endif
|
||||||
syn region cCppInElse2 contained matchgroup=cCppInWrapper start="^\s*\zs\(%:\|#\)\s*\(else\|elif\)\([^/]\|/[^/*]\)*" end="^\s*\zs\(%:\|#\)\s*endif\>"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell
|
syn region cCppInElse2 contained matchgroup=cCppInWrapper start="^\s*\(%:\|#\)\s*\(else\|elif\)\([^/]\|/[^/*]\)*" end="^\s*\(%:\|#\)\s*endif\>"me=s-1 contains=cSpaceError,cCppOutSkip,@Spell
|
||||||
syn region cCppOutSkip contained start="^\s*\zs\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\zs\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppOutSkip
|
syn region cCppOutSkip contained start="^\s*\(%:\|#\)\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" contains=cSpaceError,cCppOutSkip
|
||||||
syn region cCppInSkip contained matchgroup=cCppInWrapper start="^\s*\zs\(%:\|#\)\s*\(if\s\+\(\d\+\s*\($\|//\|/\*\||\|&\)\)\@!\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\zs\(%:\|#\)\s*endif\>" containedin=cCppOutElse,cCppInIf,cCppInSkip contains=TOP,cPreProc
|
syn region cCppInSkip contained matchgroup=cCppInWrapper start="^\s*\(%:\|#\)\s*\(if\s\+\(\d\+\s*\($\|//\|/\*\||\|&\)\)\@!\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*\(%:\|#\)\s*endif\>" containedin=cCppOutElse,cCppInIf,cCppInSkip contains=TOP,cPreProc
|
||||||
endif
|
endif
|
||||||
syn region cIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+
|
syn region cIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+
|
||||||
syn match cIncluded display contained "<[^>]*>"
|
syn match cIncluded display contained "<[^>]*>"
|
||||||
@@ -391,6 +404,13 @@ syn cluster cPreProcGroup contains=cPreCondit,cIncluded,cInclude,cDefine,cErrInP
|
|||||||
syn region cDefine start="^\s*\zs\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
|
syn region cDefine start="^\s*\zs\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
|
||||||
syn region cPreProc start="^\s*\zs\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
|
syn region cPreProc start="^\s*\zs\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@cPreProcGroup,@Spell
|
||||||
|
|
||||||
|
" Optional embedded Autodoc parsing
|
||||||
|
if exists("c_autodoc")
|
||||||
|
syn match cAutodocReal display contained "\%(//\|[/ \t\v]\*\|^\*\)\@2<=!.*" contains=@cAutodoc containedin=cComment,cCommentL
|
||||||
|
syn cluster cCommentGroup add=cAutodocReal
|
||||||
|
syn cluster cPreProcGroup add=cAutodocReal
|
||||||
|
endif
|
||||||
|
|
||||||
" Highlight User Labels
|
" Highlight User Labels
|
||||||
syn cluster cMultiGroup contains=cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cCppParen,cCppBracket,cCppString
|
syn cluster cMultiGroup contains=cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cCppParen,cCppBracket,cCppString
|
||||||
if s:ft ==# 'c' || exists("cpp_no_cpp11")
|
if s:ft ==# 'c' || exists("cpp_no_cpp11")
|
||||||
@@ -452,6 +472,7 @@ hi def link cErrInBracket cError
|
|||||||
hi def link cCommentError cError
|
hi def link cCommentError cError
|
||||||
hi def link cCommentStartError cError
|
hi def link cCommentStartError cError
|
||||||
hi def link cSpaceError cError
|
hi def link cSpaceError cError
|
||||||
|
hi def link cWrongComTail cError
|
||||||
hi def link cSpecialError cError
|
hi def link cSpecialError cError
|
||||||
hi def link cCurlyError cError
|
hi def link cCurlyError cError
|
||||||
hi def link cOperator Operator
|
hi def link cOperator Operator
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'c/c++') == -1
|
|||||||
" Language: C++
|
" Language: C++
|
||||||
" Current Maintainer: vim-jp (https://github.com/vim-jp/vim-cpp)
|
" Current Maintainer: vim-jp (https://github.com/vim-jp/vim-cpp)
|
||||||
" Previous Maintainer: Ken Shan <ccshan@post.harvard.edu>
|
" Previous Maintainer: Ken Shan <ccshan@post.harvard.edu>
|
||||||
|
" Last Change: 2017 Jun 05
|
||||||
|
|
||||||
" quit when a syntax file was already loaded
|
" quit when a syntax file was already loaded
|
||||||
if exists("b:current_syntax")
|
if exists("b:current_syntax")
|
||||||
@@ -43,6 +44,8 @@ if !exists("cpp_no_cpp11")
|
|||||||
syn keyword cppConstant ATOMIC_INT_LOCK_FREE ATOMIC_LONG_LOCK_FREE
|
syn keyword cppConstant ATOMIC_INT_LOCK_FREE ATOMIC_LONG_LOCK_FREE
|
||||||
syn keyword cppConstant ATOMIC_LLONG_LOCK_FREE ATOMIC_POINTER_LOCK_FREE
|
syn keyword cppConstant ATOMIC_LLONG_LOCK_FREE ATOMIC_POINTER_LOCK_FREE
|
||||||
syn region cppRawString matchgroup=cppRawStringDelimiter start=+\%(u8\|[uLU]\)\=R"\z([[:alnum:]_{}[\]#<>%:;.?*\+\-/\^&|~!=,"']\{,16}\)(+ end=+)\z1"+ contains=@Spell
|
syn region cppRawString matchgroup=cppRawStringDelimiter start=+\%(u8\|[uLU]\)\=R"\z([[:alnum:]_{}[\]#<>%:;.?*\+\-/\^&|~!=,"']\{,16}\)(+ end=+)\z1"+ contains=@Spell
|
||||||
|
syn match cppCast "\<\(const\|static\|dynamic\)_pointer_cast\s*<"me=e-1
|
||||||
|
syn match cppCast "\<\(const\|static\|dynamic\)_pointer_cast\s*$"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" C++ 14 extensions
|
" C++ 14 extensions
|
||||||
@@ -54,6 +57,21 @@ if !exists("cpp_no_cpp14")
|
|||||||
syn case match
|
syn case match
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
" C++ 17 extensions
|
||||||
|
if !exists("cpp_no_cpp17")
|
||||||
|
syn match cppCast "\<reinterpret_pointer_cast\s*<"me=e-1
|
||||||
|
syn match cppCast "\<reinterpret_pointer_cast\s*$"
|
||||||
|
endif
|
||||||
|
|
||||||
|
" C++ 20 extensions
|
||||||
|
if !exists("cpp_no_cpp20")
|
||||||
|
syn keyword cppStatement co_await co_return co_yield requires
|
||||||
|
syn keyword cppStorageClass consteval constinit
|
||||||
|
syn keyword cppStructure concept
|
||||||
|
syn keyword cppType char8_t
|
||||||
|
syn keyword cppModule import module export
|
||||||
|
endif
|
||||||
|
|
||||||
" The minimum and maximum operators in GNU C++
|
" The minimum and maximum operators in GNU C++
|
||||||
syn match cppMinMax "[<>]?"
|
syn match cppMinMax "[<>]?"
|
||||||
|
|
||||||
@@ -72,6 +90,7 @@ hi def link cppConstant Constant
|
|||||||
hi def link cppRawStringDelimiter Delimiter
|
hi def link cppRawStringDelimiter Delimiter
|
||||||
hi def link cppRawString String
|
hi def link cppRawString String
|
||||||
hi def link cppNumber Number
|
hi def link cppNumber Number
|
||||||
|
hi def link cppModule Include
|
||||||
|
|
||||||
let b:current_syntax = "cpp"
|
let b:current_syntax = "cpp"
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,25 @@
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'graphql') == -1
|
||||||
|
|
||||||
" Vim syntax file
|
" Copyright (c) 2016-2019 Jon Parise <jon@indelible.org>
|
||||||
|
"
|
||||||
|
" Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
" of this software and associated documentation files (the "Software"), to
|
||||||
|
" deal in the Software without restriction, including without limitation the
|
||||||
|
" rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||||
|
" sell copies of the Software, and to permit persons to whom the Software is
|
||||||
|
" furnished to do so, subject to the following conditions:
|
||||||
|
"
|
||||||
|
" The above copyright notice and this permission notice shall be included in
|
||||||
|
" all copies or substantial portions of the Software.
|
||||||
|
"
|
||||||
|
" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
" FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
|
" IN THE SOFTWARE.
|
||||||
|
"
|
||||||
" Language: GraphQL
|
" Language: GraphQL
|
||||||
" Maintainer: Jon Parise <jon@indelible.org>
|
" Maintainer: Jon Parise <jon@indelible.org>
|
||||||
|
|
||||||
@@ -8,20 +27,23 @@ if exists('b:current_syntax')
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
syn case match
|
||||||
|
|
||||||
syn match graphqlComment "#.*$" contains=@Spell
|
syn match graphqlComment "#.*$" contains=@Spell
|
||||||
|
|
||||||
syn match graphqlOperator "=" display
|
syn match graphqlOperator "=" display
|
||||||
syn match graphqlOperator "!" display
|
syn match graphqlOperator "!" display
|
||||||
syn match graphqlOperator "|" display
|
syn match graphqlOperator "|" display
|
||||||
|
syn match graphqlOperator "&" display
|
||||||
syn match graphqlOperator "\M..." display
|
syn match graphqlOperator "\M..." display
|
||||||
|
|
||||||
syn keyword graphqlBoolean true false
|
syn keyword graphqlBoolean true false
|
||||||
syn keyword graphqlNull null
|
syn keyword graphqlNull null
|
||||||
syn match graphqlNumber "-\=\<\%(0\|[1-9]\d*\)\%(\.\d\+\)\=\%([eE][-+]\=\d\+\)\=\>" display
|
syn match graphqlNumber "-\=\<\%(0\|[1-9]\d*\)\%(\.\d\+\)\=\%([eE][-+]\=\d\+\)\=\>" display
|
||||||
syn region graphqlString start=+"+ skip=+\\\\\|\\"+ end=+"\|$+
|
syn region graphqlString start=+"+ skip=+\\\\\|\\"+ end=+"\|$+
|
||||||
syn region graphqlString start=+"""+ end=+"""+
|
syn region graphqlString start=+"""+ skip=+\\"""+ end=+"""+
|
||||||
|
|
||||||
syn keyword graphqlKeyword on nextgroup=graphqlType skipwhite
|
syn keyword graphqlKeyword on nextgroup=graphqlType,graphqlDirectiveLocation skipwhite
|
||||||
|
|
||||||
syn keyword graphqlStructure enum scalar type union nextgroup=graphqlType skipwhite
|
syn keyword graphqlStructure enum scalar type union nextgroup=graphqlType skipwhite
|
||||||
syn keyword graphqlStructure input interface subscription nextgroup=graphqlType skipwhite
|
syn keyword graphqlStructure input interface subscription nextgroup=graphqlType skipwhite
|
||||||
@@ -35,7 +57,16 @@ syn match graphqlDirective "\<@\h\w*\>" display
|
|||||||
syn match graphqlVariable "\<\$\h\w*\>" display
|
syn match graphqlVariable "\<\$\h\w*\>" display
|
||||||
syn match graphqlName "\<\h\w*\>" display
|
syn match graphqlName "\<\h\w*\>" display
|
||||||
syn match graphqlType "\<_*\u\w*\>" display
|
syn match graphqlType "\<_*\u\w*\>" display
|
||||||
syn match graphqlConstant "\<[_A-Z][_A-Z0-9]*\>" display
|
|
||||||
|
" https://graphql.github.io/graphql-spec/June2018/#ExecutableDirectiveLocation
|
||||||
|
syn keyword graphqlDirectiveLocation QUERY MUTATION SUBSCRIPTION FIELD
|
||||||
|
syn keyword graphqlDirectiveLocation FRAGMENT_DEFINITION FRAGMENT_SPREAD
|
||||||
|
syn keyword graphqlDirectiveLocation INLINE_FRAGMENT
|
||||||
|
" https://graphql.github.io/graphql-spec/June2018/#TypeSystemDirectiveLocation
|
||||||
|
syn keyword graphqlDirectiveLocation SCHEMA SCALAR OBJECT FIELD_DEFINITION
|
||||||
|
syn keyword graphqlDirectiveLocation ARGUMENT_DEFINITION INTERFACE UNION
|
||||||
|
syn keyword graphqlDirectiveLocation ENUM ENUM_VALUE INPUT_OBJECT
|
||||||
|
syn keyword graphqlDirectiveLocation INPUT_FIELD_DEFINITION
|
||||||
|
|
||||||
syn keyword graphqlMetaFields __schema __type __typename
|
syn keyword graphqlMetaFields __schema __type __typename
|
||||||
|
|
||||||
@@ -52,8 +83,8 @@ hi def link graphqlNull Keyword
|
|||||||
hi def link graphqlNumber Number
|
hi def link graphqlNumber Number
|
||||||
hi def link graphqlString String
|
hi def link graphqlString String
|
||||||
|
|
||||||
hi def link graphqlConstant Constant
|
|
||||||
hi def link graphqlDirective PreProc
|
hi def link graphqlDirective PreProc
|
||||||
|
hi def link graphqlDirectiveLocation Special
|
||||||
hi def link graphqlName Identifier
|
hi def link graphqlName Identifier
|
||||||
hi def link graphqlMetaFields Special
|
hi def link graphqlMetaFields Special
|
||||||
hi def link graphqlKeyword Keyword
|
hi def link graphqlKeyword Keyword
|
||||||
|
|||||||
@@ -119,6 +119,7 @@ syn keyword mesonBuiltin
|
|||||||
\ subdir
|
\ subdir
|
||||||
\ subdir_done
|
\ subdir_done
|
||||||
\ subproject
|
\ subproject
|
||||||
|
\ summary
|
||||||
\ target_machine
|
\ target_machine
|
||||||
\ test
|
\ test
|
||||||
\ vcs_tag
|
\ vcs_tag
|
||||||
|
|||||||
54
syntax/ocpbuild.vim
Normal file
54
syntax/ocpbuild.vim
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ocaml') == -1
|
||||||
|
|
||||||
|
" Vim syntax file
|
||||||
|
" Language: ocp-build files
|
||||||
|
" Maintainer: Florent Monnier
|
||||||
|
" Latest Revision: 14 September 2013
|
||||||
|
|
||||||
|
if exists("b:current_syntax")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
syn keyword ocpKeywords begin end pack
|
||||||
|
syn keyword ocpKeywords if then else
|
||||||
|
|
||||||
|
syn keyword ocpBlockKind library syntax objects program test
|
||||||
|
|
||||||
|
syn keyword ocpFields files generated dirname archive
|
||||||
|
syn keyword ocpFields requires bundle
|
||||||
|
syn keyword ocpFields tests test_dir test_args test_benchmark
|
||||||
|
syn keyword ocpFields bytecomp bytelink link
|
||||||
|
syn keyword ocpFields has_asm nopervasives sort
|
||||||
|
syn keyword ocpFields comp ccopt byte has_byte
|
||||||
|
syn keyword ocpFields version authors license copyright
|
||||||
|
syn keyword ocpFields lib_files install installed
|
||||||
|
|
||||||
|
syn keyword ocpPreProc test_exit ocp2ml env_strings
|
||||||
|
syn keyword ocpPreProc ocaml_major_version
|
||||||
|
syn keyword ocpPreProc system
|
||||||
|
|
||||||
|
" Strings
|
||||||
|
syn region ocpString start=+"+ end=+"+
|
||||||
|
|
||||||
|
" Comments
|
||||||
|
syn keyword ocpTodo TODO XXX FIXME BUG contained
|
||||||
|
syn region ocpComment start="(\*" end="\*)" contains=ocpTodo
|
||||||
|
|
||||||
|
" Usual Values
|
||||||
|
syn keyword ocpNumber None
|
||||||
|
syn keyword ocpNumber true
|
||||||
|
syn keyword ocpNumber false
|
||||||
|
|
||||||
|
hi def link ocpTodo Todo
|
||||||
|
hi def link ocpComment Comment
|
||||||
|
hi def link ocpString String
|
||||||
|
hi def link ocpBlockKind Identifier
|
||||||
|
hi def link ocpNumber Number
|
||||||
|
hi def link ocpFields Structure
|
||||||
|
hi def link ocpKeywords Keyword
|
||||||
|
hi def link ocpPreProc PreProc
|
||||||
|
|
||||||
|
let b:current_syntax = "ocpbuild"
|
||||||
|
|
||||||
|
|
||||||
|
endif
|
||||||
57
syntax/ocpbuildroot.vim
Normal file
57
syntax/ocpbuildroot.vim
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'ocaml') == -1
|
||||||
|
|
||||||
|
" Vim syntax file
|
||||||
|
" Language: ocp-build.root files
|
||||||
|
" Maintainer: Florent Monnier
|
||||||
|
" Latest Revision: 14 September 2013
|
||||||
|
|
||||||
|
if exists("b:current_syntax")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
|
||||||
|
" Keywords
|
||||||
|
syn keyword ocprKeywords digest
|
||||||
|
syn keyword ocprKeywords verbosity
|
||||||
|
syn keyword ocprKeywords njobs
|
||||||
|
syn keyword ocprKeywords autoscan
|
||||||
|
syn keyword ocprKeywords bytecode
|
||||||
|
syn keyword ocprKeywords native
|
||||||
|
syn keyword ocprKeywords meta_dirnames
|
||||||
|
syn keyword ocprKeywords install_destdir
|
||||||
|
syn keyword ocprKeywords install_bin
|
||||||
|
syn keyword ocprKeywords install_lib
|
||||||
|
syn keyword ocprKeywords install_data
|
||||||
|
syn keyword ocprKeywords install_doc
|
||||||
|
syn keyword ocprKeywords ocamllib
|
||||||
|
syn keyword ocprKeywords use_ocamlfind
|
||||||
|
syn keyword ocprKeywords ocpbuild_version
|
||||||
|
syn keyword ocprKeywords project_external_dirs
|
||||||
|
syn keyword ocprKeywords files
|
||||||
|
syn keyword ocprKeywords install_docdir
|
||||||
|
syn keyword ocprKeywords install_datadir
|
||||||
|
syn keyword ocprKeywords install_libdir
|
||||||
|
syn keyword ocprKeywords install_bindir
|
||||||
|
syn keyword ocprKeywords install_metadir
|
||||||
|
|
||||||
|
syn keyword ocprNumber None
|
||||||
|
syn keyword ocprNumber true
|
||||||
|
syn keyword ocprNumber false
|
||||||
|
|
||||||
|
" Strings
|
||||||
|
syn match ocprString "\".\{-}\""
|
||||||
|
|
||||||
|
" Comments
|
||||||
|
syn keyword ocprTodo TODO XXX FIXME BUG contained
|
||||||
|
syn region ocprComment start="(\*" end="\*)" contains=ocprTodo
|
||||||
|
|
||||||
|
|
||||||
|
hi def link ocprKeywords Keyword
|
||||||
|
hi def link ocprTodo Todo
|
||||||
|
hi def link ocprComment Comment
|
||||||
|
hi def link ocprString String
|
||||||
|
hi def link ocprNumber Number
|
||||||
|
|
||||||
|
let b:current_syntax = "ocpbuildroot"
|
||||||
|
|
||||||
|
|
||||||
|
endif
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'qml') == -1
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'qml') == -1
|
||||||
|
|
||||||
|
|
||||||
" Vim syntax file
|
" Vim syntax file
|
||||||
" Language: QML
|
" Language: QML
|
||||||
" Maintainer: Peter Hoeg <peter@hoeg.com>
|
" Maintainer: Peter Hoeg <peter@hoeg.com>
|
||||||
@@ -29,7 +30,7 @@ endif
|
|||||||
|
|
||||||
syn case ignore
|
syn case ignore
|
||||||
|
|
||||||
syn cluster qmlExpr contains=qmlStringD,qmlStringS,SqmlCharacter,qmlNumber,qmlObjectLiteralType,qmlBoolean,qmlType,qmlJsType,qmlNull,qmlGlobal,qmlFunction
|
syn cluster qmlExpr contains=qmlStringD,qmlStringS,qmlStringT,SqmlCharacter,qmlNumber,qmlObjectLiteralType,qmlBoolean,qmlType,qmlJsType,qmlNull,qmlGlobal,qmlFunction,qmlArrowFunction
|
||||||
syn keyword qmlCommentTodo TODO FIXME XXX TBD contained
|
syn keyword qmlCommentTodo TODO FIXME XXX TBD contained
|
||||||
syn match qmlLineComment "\/\/.*" contains=@Spell,qmlCommentTodo
|
syn match qmlLineComment "\/\/.*" contains=@Spell,qmlCommentTodo
|
||||||
syn match qmlCommentSkip "^[ \t]*\*\($\|[ \t]\+\)"
|
syn match qmlCommentSkip "^[ \t]*\*\($\|[ \t]\+\)"
|
||||||
@@ -37,6 +38,9 @@ syn region qmlComment start="/\*" end="\*/" contains=@Spell,qmlComme
|
|||||||
syn match qmlSpecial "\\\d\d\d\|\\."
|
syn match qmlSpecial "\\\d\d\d\|\\."
|
||||||
syn region qmlStringD start=+"+ skip=+\\\\\|\\"\|\\$+ end=+"+ keepend contains=qmlSpecial,@htmlPreproc,@Spell
|
syn region qmlStringD start=+"+ skip=+\\\\\|\\"\|\\$+ end=+"+ keepend contains=qmlSpecial,@htmlPreproc,@Spell
|
||||||
syn region qmlStringS start=+'+ skip=+\\\\\|\\'\|\\$+ end=+'+ keepend contains=qmlSpecial,@htmlPreproc,@Spell
|
syn region qmlStringS start=+'+ skip=+\\\\\|\\'\|\\$+ end=+'+ keepend contains=qmlSpecial,@htmlPreproc,@Spell
|
||||||
|
syn region qmlStringT start=+`+ skip=+\\\\\|\\`\|\\$+ end=+`+ keepend contains=qmlTemplateExpr,qmlSpecial,@htmlPreproc,@Spell
|
||||||
|
|
||||||
|
syntax region qmlTemplateExpr contained matchgroup=qmlBraces start=+${+ end=+}+ keepend contains=@qmlExpr
|
||||||
|
|
||||||
syn match qmlCharacter "'\\.'"
|
syn match qmlCharacter "'\\.'"
|
||||||
syn match qmlNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
|
syn match qmlNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
|
||||||
@@ -54,7 +58,7 @@ syn keyword qmlType action alias bool color date double enumeration
|
|||||||
syn keyword qmlStatement return with
|
syn keyword qmlStatement return with
|
||||||
syn keyword qmlBoolean true false
|
syn keyword qmlBoolean true false
|
||||||
syn keyword qmlNull null undefined
|
syn keyword qmlNull null undefined
|
||||||
syn keyword qmlIdentifier arguments this var
|
syn keyword qmlIdentifier arguments this var let
|
||||||
syn keyword qmlLabel case default
|
syn keyword qmlLabel case default
|
||||||
syn keyword qmlException try catch finally throw
|
syn keyword qmlException try catch finally throw
|
||||||
syn keyword qmlMessage alert confirm prompt status
|
syn keyword qmlMessage alert confirm prompt status
|
||||||
@@ -73,6 +77,7 @@ if get(g:, 'qml_fold', 0)
|
|||||||
setlocal foldtext=getline(v:foldstart)
|
setlocal foldtext=getline(v:foldstart)
|
||||||
else
|
else
|
||||||
syn keyword qmlFunction function
|
syn keyword qmlFunction function
|
||||||
|
syn match qmlArrowFunction "=>"
|
||||||
syn match qmlBraces "[{}\[\]]"
|
syn match qmlBraces "[{}\[\]]"
|
||||||
syn match qmlParens "[()]"
|
syn match qmlParens "[()]"
|
||||||
endif
|
endif
|
||||||
@@ -100,6 +105,7 @@ if version >= 508 || !exists("did_qml_syn_inits")
|
|||||||
HiLink qmlSpecial Special
|
HiLink qmlSpecial Special
|
||||||
HiLink qmlStringS String
|
HiLink qmlStringS String
|
||||||
HiLink qmlStringD String
|
HiLink qmlStringD String
|
||||||
|
HiLink qmlStringT String
|
||||||
HiLink qmlCharacter Character
|
HiLink qmlCharacter Character
|
||||||
HiLink qmlNumber Number
|
HiLink qmlNumber Number
|
||||||
HiLink qmlConditional Conditional
|
HiLink qmlConditional Conditional
|
||||||
@@ -111,6 +117,7 @@ if version >= 508 || !exists("did_qml_syn_inits")
|
|||||||
HiLink qmlObjectLiteralType Type
|
HiLink qmlObjectLiteralType Type
|
||||||
HiLink qmlStatement Statement
|
HiLink qmlStatement Statement
|
||||||
HiLink qmlFunction Function
|
HiLink qmlFunction Function
|
||||||
|
HiLink qmlArrowFunction Function
|
||||||
HiLink qmlBraces Function
|
HiLink qmlBraces Function
|
||||||
HiLink qmlError Error
|
HiLink qmlError Error
|
||||||
HiLink qmlNull Keyword
|
HiLink qmlNull Keyword
|
||||||
|
|||||||
@@ -7,6 +7,9 @@ if exists('b:current_syntax')
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
let s:cpo_save = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
" Identifiers are made up of alphanumeric characters, underscores, and
|
" Identifiers are made up of alphanumeric characters, underscores, and
|
||||||
" hyphens.
|
" hyphens.
|
||||||
if has('patch-7.4.1142')
|
if has('patch-7.4.1142')
|
||||||
@@ -4863,9 +4866,8 @@ syn match terraValueDec "\<[0-9]\+\([kKmMgG]b\?\)\?\>"
|
|||||||
syn match terraValueHexaDec "\<0x[0-9a-f]\+\([kKmMgG]b\?\)\?\>"
|
syn match terraValueHexaDec "\<0x[0-9a-f]\+\([kKmMgG]b\?\)\?\>"
|
||||||
syn match terraBraces "[\[\]]"
|
syn match terraBraces "[\[\]]"
|
||||||
|
|
||||||
""" skip \" in strings.
|
""" skip \" and \\ in strings.
|
||||||
""" we may also want to pass \\" into a function to escape quotes.
|
syn region terraValueString start=/"/ skip=/\\\\\|\\"/ end=/"/ contains=terraStringInterp
|
||||||
syn region terraValueString start=/"/ skip=/\\\+"/ end=/"/ contains=terraStringInterp
|
|
||||||
syn region terraStringInterp matchgroup=terraBraces start=/\${/ end=/}/ contained contains=ALL
|
syn region terraStringInterp matchgroup=terraBraces start=/\${/ end=/}/ contained contains=ALL
|
||||||
syn region terraHereDocText start=/<<-\?\z([a-z0-9A-Z]\+\)/ end=/^\s*\z1/ contains=terraStringInterp
|
syn region terraHereDocText start=/<<-\?\z([a-z0-9A-Z]\+\)/ end=/^\s*\z1/ contains=terraStringInterp
|
||||||
|
|
||||||
@@ -4923,4 +4925,7 @@ hi def link terraValueNull Constant
|
|||||||
|
|
||||||
let b:current_syntax = 'terraform'
|
let b:current_syntax = 'terraform'
|
||||||
|
|
||||||
|
let &cpo = s:cpo_save
|
||||||
|
unlet s:cpo_save
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
Reference in New Issue
Block a user