Ensure some files are compied from each package

This commit is contained in:
Adam Stankiewicz
2021-09-09 12:42:18 +02:00
parent 7f98e949d4
commit b147123070
17 changed files with 861 additions and 134 deletions

View File

@@ -7,7 +7,7 @@ A collection of language packs for Vim.
> One to rule them all, one to find them, one to bring them all and in the darkness bind them.
- It **won't affect your startup time**, as scripts are loaded only on demand\*.
- It **installs and updates 120+ times faster** than the <!--Package Count-->606<!--/Package Count--> packages it consists of.
- It **installs and updates 120+ times faster** than the <!--Package Count-->598<!--/Package Count--> packages it consists of.
- It is also more secure (scripts loaded for every filetype are generated by vim-polyglot)
- Best syntax and indentation support (no other features). Hand-selected language packs.
- Automatically detects indentation (includes performance-optimized version of [vim-sleuth](https://github.com/tpope/vim-sleuth), can be disabled)
@@ -119,7 +119,7 @@ On top of all language packs from [vim repository](https://github.com/vim/vim/tr
- [just](https://github.com/NoahTheDuke/vim-just) (Syntax highlighting for just 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)
- [lilypond](https://github.com/anowlcalledjosh/vim-lilypond) (LilyPond syntax highlighting for ly and ily files)
- [lilypond](https://github.com/anowlcalledjosh/vim-lilypond/tree/main) (LilyPond syntax highlighting for ly and ily files)
- [livescript](https://github.com/gkz/vim-ls) (LiveScript syntax highlighting for ls files)
- [llvm](https://github.com/rhysd/vim-llvm) (LLVM syntax highlighting for ll and td files)
- [log](https://github.com/MTDL9/vim-log-highlighting) (Syntax highlighting for log and LOG files)
@@ -128,7 +128,7 @@ On top of all language packs from [vim repository](https://github.com/vim/vim/tr
- [markdown](https://github.com/plasticboy/vim-markdown) (Markdown syntax highlighting for md, markdown, mdown, mdwn, mkd, mkdn, mkdown, ronn, scd and workbook files)
- [mathematica](https://github.com/voldikss/vim-mma) (Mathematica syntax highlighting for mathematica, cdf, m, ma, mt and 6 more files)
- [mdx](https://github.com/jxnblk/vim-mdx-js) (Syntax highlighting for mdx files)
- [mermaid](https://github.com/mracos/mermaid.vim) (Syntax highlighting for mermaid, mm and mmd files)
- [mermaid](https://github.com/mracos/mermaid.vim/tree/main) (Syntax highlighting for mermaid, mm and mmd files)
- [meson](https://github.com/mesonbuild/meson/tree/master/data/syntax-highlighting/vim) (Meson syntax highlighting for wrap files)
- [mint](https://github.com/IrenejMarc/vim-mint) (Syntax highlighting for mint files)
- [moonscript](https://github.com/leafo/moonscript-vim) (MoonScript syntax highlighting for moon files)
@@ -182,7 +182,7 @@ On top of all language packs from [vim repository](https://github.com/vim/vim/tr
- [svelte](https://github.com/leafOfTree/vim-svelte-plugin) (Svelte syntax highlighting for svelte files)
- [svg-indent](https://github.com/jasonshell/vim-svg-indent)
- [svg](https://github.com/vim-scripts/svg.vim) (SVG syntax highlighting for svg files)
- [sway](https://github.com/jamespeapen/swayconfig.vim/tree/i3sway) (Syntax highlighting for i3config, i3.config, swayconfig and sway.config files)
- [sway](https://github.com/jamespeapen/swayconfig.vim) (Syntax highlighting for swayconfig and sway.config files)
- [swift](https://github.com/keith/swift.vim) (Swift syntax highlighting for swift files)
- [sxhkd](https://github.com/baskerville/vim-sxhkdrc) (Syntax highlighting for sxhkdrc files)
- [systemd](https://github.com/wgwoods/vim-systemd-syntax) (Syntax highlighting for automount, dnssd, link, mount, netdev and 9 more files)
@@ -190,7 +190,7 @@ On top of all language packs from [vim repository](https://github.com/vim/vim/tr
- [textile](https://github.com/timcharper/textile.vim) (Textile syntax highlighting for textile files)
- [thrift](https://github.com/solarnz/thrift.vim) (Thrift syntax highlighting for thrift files)
- [tmux](https://github.com/ericpruitt/tmux.vim/tree/master/vim)
- [toml](https://github.com/cespare/vim-toml) (TOML syntax highlighting for toml files)
- [toml](https://github.com/cespare/vim-toml/tree/main) (TOML syntax highlighting for toml files)
- [tptp](https://github.com/c-cube/vim-tptp) (Syntax highlighting for p, tptp and ax files)
- [twig](https://github.com/lumiliet/vim-twig) (Twig syntax highlighting for twig and xml.twig files)
- [typescript](https://github.com/HerringtonDarkholme/yats.vim) (TypeScript and TSX syntax highlighting for ts and tsx files)

View File

@@ -190,7 +190,7 @@ if !has_key(g:polyglot_is_disabled, 'just')
endif
if !has_key(g:polyglot_is_disabled, 'sway')
au BufNewFile,BufRead *.i3.config,*.i3config,*.sway.config,*.swayconfig,*sway/config,i3.config,sway.config setf i3config
au BufNewFile,BufRead *.sway.config,*.swayconfig,*sway/config,swayconfig setf swayconfig
endif
if !has_key(g:polyglot_is_disabled, 'hjson')
@@ -228,10 +228,6 @@ if !has_key(g:polyglot_is_disabled, 'xf86conf')
au BufNewFile,BufRead XF86Config* call s:StarSetf('xf86conf')
endif
if !has_key(g:polyglot_is_disabled, 'pullrequest')
au BufNewFile,BufRead PULLREQ_EDITMSG setf pullrequest
endif
if !has_key(g:polyglot_is_disabled, 'text')
au BufNewFile,BufRead *.text,README setf text
endif
@@ -276,10 +272,6 @@ if !has_key(g:polyglot_is_disabled, 'z8a')
au BufNewFile,BufRead *.z8a setf z8a
endif
if !has_key(g:polyglot_is_disabled, 'zimbutempl')
au BufNewFile,BufRead *.zut setf zimbutempl
endif
if !has_key(g:polyglot_is_disabled, 'zimbu')
au BufNewFile,BufRead *.zu setf zimbu
endif
@@ -801,10 +793,6 @@ if !has_key(g:polyglot_is_disabled, 'privoxy')
au BufNewFile,BufRead *.action setf privoxy
endif
if !has_key(g:polyglot_is_disabled, 'proc')
au BufNewFile,BufRead *.pc setf proc
endif
if !has_key(g:polyglot_is_disabled, 'obj')
au BufNewFile,BufRead *.obj setf obj
endif
@@ -877,10 +865,6 @@ if !has_key(g:polyglot_is_disabled, 'pike')
au BufNewFile,BufRead *.pike,*.pmod setf pike
endif
if !has_key(g:polyglot_is_disabled, 'pcmk')
au BufNewFile,BufRead *.pcmk setf pcmk
endif
if !has_key(g:polyglot_is_disabled, 'pdf')
au BufNewFile,BufRead *.pdf setf pdf
endif
@@ -1062,10 +1046,6 @@ if !has_key(g:polyglot_is_disabled, 'mel')
au BufNewFile,BufRead *.mel setf mel
endif
if !has_key(g:polyglot_is_disabled, 'map')
au BufNewFile,BufRead *.map setf map
endif
if !has_key(g:polyglot_is_disabled, 'maple')
au BufNewFile,BufRead *.mpl,*.mv,*.mws setf maple
endif
@@ -1316,10 +1296,6 @@ if !has_key(g:polyglot_is_disabled, 'icon')
au BufNewFile,BufRead *.icn setf icon
endif
if !has_key(g:polyglot_is_disabled, 'httest')
au BufNewFile,BufRead *.htb,*.htt setf httest
endif
if !has_key(g:polyglot_is_disabled, 'hb')
au BufNewFile,BufRead *.hb setf hb
endif
@@ -1452,10 +1428,6 @@ if !has_key(g:polyglot_is_disabled, 'fetchmail')
au BufNewFile,BufRead {.,}fetchmailrc setf fetchmail
endif
if !has_key(g:polyglot_is_disabled, 'factor')
au BufNewFile,BufRead *.factor setf factor
endif
if !has_key(g:polyglot_is_disabled, 'fan')
au BufNewFile,BufRead *.fan,*.fwt setf fan
endif
@@ -1704,10 +1676,6 @@ if !has_key(g:polyglot_is_disabled, 'chaiscript')
au BufNewFile,BufRead *.chai setf chaiscript
endif
if !has_key(g:polyglot_is_disabled, 'cfengine')
au BufNewFile,BufRead cfengine.conf setf cfengine
endif
if !has_key(g:polyglot_is_disabled, 'cdrdaoconf')
au BufNewFile,BufRead */etc/cdrdao.conf,*/etc/default/cdrdao,*/etc/defaults/cdrdao,{.,}cdrdao setf cdrdaoconf
endif

View File

@@ -66,7 +66,6 @@ let s:globs = {
\ 'cdrdaoconf': '.cdrdao',
\ 'cdrtoc': '*.toc',
\ 'cf': '*.cfm,*.cfi,*.cfc',
\ 'cfengine': 'cfengine.conf',
\ 'cfg': '*.cfg,*.hgrc,*hgrc',
\ 'ch': '*.chf',
\ 'chaiscript': '*.chai',
@@ -162,7 +161,6 @@ let s:globs = {
\ 'exim': 'exim.conf',
\ 'expect': '*.exp',
\ 'exports': 'exports',
\ 'factor': '*.factor',
\ 'falcon': '*.fal',
\ 'fan': '*.fan,*.fwt',
\ 'fbs': '*.fbs',
@@ -235,9 +233,7 @@ let s:globs = {
\ 'html.twig': '*.twig',
\ 'htmldjango': '*.jinja,*.j2,*.jinja2',
\ 'htmlm4': '*.html.m4',
\ 'httest': '*.htt,*.htb',
\ 'hxml': '*.hxml',
\ 'i3config': '*.i3config,*.i3.config,*.swayconfig,*.sway.config,i3.config,sway.config',
\ 'ibasic': '*.iba,*.ibi',
\ 'icalendar': '*.ics',
\ 'icemenu': '',
@@ -321,7 +317,6 @@ let s:globs = {
\ 'mako': '*.mako,*.mao',
\ 'mallard': '*.page',
\ 'manconf': 'man.config',
\ 'map': '*.map',
\ 'maple': '*.mv,*.mpl,*.mws',
\ 'markdown': '*.md,*.markdown,*.mdown,*.mdwn,*.mkd,*.mkdn,*.mkdown,*.ronn,*.scd,*.workbook,contents.lr',
\ 'markdown.mdx': '*.mdx',
@@ -395,7 +390,6 @@ let s:globs = {
\ 'pascal': '*.pas,*.pp,*.dpr,*.lpr',
\ 'passwd': '',
\ 'pccts': '*.g',
\ 'pcmk': '*.pcmk',
\ 'pdf': '*.pdf',
\ 'perl': '*.pl,*.al,*.cgi,*.fcgi,*.perl,*.ph,*.plx,*.pm,*.psgi,*.t,Makefile.PL,Rexfile,ack,cpanfile,example.gitolite.rc,.gitolite.rc',
\ 'pest': '*.pest',
@@ -420,7 +414,6 @@ let s:globs = {
\ 'ppd': '*.ppd',
\ 'ppwiz': '*.it,*.ih',
\ 'privoxy': '*.action',
\ 'proc': '*.pc',
\ 'procmail': '.procmail,.procmailrc',
\ 'prolog': '*.pl,*.pro,*.prolog,*.yap,*.pdb',
\ 'promela': '*.pml',
@@ -430,7 +423,6 @@ let s:globs = {
\ 'ps1xml': '*.ps1xml',
\ 'psf': '*.psf',
\ 'pug': '*.jade,*.pug',
\ 'pullrequest': 'PULLREQ_EDITMSG',
\ 'puppet': '*.pp,Modulefile',
\ 'purescript': '*.purs',
\ 'pyrex': '*.pyx,*.pxd',
@@ -531,6 +523,7 @@ let s:globs = {
\ 'svelte': '*.svelte',
\ 'svg': '*.svg',
\ 'svn': 'svn-commit*.tmp',
\ 'swayconfig': '*.swayconfig,*.sway.config,swayconfig',
\ 'swift': '*.swift',
\ 'swiftgyb': '*.swift.gyb',
\ 'sxhkdrc': '*.sxhkdrc,sxhkdrc',
@@ -636,7 +629,6 @@ let s:globs = {
\ 'zephir': '*.zep',
\ 'zig': '*.zig,*.zir',
\ 'zimbu': '*.zu',
\ 'zimbutempl': '*.zut',
\ 'zir': '*.zir',
\ 'zsh': '*.zsh,.zshrc,.zshenv,.zlogin,.zprofile,.zlogout,.zlog*,.zcompdump*,.zfbfmarks,.zsh*',
\}

40
compiler/lilypond.vim Normal file
View File

@@ -0,0 +1,40 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'lilypond', 'compiler/lilypond.vim')
finish
endif
" LilyPond compiler file
" Language: LilyPond
" Maintainer: Heikki Junes <hjunes@cc.hut.fi>
" License: This file is part of LilyPond, the GNU music typesetter.
"
" Copyright (C) 2004, 2007 Heikki Junes <hjunes@cc.hut.fi>
"
" LilyPond is free software: you can redistribute it and/or modify
" it under the terms of the GNU General Public License as published by
" the Free Software Foundation, either version 3 of the License, or
" (at your option) any later version.
"
" LilyPond is distributed in the hope that it will be useful,
" but WITHOUT ANY WARRANTY; without even the implied warranty of
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
" GNU General Public License for more details.
"
" You should have received a copy of the GNU General Public License
" along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
"
" Last Change: 2007 Aug 19
"
" 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
"

79
ftplugin/lilypond.vim Normal file
View File

@@ -0,0 +1,79 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'lilypond', 'ftplugin/lilypond.vim')
finish
endif
" LilyPond filetype plugin
" Language: LilyPond (ft=ly)
" Maintainer: Heikki Junes <hjunes@cc.hut.fi>
" License: This file is part of LilyPond, the GNU music typesetter.
"
" Copyright (C) 1998, 2002, 2004, 2010, 2016
" Han-Wen Nienhuys <hanwen@xs4all.nl>
"
" LilyPond is free software: you can redistribute it and/or modify
" it under the terms of the GNU General Public License as published by
" the Free Software Foundation, either version 3 of the License, or
" (at your option) any later version.
"
" LilyPond is distributed in the hope that it will be useful,
" but WITHOUT ANY WARRANTY; without even the implied warranty of
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
" GNU General Public License for more details.
"
" You should have received a copy of the GNU General Public License
" along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
"
" Last Change: 2016 May 21
"
" 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
"
" <F4> save & make and play midi with timidity
noremap <buffer> <F4> :w<Return>:setl makeprg=lilypond\ \"%<\"<Return>:make<Return>:!timidity "%<.midi"<Return>
"
" <F5> save & make
noremap <buffer> <F5> :w<Return>:setl makeprg=lilypond\ \"%<\"<Return>:make<Return>
"
" <F6> view pdf with ghostview
noremap <buffer> <F6> :!gv --watch "%<.pdf" &<Return>
"
" <F7> prev error
noremap <buffer> <F7> :cp<Return>
"
" <F8> next error
noremap <buffer> <F8> :cn<Return>
"
" <F9> make
noremap <buffer> <F9> :w<Return>:setl makeprg=make\ -k<Return>:make<Return>
"
" <F10> menu
source $VIMRUNTIME/menu.vim
setlocal wildmenu
setlocal cpo-=<
setlocal wcm=<C-Z>
noremap <buffer> <F10> :emenu <C-Z>
"
" <F12> comment region
noremap <buffer> <F12> :g!/%.*/normal 0i%<Return>
"
" <S-F12> remove comments in region
noremap <buffer> <S-F12> :g/%.*/normal 0x<Return>
"
" Completions in Insert/Replace-mode with <Ctrl-N>
setlocal dictionary-=$VIM/syntax/lilypond-words dictionary+=$VIM/syntax/lilypond-words
setlocal complete-=k complete+=k
"
setlocal showmatch

5
ftplugin/swayconfig.vim Normal file
View File

@@ -0,0 +1,5 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'sway', 'ftplugin/swayconfig.vim')
finish
endif
setlocal commentstring=#\ %s

25
ftplugin/toml.vim Normal file
View File

@@ -0,0 +1,25 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'toml', 'ftplugin/toml.vim')
finish
endif
" File: ftplugin/toml.vim
" Author: Kevin Ballard <kevin@sb.org>
" Description: FileType Plugin for Toml
" Last Change: Feb 12, 2019
if exists('b:did_ftplugin')
finish
endif
let b:did_ftplugin = 1
let s:save_cpo = &cpo
set cpo&vim
let b:undo_ftplugin = 'setlocal commentstring< comments<'
setlocal commentstring=#\ %s
setlocal comments=:#
let &cpo = s:save_cpo
unlet s:save_cpo
" vim: set et sw=4 ts=4:

81
indent/lilypond.vim Normal file
View File

@@ -0,0 +1,81 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'lilypond', 'indent/lilypond.vim')
finish
endif
" LilyPond indent file
" Language: LilyPond
" Maintainer: Heikki Junes <hjunes@cc.hut.fi>
" License: This file is part of LilyPond, the GNU music typesetter.
"
" Copyright (C) 2004, 2010 Heikki Junes <hjunes@cc.hut.fi>
"
" LilyPond is free software: you can redistribute it and/or modify
" it under the terms of the GNU General Public License as published by
" the Free Software Foundation, either version 3 of the License, or
" (at your option) any later version.
"
" LilyPond is distributed in the hope that it will be useful,
" but WITHOUT ANY WARRANTY; without even the implied warranty of
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
" GNU General Public License for more details.
"
" You should have received a copy of the GNU General Public License
" along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
"
" 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
"
"
"

64
indent/mermaid.vim Normal file
View File

@@ -0,0 +1,64 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'mermaid', 'indent/mermaid.vim')
finish
endif
let s:indent_next_line_keywords = [
\ '^classDiagram',
\ '^classDiagram-v2',
\ '^erDiagram',
\ '^gantt',
\ '^graph',
\ '^flowchart',
\ '^pie',
\ '^sequenceDiagram',
\ '^stateDiagram',
\ '^stateDiagram-v2',
\ 'class.*{',
\ 'subgraph',
\ 'loop',
\ 'alt',
\ 'else',
\ 'opt',
\ 'par',
\ 'and',
\ 'rect',
\ '[^a-z]activate',
\ ]
let s:deindent_current_line_keywords = [
\ '^\s\+classDiagram',
\ '^\s\+classDiagram-v2',
\ '^\s\+erDiagram',
\ '^\s\+gantt',
\ '^\s\+graph',
\ '^\s\+flowchart',
\ '^\s\+pie',
\ '^\s\+sequenceDiagram',
\ '^\s\+stateDiagram',
\ '^\s\+stateDiagram-v2',
\ '^\s\+end$',
\ '^\s\+}$',
\ '^\s\+deactivate$'
\ ]
function! s:matches_any_word_in(text, list)
return empty(filter(copy(a:list), {_idx, val -> matchstr(a:text, val) != ""})) == v:false
endfunction
function! MermaidIndent()
let sw = shiftwidth()
let indent_level = indent(v:lnum - 1) / sw
let current_line = getline(v:lnum)
let line_above = getline(v:lnum - 1)
" TODO don't incorrect indent when has empty lines inside graph
if s:matches_any_word_in(current_line, s:deindent_current_line_keywords)
return (indent_level - 1) * sw
endif
if s:matches_any_word_in(line_above, s:indent_next_line_keywords)
return (indent_level + 1) * sw
endif
return indent_level * sw
endfunction

View File

@@ -961,7 +961,7 @@ filetypes:
linguist: Less
---
name: lilypond
remote: anowlcalledjosh/vim-lilypond
remote: anowlcalledjosh/vim-lilypond@main
filetypes:
- name: lilypond
linguist: LilyPond
@@ -1651,7 +1651,7 @@ filetypes:
- '.tmux*.conf'
---
name: toml
remote: cespare/vim-toml
remote: cespare/vim-toml@main
filetypes:
- name: toml
linguist: TOML
@@ -2155,15 +2155,6 @@ filetypes:
- pattern: "*/etc/cdrdao.conf,*/etc/defaults/cdrdao,*/etc/default/cdrdao,.cdrdao"
description: Cdrdao config
---
name: cfengine
remote: vim/vim:runtime
glob: "**/cfengine.vim"
filetypes:
- name: cfengine
patterns:
- pattern: cfengine.conf
description: Cfengine
---
name: chaiscript
remote: vim/vim:runtime
glob: "**/chaiscript.vim"
@@ -2728,15 +2719,6 @@ filetypes:
- pattern: "*.fan,*.fwt"
description: Fantom
---
name: factor
remote: vim/vim:runtime
glob: "**/factor.vim"
filetypes:
- name: factor
patterns:
- pattern: "*.factor"
description: Factor
---
name: fetchmail
remote: vim/vim:runtime
glob: "**/fetchmail.vim"
@@ -3037,15 +3019,6 @@ filetypes:
- pattern: "*.hb"
description: Hyper Builder
---
name: httest
remote: vim/vim:runtime
glob: "**/httest.vim"
filetypes:
- name: httest
patterns:
- pattern: "*.htt,*.htb"
description: Httest
---
name: icon
remote: vim/vim:runtime
glob: "**/icon.vim"
@@ -3596,15 +3569,6 @@ filetypes:
- pattern: "*.mv,*.mpl,*.mws"
description: Maple V
---
name: map
remote: vim/vim:runtime
glob: "**/map.vim"
filetypes:
- name: map
patterns:
- pattern: "*.map"
description: Map (UMN mapserver config file)
---
name: mel
remote: vim/vim:runtime
glob: "**/mel.vim"
@@ -4010,15 +3974,6 @@ filetypes:
- pattern: "*.pdf"
description: PDF
---
name: pcmk
remote: vim/vim:runtime
glob: "**/pcmk.vim"
filetypes:
- name: pcmk
patterns:
- pattern: "*.pcmk"
description: PCMK - HAE - crm configure edit
---
name: pike
remote: vim/vim:runtime
glob: "**/pike.vim"
@@ -4183,15 +4138,6 @@ filetypes:
- pattern: "*.obj"
description: 'TODO: is there a way to avoid MS-Windows Object files?'
---
name: proc
remote: vim/vim:runtime
glob: "**/proc.vim"
filetypes:
- name: proc
patterns:
- pattern: "*.pc"
description: Oracle Pro*C/C++
---
name: privoxy
remote: vim/vim:runtime
glob: "**/privoxy.vim"
@@ -5394,15 +5340,6 @@ filetypes:
- pattern: "*.zu"
description: Zimbu
---
name: zimbutempl
remote: vim/vim:runtime
glob: "**/zimbutempl.vim"
filetypes:
- name: zimbutempl
patterns:
- pattern: "*.zut"
description: Zimbu Templates
---
name: z8a
remote: vim/vim:runtime
glob: "**/z8a.vim"
@@ -5487,14 +5424,6 @@ filetypes:
- pattern: "*.text,README"
description: the "conf" type being used if there is a line starting with '#'.
---
name: pullrequest
remote: vim/vim:runtime
glob: "**/pullrequest.vim"
filetypes:
- name: pullrequest
patterns:
- pattern: PULLREQ_EDITMSG
---
name: autodoc
remote: vim/vim:runtime
glob: "**/autodoc.vim"
@@ -5569,12 +5498,12 @@ filetypes:
description: Hjson (https://hjson.github.io)
---
name: sway
remote: jamespeapen/swayconfig.vim/tree/i3sway
remote: jamespeapen/swayconfig.vim
filetypes:
- name: i3config
- name: swayconfig
patterns:
- pattern: 'i3.config,*.i3config,*.i3.config,*sway/config,*.swayconfig,*.sway.config,sway.config'
description: Sway/i3 Configuration
- pattern: '*sway/config,*.swayconfig,*.sway.config,swayconfig'
description: Sway Configuration
---
name: just
remote: NoahTheDuke/vim-just
@@ -5603,7 +5532,7 @@ filetypes:
description: OpenSCAD 3D modeling language
---
name: mermaid
remote: mracos/mermaid.vim
remote: mracos/mermaid.vim@main
filetypes:
- name: mermaid
patterns:

View File

@@ -491,6 +491,7 @@ def extract(packages)
output = []
packages.map do |package|
copied_something = false
if !package["remote"]
next
end
@@ -516,14 +517,20 @@ def extract(packages)
if package["extract_in_after"] == true
target = "after/#{target}"
end
copied_something = true
copy_file(package["name"], "#{subtree}#{p}", target)
end
end
elsif File.exist?(subpath)
copied_something = true
copy_file(package["name"], subpath, subdir)
end
end
if !copied_something
raise StandardError.new("No files in: #{package["name"]}")
end
if repo == "vim/vim"
next
end

File diff suppressed because one or more lines are too long

108
syntax/lilypond.vim Normal file
View File

@@ -0,0 +1,108 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'lilypond', 'syntax/lilypond.vim')
finish
endif
" LilyPond syntax file
" Language: LilyPond
" Maintainer: Heikki Junes <hjunes@cc.hut.fi>
" License: This file is part of LilyPond, the GNU music typesetter.
"
" Copyright (C) 2002-2004, 2008-2010 Han-Wen Nienhuys <hanwen@xs4all.nl>
"
" LilyPond is free software: you can redistribute it and/or modify
" it under the terms of the GNU General Public License as published by
" the Free Software Foundation, either version 3 of the License, or
" (at your option) any later version.
"
" LilyPond is distributed in the hope that it will be useful,
" but WITHOUT ANY WARRANTY; without even the implied warranty of
" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
" GNU General Public License for more details.
"
" You should have received a copy of the GNU General Public License
" along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
"
" 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 <sfile>: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 <args>
else
command -nargs=+ HiLink hi def link <args>
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"

65
syntax/mermaid.vim Normal file
View File

@@ -0,0 +1,65 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'mermaid', 'syntax/mermaid.vim')
finish
endif
setlocal iskeyword+=-
syntax keyword mermaidDiagramType classDiagram classDiagram-v2 erDiagram gantt graph flowchart pie sequenceDiagram stateDiagram stateDiagram-v2
syntax match mermaidOperator /\v(-|\<|\>|\+|\||\=)/
syntax match mermaidComment /\v^(\s?)+\%\%.*$/
syntax region mermaidString start=/"/ end=/"/ skip=/\\"/
" is used in both class and state diagrams
syntax match mermaidSpecialAnnotation /\v\<\<\w+\>\>/
syntax match mermaidKeyword /\v^\s+(subgraph|loop|alt|else|opt|par[^a-z]|and|rect|end|participant|activate|deactivate)/
syntax match mermaidGraphOperator /\v(\.-|-\.|\&|o-|-o|x-|-x)/
syntax keyword mermaidGraphClickKeyword click
syntax match mermaidNote /\v^\s+(note[^s]|Note[^s]|end note)/ nextgroup=mermaidNoteDirection
syntax match mermaidNoteDirection /\v(left of|right of|over[^a-z])/
syntax keyword mermaidSequenceFunction rgb
" TODO: support class dashed link operator: `..`
syntax match mermaidClassOperator /\v(\*-|-\*|\<\.\.|\.\.\>|\|\.\.|\.\.\|)/
syntax keyword mermaidClassClassKeyword class
syntax keyword mermaidClassType
\ int[eger] bool[ean] string float bigdec[imal] char[cter] double symbol
syntax match mermaidClassGenericType /\v\w+\~\w+\~/
\ contains=ALLBUT,mermaidClassGenericType
" TODO Fix matching on graph/flowchart round shape: `SecondStep(Go Shopping)`
syntax match mermaidClassFunction /\v\w+\(((\w+|\s+|\~)?,?)+\)/ contains=ALLBUT,mermaidClassFunction
" TODO support class visibility operators
" https://mermaid-js.github.io/mermaid/#/classDiagram?id=visibility
syntax match mermaidStateFinalKeyword /\[\*\]/
syntax match mermaidStateKeyword /\v(\s+as[^a-z]|^\s+state)/
" TODO highlight gantt keywords
" TODO improve er operators
syntax match mermaidErOperator /\v(\}\||\|\{|o\{)/
highlight link mermaidDiagramType Constant
highlight link mermaidOperator Operator
highlight link mermaidComment Comment
highlight link mermaidString String
highlight link mermaidSpecialAnnotation Label
highlight link mermaidNote Keyword
highlight link mermaidNoteDirection Keyword
highlight link mermaidGraphOperator Operator
highlight link mermaidGraphClickKeyword Keyword
highlight link mermaidKeyword Keyword
highlight link mermaidSequenceFunction Function
highlight link mermaidClassClassKeyword Keyword
highlight link mermaidClassOperator Operator
highlight link mermaidClassType Type
highlight link mermaidClassGenericType Type
highlight link mermaidStateFinalKeyword Keyword
highlight link mermaidStateKeyword Keyword
highlight link mermaidErOperator Operator

285
syntax/swayconfig.vim Normal file
View File

@@ -0,0 +1,285 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'sway', 'syntax/swayconfig.vim')
finish
endif
" Vim syntax file
" Language: sway config file
" Original Author: Mohamed Boughaba <mohamed dot bgb at gmail dot com>
" Maintainer: James Eapen <jamespeapen at gmail dot com>
" Version: 1.0
" Last Change: 2020-10-07
" References:
" http://i3wm.org/docs/userguide.html#configuring
" http://vimdoc.sourceforge.net/htmldoc/syntax.html
"
"
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syn clear
elsei exists("b:current_syntax")
fini
en
scriptencoding utf-8
" Error
syn match swayConfigError /.*/
" Todo
syn keyword swayConfigTodo TODO FIXME XXX contained
" Comment
" Comments are started with a # and can only be used at the beginning of a line
syn match swayConfigComment /^\s*#.*$/ contains=swayConfigTodo
" Font
" A FreeType font description is composed by:
" a font family, a style, a weight, a variant, a stretch and a size.
syn match swayConfigFontSeparator /,/ contained
syn match swayConfigFontSeparator /:/ contained
syn keyword swayConfigFontKeyword font contained
syn match swayConfigFontNamespace /\w\+:/ contained contains=swayConfigFontSeparator
syn match swayConfigFontContent /-\?\w\+\(-\+\|\s\+\|,\)/ contained contains=swayConfigFontNamespace,swayConfigFontSeparator,swayConfigFontKeyword
syn match swayConfigFontSize /\s\=\d\+\(px\)\?\s\?$/ contained
syn match swayConfigFont /^\s*font\s\+.*$/ contains=swayConfigFontContent,swayConfigFontSeparator,swayConfigFontSize,swayConfigFontNamespace
syn match swayConfigFont /^\s*font\s\+.*\(\\\_.*\)\?$/ contains=swayConfigFontContent,swayConfigFontSeparator,swayConfigFontSize,swayConfigFontNamespace
syn match swayConfigFont /^\s*font\s\+.*\(\\\_.*\)\?[^\\]\+$/ contains=swayConfigFontContent,swayConfigFontSeparator,swayConfigFontSize,swayConfigFontNamespace
syn match swayConfigFont /^\s*font\s\+\(\(.*\\\_.*\)\|\(.*[^\\]\+$\)\)/ contains=swayConfigFontContent,swayConfigFontSeparator,swayConfigFontSize,swayConfigFontNamespace
" variables
syn match swayConfigString /\(['"]\)\(.\{-}\)\1/ contained
syn match swayConfigColor /#\w\{6}/ contained
syn match swayConfigVariableModifier /+/ contained
syn match swayConfigVariableAndModifier /+\w\+/ contained contains=swayConfigVariableModifier
syn match swayConfigVariable /\$\w\+\(\(-\w\+\)\+\)\?\(\s\|+\)\?/ contains=swayConfigVariableModifier,swayConfigVariableAndModifier
syn keyword swayConfigInitializeKeyword set contained
syn match swayConfigInitialize /^\s*set\s\+.*$/ contains=swayConfigVariable,swayConfigInitializeKeyword,swayConfigColor,swayConfigString
" Gaps
syn keyword swayConfigGapStyleKeyword inner outer horizontal vertical top right bottom left current all set plus minus toggle up down contained
syn match swayConfigGapStyle /^\s*\(gaps\)\s\+\(inner\|outer\|horizontal\|vertical\|left\|top\|right\|bottom\)\(\s\+\(current\|all\)\)\?\(\s\+\(set\|plus\|minus\|toggle\)\)\?\(\s\+\(-\?\d\+\|\$.*\)\)$/ contains=swayConfigGapStyleKeyword,swayConfigNumber,swayConfigVariable
syn keyword swayConfigSmartGapKeyword on inverse_outer contained
syn match swayConfigSmartGap /^\s*smart_gaps\s\+\(on\|inverse_outer\)\s\?$/ contains=swayConfigSmartGapKeyword
syn keyword swayConfigSmartBorderKeyword on no_gaps contained
syn match swayConfigSmartBorder /^\s*smart_borders\s\+\(on\|no_gaps\)\s\?$/ contains=swayConfigSmartBorderKeyword
" Keyboard bindings
syn keyword swayConfigAction toggle fullscreen restart key import kill shrink grow contained
syn keyword swayConfigAction focus move grow height width split layout resize restore reload mute unmute exit mode workspace container to output contained
syn match swayConfigModifier /\w\++\w\+\(\(+\w\+\)\+\)\?/ contained contains=swayConfigVariableModifier
syn match swayConfigNumber /\s\d\+/ contained
syn match swayConfigUnit /\sp\(pt\|x\)/ contained
syn match swayConfigUnitOr /\sor/ contained
syn keyword swayConfigBindKeyword bindsym bindcode exec gaps border contained
syn match swayConfigBindArgument /--\w\+\(\(-\w\+\)\+\)\?\s/ contained
syn match swayConfigBind /^\s*\(bindsym\|bindcode\)\s\+.*$/ contains=swayConfigVariable,swayConfigBindKeyword,swayConfigVariableAndModifier,swayConfigNumber,swayConfigUnit,swayConfigUnitOr,swayConfigBindArgument,swayConfigModifier,swayConfigAction,swayConfigString,swayConfigGapStyleKeyword,swayConfigBorderStyleKeyword
" Floating
syn keyword swayConfigFloatingModifier floating_modifier contained
syn match swayConfigFloatingMouseAction /^\s\?.*floating_modifier\s.*\(normal\|inverted\)$/ contains=swayConfigFloatingModifier,swayConfigVariable
syn keyword swayConfigSizeSpecial x contained
syn match swayConfigNegativeSize /-/ contained
syn match swayConfigSize /-\?\d\+\s\?x\s\?-\?\d\+/ contained contains=swayConfigSizeSpecial,swayConfigNumber,swayConfigNegativeSize
syn match swayConfigFloating /^\s*floating_\(maximum\|minimum\)_size\s\+-\?\d\+\s\?x\s\?-\?\d\+/ contains=swayConfigSize
" Orientation
syn keyword swayConfigOrientationKeyword vertical horizontal auto contained
syn match swayConfigOrientation /^\s*default_orientation\s\+\(vertical\|horizontal\|auto\)\s\?$/ contains=swayConfigOrientationKeyword
" Layout
syn keyword swayConfigLayoutKeyword default stacking tabbed contained
syn match swayConfigLayout /^\s*workspace_layout\s\+\(default\|stacking\|tabbed\)\s\?$/ contains=swayConfigLayoutKeyword
" Border style
syn keyword swayConfigBorderStyleKeyword none normal pixel contained
syn match swayConfigBorderStyle /^\s*\(new_window\|new_float\|default_border\|default_floating_border\)\s\+\(none\|\(normal\|pixel\)\(\s\+\d\+\)\?\(\s\+\$\w\+\(\(-\w\+\)\+\)\?\(\s\|+\)\?\)\?\)\s\?$/ contains=swayConfigBorderStyleKeyword,swayConfigNumber,swayConfigVariable
" Hide borders and edges
syn keyword swayConfigEdgeKeyword none vertical horizontal both smart smart_no_gaps contained
syn match swayConfigEdge /^\s*hide_edge_borders\s\+\(none\|vertical\|horizontal\|both\|smart\|smart_no_gaps\)\s\?$/ contains=swayConfigEdgeKeyword
" Arbitrary commands for specific windows (for_window)
syn keyword swayConfigCommandKeyword for_window contained
syn region swayConfigWindowStringSpecial start=+"+ skip=+\\"+ end=+"+ contained contains=swayConfigString
syn region swayConfigWindowCommandSpecial start="\[" end="\]" contained contains=swayConfigWindowStringSpacial,swayConfigString
syn match swayConfigArbitraryCommand /^\s*for_window\s\+.*$/ contains=swayConfigWindowCommandSpecial,swayConfigCommandKeyword,swayConfigBorderStyleKeyword,swayConfigLayoutKeyword,swayConfigOrientationKeyword,Size,swayConfigNumber
" Disable focus open opening
syn keyword swayConfigNoFocusKeyword no_focus contained
syn match swayConfigDisableFocus /^\s*no_focus\s\+.*$/ contains=swayConfigWindowCommandSpecial,swayConfigNoFocusKeyword
" Move client to specific workspace automatically
syn keyword swayConfigAssignKeyword assign contained
syn match swayConfigAssignSpecial /→/ contained
syn match swayConfigAssign /^\s*assign\s\+.*$/ contains=swayConfigAssignKeyword,swayConfigWindowCommandSpecial,swayConfigAssignSpecial
" X resources
syn keyword swayConfigResourceKeyword set_from_resource contained
syn match swayConfigResource /^\s*set_from_resource\s\+.*$/ contains=swayConfigResourceKeyword,swayConfigWindowCommandSpecial,swayConfigColor,swayConfigVariable
" Auto start applications
syn keyword swayConfigExecKeyword exec exec_always contained
syn match swayConfigNoStartupId /--no-startup-id/ contained " We are not using swayConfigBindArgument as only no-startup-id is supported here
syn match swayConfigExec /^\s*exec\(_always\)\?\s\+.*$/ contains=swayConfigExecKeyword,swayConfigNoStartupId,swayConfigString
" Automatically putting workspaces on specific screens
syn keyword swayConfigWorkspaceKeyword workspace contained
syn keyword swayConfigOutputKeyword output contained
syn match swayConfigWorkspace /^\s*workspace\s\+.*$/ contains=swayConfigWorkspaceKeyword,swayConfigNumber,swayConfigString,swayConfigOutputKeyword
" set display outputs
syn match swayConfigOutput /^\s*output\s\+.*$/ contains=swayConfigOutputKeyword
" set display focus
syn keyword swayConfigFocusKeyword focus contained
syn keyword swayConfigFocusType output contained
syn match swayConfigFocus /^\s*focus\soutput\s.*$/ contains=swayConfigFocusKeyword,swayConfigFocusType
" Changing colors
syn keyword swayConfigClientColorKeyword client focused focused_inactive unfocused urgent placeholder background contained
syn match swayConfigClientColor /^\s*client.\w\+\s\+.*$/ contains=swayConfigClientColorKeyword,swayConfigColor,swayConfigVariable
syn keyword swayConfigTitleAlignKeyword left center right contained
syn match swayConfigTitleAlign /^\s*title_align\s\+.*$/ contains=swayConfigTitleAlignKeyword
" Interprocess communication
syn match swayConfigInterprocessKeyword /ipc-socket/ contained
syn match swayConfigInterprocess /^\s*ipc-socket\s\+.*$/ contains=swayConfigInterprocessKeyword
" Mouse warping
syn keyword swayConfigMouseWarpingKeyword mouse_warping contained
syn keyword swayConfigMouseWarpingType output none contained
syn match swayConfigMouseWarping /^\s*mouse_warping\s\+\(output\|none\)\s\?$/ contains=swayConfigMouseWarpingKeyword,swayConfigMouseWarpingType
" Focus follows mouse
syn keyword swayConfigFocusFollowsMouseKeyword focus_follows_mouse contained
syn keyword swayConfigFocusFollowsMouseType yes no contained
syn match swayConfigFocusFollowsMouse /^\s*focus_follows_mouse\s\+\(yes\|no\)\s\?$/ contains=swayConfigFocusFollowsMouseKeyword,swayConfigFocusFollowsMouseType
" Popups during fullscreen mode
syn keyword swayConfigPopupOnFullscreenKeyword popup_during_fullscreen contained
syn keyword swayConfigPopuponFullscreenType smart ignore leave_fullscreen contained
syn match swayConfigPopupOnFullscreen /^\s*popup_during_fullscreen\s\+\w\+\s\?$/ contains=swayConfigPopupOnFullscreenKeyword,swayConfigPopupOnFullscreenType
" Focus wrapping
syn keyword swayConfigFocusWrappingKeyword force_focus_wrapping focus_wrapping contained
syn keyword swayConfigFocusWrappingType yes no contained
syn match swayConfigFocusWrapping /^\s*\(force_\)\?focus_wrapping\s\+\(yes\|no\)\s\?$/ contains=swayConfigFocusWrappingType,swayConfigFocusWrappingKeyword
" Forcing Xinerama
syn keyword swayConfigForceXineramaKeyword force_xinerama contained
syn match swayConfigForceXinerama /^\s*force_xinerama\s\+\(yes\|no\)\s\?$/ contains=swayConfigFocusWrappingType,swayConfigForceXineramaKeyword
" Automatic back-and-forth when switching to the current workspace
syn keyword swayConfigAutomaticSwitchKeyword workspace_auto_back_and_forth contained
syn match swayConfigAutomaticSwitch /^\s*workspace_auto_back_and_forth\s\+\(yes\|no\)\s\?$/ contains=swayConfigFocusWrappingType,swayConfigAutomaticSwitchKeyword
" Delay urgency hint
syn keyword swayConfigTimeUnit ms contained
syn keyword swayConfigDelayUrgencyKeyword force_display_urgency_hint contained
syn match swayConfigDelayUrgency /^\s*force_display_urgency_hint\s\+\d\+\s\+ms\s\?$/ contains=swayConfigFocusWrappingType,swayConfigDelayUrgencyKeyword,swayConfigNumber,swayConfigTimeUnit
" Focus on window activation
syn keyword swayConfigFocusOnActivationKeyword focus_on_window_activation contained
syn keyword swayConfigFocusOnActivationType smart urgent focus none contained
syn match swayConfigFocusOnActivation /^\s*focus_on_window_activation\s\+\(smart\|urgent\|focus\|none\)\s\?$/ contains=swayConfigFocusOnActivationKeyword,swayConfigFocusOnActivationType
" Automatic back-and-forth when switching to the current workspace
syn keyword swayConfigDrawingMarksKeyword show_marks contained
syn match swayConfigDrawingMarks /^\s*show_marks\s\+\(yes\|no\)\s\?$/ contains=swayConfigFocusWrappingType,swayConfigDrawingMarksKeyword
" Group mode/bar
syn keyword swayConfigBlockKeyword mode bar colors i3bar_command status_command position exec mode hidden_state modifier id position output background statusline tray_output tray_padding separator separator_symbol workspace_buttons strip_workspace_numbers binding_mode_indicator focused_workspace active_workspace inactive_workspace urgent_workspace binding_mode contained
syn region swayConfigBlock start=+.*s\?{$+ end=+^}$+ contains=swayConfigBlockKeyword,swayConfigString,swayConfigBind,swayConfigComment,swayConfigFont,swayConfigFocusWrappingType,swayConfigColor,swayConfigVariable transparent keepend extend
" Line continuation
syn region swayConfigLineCont start=/^.*\\$/ end=/^.*$/ contains=swayConfigBlockKeyword,swayConfigString,swayConfigBind,swayConfigComment,swayConfigFont,swayConfigFocusWrappingType,swayConfigColor,swayConfigVariable transparent keepend extend
" Includes with relative paths to config files
syn keyword swayConfigInclude include contained
syn match swayConfigFile /^include\s\(\~\?\/.*$\|\.\{0,2}\/.*$\)/ contains=swayConfigInclude
" Define the highlighting.
let b:current_syntax = "swayconfig"
hi! def link swayConfigError Error
hi! def link swayConfigTodo Todo
hi! def link swayConfigComment Comment
hi! def link swayConfigFontContent Type
hi! def link swayConfigFocusOnActivationType Type
hi! def link swayConfigPopupOnFullscreenType Type
hi! def link swayConfigOrientationKeyword Type
hi! def link swayConfigMouseWarpingType Type
hi! def link swayConfigFocusFollowsMouseType Type
hi! def link swayConfigGapStyleKeyword Type
hi! def link swayConfigTitleAlignKeyword Type
hi! def link swayConfigSmartGapKeyword Type
hi! def link swayConfigSmartBorderKeyword Type
hi! def link swayConfigLayoutKeyword Type
hi! def link swayConfigBorderStyleKeyword Type
hi! def link swayConfigEdgeKeyword Type
hi! def link swayConfigAction Type
hi! def link swayConfigCommand Type
hi! def link swayConfigOutputKeyword Type
hi! def link swayConfigWindowCommandSpecial Type
hi! def link swayConfigFocusWrappingType Type
hi! def link swayConfigUnitOr Type
hi! def link swayConfigFontSize Constant
hi! def link swayConfigColor Constant
hi! def link swayConfigNumber Constant
hi! def link swayConfigUnit Constant
hi! def link swayConfigVariableAndModifier Constant
hi! def link swayConfigTimeUnit Constant
hi! def link swayConfigModifier Constant
hi! def link swayConfigString Constant
hi! def link swayConfigNegativeSize Constant
hi! def link swayConfigFontSeparator Special
hi! def link swayConfigVariableModifier Special
hi! def link swayConfigSizeSpecial Special
hi! def link swayConfigWindowSpecial Special
hi! def link swayConfigAssignSpecial Special
hi! def link swayConfigFontNamespace PreProc
hi! def link swayConfigBindArgument PreProc
hi! def link swayConfigNoStartupId PreProc
hi! def link swayConfigFontKeyword Identifier
hi! def link swayConfigBindKeyword Identifier
hi! def link swayConfigOrientation Identifier
hi! def link swayConfigGapStyle Identifier
hi! def link swayConfigTitleAlign Identifier
hi! def link swayConfigSmartGap Identifier
hi! def link swayConfigSmartBorder Identifier
hi! def link swayConfigLayout Identifier
hi! def link swayConfigBorderStyle Identifier
hi! def link swayConfigEdge Identifier
hi! def link swayConfigFloating Identifier
hi! def link swayConfigCommandKeyword Identifier
hi! def link swayConfigNoFocusKeyword Identifier
hi! def link swayConfigInitializeKeyword Identifier
hi! def link swayConfigAssignKeyword Identifier
hi! def link swayConfigResourceKeyword Identifier
hi! def link swayConfigExecKeyword Identifier
hi! def link swayConfigWorkspaceKeyword Identifier
hi! def link swayConfigClientColorKeyword Identifier
hi! def link swayConfigInterprocessKeyword Identifier
hi! def link swayConfigMouseWarpingKeyword Identifier
hi! def link swayConfigFocusFollowsMouseKeyword Identifier
hi! def link swayConfigPopupOnFullscreenKeyword Identifier
hi! def link swayConfigFocusWrappingKeyword Identifier
hi! def link swayConfigForceXineramaKeyword Identifier
hi! def link swayConfigAutomaticSwitchKeyword Identifier
hi! def link swayConfigDelayUrgencyKeyword Identifier
hi! def link swayConfigFocusOnActivationKeyword Identifier
hi! def link swayConfigDrawingMarksKeyword Identifier
hi! def link swayConfigBlockKeyword Identifier
hi! def link swayConfigVariable Statement
hi! def link swayConfigArbitraryCommand Type
hi! def link swayConfigInclude Identifier
hi! def link swayConfigFile Constant
hi! def link swayConfigFloatingModifier Identifier
hi! def link swayConfigFloatingMouseAction Type
hi! def link swayConfigFocusKeyword Type
hi! def link swayConfigFocusType Identifier

80
syntax/toml.vim Normal file
View File

@@ -0,0 +1,80 @@
if polyglot#init#is_disabled(expand('<sfile>:p'), 'toml', 'syntax/toml.vim')
finish
endif
" Language: TOML
" Maintainer: Caleb Spare <cespare@gmail.com>
" URL: https://github.com/cespare/vim-toml
" LICENSE: MIT
if exists('b:current_syntax')
finish
endif
syn match tomlEscape /\\[btnfr"/\\]/ display contained
syn match tomlEscape /\\u\x\{4}/ contained
syn match tomlEscape /\\U\x\{8}/ contained
hi def link tomlEscape SpecialChar
syn match tomlLineEscape /\\$/ contained
hi def link tomlLineEscape SpecialChar
" Basic strings
syn region tomlString oneline start=/"/ skip=/\\\\\|\\"/ end=/"/ contains=tomlEscape
" Multi-line basic strings
syn region tomlString start=/"""/ end=/"""/ contains=tomlEscape,tomlLineEscape
" Literal strings
syn region tomlString oneline start=/'/ end=/'/
" Multi-line literal strings
syn region tomlString start=/'''/ end=/'''/
hi def link tomlString String
syn match tomlInteger /[+-]\=\<[1-9]\(_\=\d\)*\>/ display
syn match tomlInteger /[+-]\=\<0\>/ display
syn match tomlInteger /[+-]\=\<0x[[:xdigit:]]\(_\=[[:xdigit:]]\)*\>/ display
syn match tomlInteger /[+-]\=\<0o[0-7]\(_\=[0-7]\)*\>/ display
syn match tomlInteger /[+-]\=\<0b[01]\(_\=[01]\)*\>/ display
syn match tomlInteger /[+-]\=\<\(inf\|nan\)\>/ display
hi def link tomlInteger Number
syn match tomlFloat /[+-]\=\<\d\(_\=\d\)*\.\d\+\>/ display
syn match tomlFloat /[+-]\=\<\d\(_\=\d\)*\(\.\d\(_\=\d\)*\)\=[eE][+-]\=\d\(_\=\d\)*\>/ display
hi def link tomlFloat Float
syn match tomlBoolean /\<\%(true\|false\)\>/ display
hi def link tomlBoolean Boolean
" https://tools.ietf.org/html/rfc3339
syn match tomlDate /\d\{4\}-\d\{2\}-\d\{2\}/ display
syn match tomlDate /\d\{2\}:\d\{2\}:\d\{2\}\%(\.\d\+\)\?/ display
syn match tomlDate /\d\{4\}-\d\{2\}-\d\{2\}[T ]\d\{2\}:\d\{2\}:\d\{2\}\%(\.\d\+\)\?\%(Z\|[+-]\d\{2\}:\d\{2\}\)\?/ display
hi def link tomlDate Constant
syn match tomlKey /\v(^|[{,])\s*\zs[[:alnum:]._-]+\ze\s*\=/ display
hi def link tomlKey Identifier
syn region tomlKeyDq oneline start=/\v(^|[{,])\s*\zs"/ end=/"\ze\s*=/ contains=tomlEscape
hi def link tomlKeyDq Identifier
syn region tomlKeySq oneline start=/\v(^|[{,])\s*\zs'/ end=/'\ze\s*=/
hi def link tomlKeySq Identifier
syn region tomlTable oneline start=/^\s*\[[^\[]/ end=/\]/ contains=tomlKey,tomlKeyDq,tomlKeySq
hi def link tomlTable Title
syn region tomlTableArray oneline start=/^\s*\[\[/ end=/\]\]/ contains=tomlKey,tomlKeyDq,tomlKeySq
hi def link tomlTableArray Title
syn cluster tomlValue contains=tomlArray,tomlString,tomlInteger,tomlFloat,tomlBoolean,tomlDate,tomlComment
syn region tomlKeyValueArray start=/=\s*\[\zs/ end=/\]/ contains=@tomlValue
syn region tomlArray start=/\[/ end=/\]/ contains=@tomlValue contained
syn keyword tomlTodo TODO FIXME XXX BUG contained
hi def link tomlTodo Todo
syn match tomlComment /#.*/ contains=@Spell,tomlTodo
hi def link tomlComment Comment
syn sync minlines=500
let b:current_syntax = 'toml'

View File

@@ -279,7 +279,6 @@ call TestFiletype('csdl')
call TestFiletype('cabal')
call TestFiletype('cdrtoc')
call TestFiletype('cdrdaoconf')
call TestFiletype('cfengine')
call TestFiletype('chaiscript')
call TestFiletype('cdl')
call TestFiletype('conaryrecipe')
@@ -341,7 +340,6 @@ call TestFiletype('expect')
call TestFiletype('exports')
call TestFiletype('falcon')
call TestFiletype('fan')
call TestFiletype('factor')
call TestFiletype('fetchmail')
call TestFiletype('focexec')
call TestFiletype('reva')
@@ -374,7 +372,6 @@ call TestFiletype('template')
call TestFiletype('hostconf')
call TestFiletype('hostsaccess')
call TestFiletype('hb')
call TestFiletype('httest')
call TestFiletype('icon')
call TestFiletype('msidl')
call TestFiletype('icemenu')
@@ -436,7 +433,6 @@ call TestFiletype('ist')
call TestFiletype('mallard')
call TestFiletype('manconf')
call TestFiletype('maple')
call TestFiletype('map')
call TestFiletype('mel')
call TestFiletype('hgcommit')
call TestFiletype('messages')
@@ -480,7 +476,6 @@ call TestFiletype('papp')
call TestFiletype('passwd')
call TestFiletype('pascal')
call TestFiletype('pdf')
call TestFiletype('pcmk')
call TestFiletype('pike')
call TestFiletype('cmod')
call TestFiletype('pinfo')
@@ -499,7 +494,6 @@ call TestFiletype('povini')
call TestFiletype('pccts')
call TestFiletype('ppwiz')
call TestFiletype('obj')
call TestFiletype('proc')
call TestFiletype('privoxy')
call TestFiletype('procmail')
call TestFiletype('psf')
@@ -628,7 +622,6 @@ call TestFiletype('xsd')
call TestFiletype('xslt')
call TestFiletype('yacc')
call TestFiletype('zimbu')
call TestFiletype('zimbutempl')
call TestFiletype('z8a')
call TestFiletype('apachestyle')
call TestFiletype('asterisk')
@@ -639,7 +632,6 @@ call TestFiletype('fvwm')
call TestFiletype('logcheck')
call TestFiletype('svn')
call TestFiletype('text')
call TestFiletype('pullrequest')
call TestFiletype('xf86conf')
call TestFiletype('xpm')
call TestFiletype('xpm2')
@@ -648,7 +640,7 @@ call TestFiletype('mint')
call TestFiletype('jsonc')
call TestFiletype('gleam')
call TestFiletype('hjson')
call TestFiletype('i3config')
call TestFiletype('swayconfig')
call TestFiletype('just')
call TestFiletype('nftables')
call TestFiletype('openscad')