view runtime/syntax/lyrics.vim @ 32166:cf48f4b9dc0a v9.0.1414

patch 9.0.1414: <M-S-x> in Kitty does not use the Shift modifier Commit: https://github.com/vim/vim/commit/ea83c194625e51c28a2796eba9ba87b0b9ab23e0 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Mar 18 17:22:46 2023 +0000 patch 9.0.1414: <M-S-x> in Kitty does not use the Shift modifier Problem: <M-S-x> in Kitty does not use the Shift modifier. Solution: Apply the Shift modifier to ASCII letters. (closes https://github.com/vim/vim/issues/11913)
author Bram Moolenaar <Bram@vim.org>
date Sat, 18 Mar 2023 18:30:04 +0100
parents 0827d3d6d8c0
children
line wrap: on
line source

" Vim syntax file
" Language:     LyRiCs
" Maintainer:   ObserverOfTime <chronobserver@disroot.org>
" Filenames:    *.lrc
" Last Change:  2022 Sep 18

if exists('b:current_syntax')
    finish
endif

let s:cpo_save = &cpoptions
set cpoptions&vim

syn case ignore

" Errors
syn match lrcError /^.\+$/

" ID tags
syn match lrcTag /^\s*\[\a\+:.\+\]\s*$/ contains=lrcTagName,lrcTagValue
syn match lrcTagName contained nextgroup=lrcTagValue
            \ /\[\zs\(al\|ar\|au\|by\|encoding\|la\|id\|length\|offset\|re\|ti\|ve\)\ze:/
syn match lrcTagValue /:\zs.\+\ze\]/ contained

" Lyrics
syn match lrcLyricTime /^\s*\[\d\d:\d\d\.\d\d\]/
            \ contains=lrcNumber nextgroup=lrcLyricLine
syn match lrcLyricLine /.*$/ contained contains=lrcWordTime,@Spell
syn match lrcWordTime /<\d\d:\d\d\.\d\d>/ contained contains=lrcNumber,@NoSpell
syn match lrcNumber /[+-]\=\d\+/ contained

hi def link lrcLyricTime Label
hi def link lrcNumber Number
hi def link lrcTag PreProc
hi def link lrcTagName Identifier
hi def link lrcTagValue String
hi def link lrcWordTime Special
hi def link lrcError Error

let b:current_syntax = 'lyrics'

let &cpoptions = s:cpo_save
unlet s:cpo_save