Update runtime files
This commit is contained in:
62
runtime/syntax/srt.vim
Normal file
62
runtime/syntax/srt.vim
Normal file
@ -0,0 +1,62 @@
|
||||
" Vim syntax file
|
||||
" Language: SubRip
|
||||
" Maintainer: ObserverOfTime <chronobserver@disroot.org>
|
||||
" Filenames: *.srt
|
||||
" Last Change: 2022 Sep 12
|
||||
|
||||
if exists('b:current_syntax')
|
||||
finish
|
||||
endif
|
||||
|
||||
syn spell toplevel
|
||||
|
||||
syn cluster srtSpecial contains=srtBold,srtItalics,srtStrikethrough,srtUnderline,srtFont,srtTag,srtEscape
|
||||
|
||||
" Number
|
||||
syn match srtNumber /^\d\+$/ contains=@NoSpell
|
||||
|
||||
" Range
|
||||
syn match srtRange /\d\d:\d\d:\d\d[,.]\d\d\d --> \d\d:\d\d:\d\d[,.]\d\d\d/ skipwhite contains=srtArrow,srtTime nextgroup=srtCoordinates
|
||||
syn match srtArrow /-->/ contained contains=@NoSpell
|
||||
syn match srtTime /\d\d:\d\d:\d\d[,.]\d\d\d/ contained contains=@NoSpell
|
||||
syn match srtCoordinates /X1:\d\+ X2:\d\+ Y1:\d\+ Y2:\d\+/ contained contains=@NoSpell
|
||||
|
||||
" Bold
|
||||
syn region srtBold matchgroup=srtFormat start=+<b>+ end=+</b>+ contains=@srtSpecial
|
||||
syn region srtBold matchgroup=srtFormat start=+{b}+ end=+{/b}+ contains=@srtSpecial
|
||||
|
||||
" Italics
|
||||
syn region srtItalics matchgroup=srtFormat start=+<i>+ end=+</i>+ contains=@srtSpecial
|
||||
syn region srtItalics matchgroup=srtFormat start=+{i}+ end=+{/i}+ contains=@srtSpecial
|
||||
|
||||
" Strikethrough
|
||||
syn region srtStrikethrough matchgroup=srtFormat start=+<s>+ end=+</s>+ contains=@srtSpecial
|
||||
syn region srtStrikethrough matchgroup=srtFormat start=+{s}+ end=+{/s}+ contains=@srtSpecial
|
||||
|
||||
" Underline
|
||||
syn region srtUnderline matchgroup=srtFormat start=+<u>+ end=+</u>+ contains=@srtSpecial
|
||||
syn region srtUnderline matchgroup=srtFormat start=+{u}+ end=+{/u}+ contains=@srtSpecial
|
||||
|
||||
" Font
|
||||
syn region srtFont matchgroup=srtFormat start=+<font[^>]\{-}>+ end=+</font>+ contains=@srtSpecial
|
||||
|
||||
" ASS tags
|
||||
syn match srtTag /{\\[^}]\{1,}}/ contains=@NoSpell
|
||||
|
||||
" Special characters
|
||||
syn match srtEscape /\\[nNh]/ contains=@NoSpell
|
||||
|
||||
hi def link srtArrow Delimiter
|
||||
hi def link srtCoordinates Label
|
||||
hi def link srtEscape SpecialChar
|
||||
hi def link srtFormat Special
|
||||
hi def link srtNumber Number
|
||||
hi def link srtTag PreProc
|
||||
hi def link srtTime String
|
||||
|
||||
hi srtBold cterm=bold gui=bold
|
||||
hi srtItalics cterm=italic gui=italic
|
||||
hi srtStrikethrough cterm=strikethrough gui=strikethrough
|
||||
hi srtUnderline cterm=underline gui=underline
|
||||
|
||||
let b:current_syntax = 'srt'
|
||||
Reference in New Issue
Block a user