1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'latex') == -1
" vimtex - LaTeX plugin for Vim
"
" Maintainer: Karl Yngve Lervåg
" Email: karl.yngve@gmail.com
"
function! vimtex#syntax#p#biblatex#load() abort " {{{1
if has_key(b:vimtex_syntax, 'biblatex') | return | endif
let b:vimtex_syntax.biblatex = 1
if get(g:, 'tex_fast', 'r') !~# 'r' | return | endif
for l:pattern in [
\ 'bibentry',
\ 'cite[pt]?\*?',
\ 'citeal[tp]\*?',
\ 'cite(num|text|url)',
\ '[Cc]ite%(title|author|year(par)?|date)\*?',
\ '[Pp]arencite\*?',
\ 'foot%(full)?cite%(text)?',
\ 'fullcite',
\ '[Tt]extcite',
\ '[Ss]martcite',
\ 'supercite',
\ '[Aa]utocite\*?',
\ '[Ppf]?[Nn]otecite',
\ '%(text|block)cquote\*?',
\]
execute 'syntax match texStatement'
\ '/\v\\' . l:pattern . '\ze\s*%(\[|\{)/'
\ 'nextgroup=texRefOption,texCite'
endfor
for l:pattern in [
\ '[Cc]ites',
\ '[Pp]arencites',
\ 'footcite%(s|texts)',
\ '[Tt]extcites',
\ '[Ss]martcites',
\ 'supercites',
\ '[Aa]utocites',
\ '[pPfFsStTaA]?[Vv]olcites?',
\ 'cite%(field|list|name)',
\]
execute 'syntax match texStatement'
\ '/\v\\' . l:pattern . '\ze\s*%(\[|\{)/'
\ 'nextgroup=texRefOptions,texCites'
endfor
for l:pattern in [
\ '%(foreign|hyphen)textcquote\*?',
\ '%(foreign|hyphen)blockcquote',
\ 'hybridblockcquote',
\]
execute 'syntax match texStatement'
\ '/\v\\' . l:pattern . '\ze\s*%(\[|\{)/'
\ 'nextgroup=texQuoteLang'
endfor
syntax region texRefOptions contained matchgroup=Delimiter
\ start='\[' end=']'
\ contains=@texRefGroup,texRefZone
\ nextgroup=texRefOptions,texCites
syntax region texCites contained matchgroup=Delimiter
\ start='{' end='}'
\ contains=@texRefGroup,texRefZone,texCites
\ nextgroup=texRefOptions,texCites
syntax region texQuoteLang contained matchgroup=Delimiter
\ start='{' end='}'
\ transparent
\ contains=@texMatchGroup
\ nextgroup=texRefOption,texCite
highlight def link texRefOptions texRefOption
highlight def link texCites texCite
endfunction
" }}}1
endif
|