Add cuesheet support, closes #366

This commit is contained in:
Adam Stankiewicz 2019-03-04 09:37:07 +01:00
parent c39dff0b10
commit edfcded9fd
4 changed files with 40 additions and 1 deletions

View File

@ -8,7 +8,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. > 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 **won't affect your startup time**, as scripts are loaded only on demand\*.
- It **installs and updates 100+ times faster** than the <!--Package Count-->117<!--/Package Count--> packages it consists of. - It **installs and updates 100+ times faster** than the <!--Package Count-->118<!--/Package Count--> packages it consists of.
- Solid syntax and indentation support (other features skipped). Only the best language packs. - Solid syntax and indentation support (other features skipped). Only the best language packs.
- All unnecessary files are ignored (like enormous documentation from php support). - All unnecessary files are ignored (like enormous documentation from php support).
- No support for esoteric languages, only most popular ones (modern too, like `slim`). - No support for esoteric languages, only most popular ones (modern too, like `slim`).
@ -62,6 +62,7 @@ If you need full functionality of any plugin, please use it directly with your p
- [cryptol](https://github.com/victoredwardocallaghan/cryptol.vim) (syntax, compiler, ftplugin) - [cryptol](https://github.com/victoredwardocallaghan/cryptol.vim) (syntax, compiler, ftplugin)
- [crystal](https://github.com/rhysd/vim-crystal) (syntax, indent, autoload, ftplugin) - [crystal](https://github.com/rhysd/vim-crystal) (syntax, indent, autoload, ftplugin)
- [cucumber](https://github.com/tpope/vim-cucumber) (syntax, indent, compiler, ftplugin) - [cucumber](https://github.com/tpope/vim-cucumber) (syntax, indent, compiler, ftplugin)
- [cue](https://github.com/mgrabovsky/vim-cuesheet) (syntax)
- [dart](https://github.com/dart-lang/dart-vim-plugin) (syntax, indent, autoload, ftplugin) - [dart](https://github.com/dart-lang/dart-vim-plugin) (syntax, indent, autoload, ftplugin)
- [dockerfile](https://github.com/ekalinin/Dockerfile.vim) (syntax, indent, ftplugin) - [dockerfile](https://github.com/ekalinin/Dockerfile.vim) (syntax, indent, ftplugin)
- [elixir](https://github.com/elixir-lang/vim-elixir) (syntax, indent, compiler, autoload, ftplugin) - [elixir](https://github.com/elixir-lang/vim-elixir) (syntax, indent, compiler, autoload, ftplugin)

1
build
View File

@ -170,6 +170,7 @@ PACKS="
cryptol:victoredwardocallaghan/cryptol.vim cryptol:victoredwardocallaghan/cryptol.vim
crystal:rhysd/vim-crystal crystal:rhysd/vim-crystal
cucumber:tpope/vim-cucumber cucumber:tpope/vim-cucumber
cue:mgrabovsky/vim-cuesheet
dart:dart-lang/dart-vim-plugin dart:dart-lang/dart-vim-plugin
dockerfile:ekalinin/Dockerfile.vim dockerfile:ekalinin/Dockerfile.vim
elixir:elixir-lang/vim-elixir elixir:elixir-lang/vim-elixir

View File

@ -242,6 +242,13 @@ autocmd BufNewFile,BufReadPost *.feature,*.story set filetype=cucumber
augroup end augroup end
endif endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cue') == -1
augroup filetypedetect
" cue, from cuesheet.vim in mgrabovsky/vim-cuesheet
autocmd BufRead,BufNewFile *.cue set filetype=cuesheet
augroup end
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dart') == -1 if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dart') == -1
augroup filetypedetect augroup filetypedetect
" dart, from dart.vim in dart-lang/dart-vim-plugin " dart, from dart.vim in dart-lang/dart-vim-plugin

30
syntax/cuesheet.vim Normal file
View File

@ -0,0 +1,30 @@
if exists('g:polyglot_disabled') && index(g:polyglot_disabled, 'cue') != -1
finish
endif
" Language: Cue sheet
" Maintainer: Matěj Grabovský
" URL: http://github.com/mgrabovsky
" License: MIT
" Bail if our syntax is already loaded.
if exists('b:current_syntax') && b:current_syntax == 'cuesheet'
finish
endif
syn case match
setl conceallevel=2
syn region String matchgroup=cueString start=/"/ skip=/\\"/ end=/"/
\ transparent contains=NONE
syn region Comment start=/^\s*REM / end=/$/ contains=specialComment
syn keyword SpecialComment COMMENT DATE DISCID GENRE
syn keyword Function CATALOG CDTEXTFILE FILE FLAGS INDEX ISRC PERFORMER POSTGAP
\ PREGAP SONGWRITER TITLE TRACK
syn keyword StorageClass AIFF AUDIO MP3 WAVE
syn match Number /[+-]\=\<\d\+\%(\.\d\+\)\=\>/
syn match Number /\<\d\+\%(:\d\{2}\)\{2}\>/
let b:current_syntax='cuesheet'
" vim: nowrap sw=2 sts=2 ts=8: