view runtime/syntax/abc.vim @ 22313:9b684e0b4c2f

Added tag v8.2.1705 for changeset e06ba60fbbd87dea14d7ac30f9c6f482a3f9b390
author Bram Moolenaar <Bram@vim.org>
date Fri, 18 Sep 2020 19:45:05 +0200
parents 46763b01cd9a
children
line wrap: on
line source

" Vim syntax file
" Language:	abc music notation language
" Maintainer:	James Allwright <J.R.Allwright@westminster.ac.uk>
" URL:		http://perun.hscs.wmin.ac.uk/~jra/vim/syntax/abc.vim
" Last Change:	27th April 2001

" quit when a syntax file was already loaded
if exists("b:current_syntax")
  finish
endif

" tags
syn region abcGuitarChord start=+"[A-G]+ end=+"+ contained
syn match abcNote "z[1-9]*[0-9]*" contained
syn match abcNote "z[1-9]*[0-9]*/[248]\=" contained
syn match abcNote "[=_\^]\{,2}[A-G],*[1-9]*[0-9]*" contained
syn match abcNote "[=_\^]\{,2}[A-G],*[1-9]*[0-9]*/[248]\=" contained
syn match abcNote "[=_\^]\{,2}[a-g]'*[1-9]*[0-9]*"  contained
syn match abcNote "[=_\^]\{,2}[a-g]'*[1-9]*[0-9]*/[248]\="  contained
syn match abcBar "|"  contained
syn match abcBar "[:|][:|]"  contained
syn match abcBar ":|2"  contained
syn match abcBar "|1"  contained
syn match abcBar "\[[12]"  contained
syn match abcTuple "([1-9]\+:\=[0-9]*:\=[0-9]*" contained
syn match abcBroken "<\|<<\|<<<\|>\|>>\|>>>" contained
syn match abcTie    "-"
syn match abcHeadField "^[A-EGHIK-TVWXZ]:.*$" contained
syn match abcBodyField "^[KLMPQWVw]:.*$" contained
syn region abcHeader start="^X:" end="^K:.*$" contained contains=abcHeadField,abcComment keepend
syn region abcTune start="^X:" end="^ *$" contains=abcHeader,abcComment,abcBar,abcNote,abcBodyField,abcGuitarChord,abcTuple,abcBroken,abcTie
syn match abcComment "%.*$"


" Define the default highlighting.
" Only when an item doesn't have highlighting yet

hi def link abcComment		Comment
hi def link abcHeadField		Type
hi def link abcBodyField		Special
hi def link abcBar			Statement
hi def link abcTuple			Statement
hi def link abcBroken			Statement
hi def link abcTie			Statement
hi def link abcGuitarChord	Identifier
hi def link abcNote			Constant


let b:current_syntax = "abc"

" vim: ts=4