Mercurial > vim
view runtime/syntax/lyrics.vim @ 32262:854aeaac48b7 v9.0.1462
patch 9.0.1462: recursively calling :defer function if it does :qa
Commit: https://github.com/vim/vim/commit/42994bf678f46dc9ca66e49f512261da8864fff6
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Apr 17 19:23:45 2023 +0100
patch 9.0.1462: recursively calling :defer function if it does :qa
Problem: Recursively calling :defer function if it does :qa.
Solution: Clear the defer entry before calling the function. (closes https://github.com/vim/vim/issues/12266)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 17 Apr 2023 20:30:07 +0200 |
parents | 0827d3d6d8c0 |
children | 7b4f0a2a87bf |
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