golden hour
/usr/share/vim/vim74/syntax
⬆️ Go Up
Upload
File/Folder
Size
Actions
2html.vim
67.44 KB
Del
OK
README.txt
1.37 KB
Del
OK
a2ps.vim
2.36 KB
Del
OK
a65.vim
6.62 KB
Del
OK
aap.vim
5.56 KB
Del
OK
abap.vim
9.24 KB
Del
OK
abaqus.vim
1.45 KB
Del
OK
abc.vim
2.17 KB
Del
OK
abel.vim
5.32 KB
Del
OK
acedb.vim
5.11 KB
Del
OK
ada.vim
12.74 KB
Del
OK
aflex.vim
4.71 KB
Del
OK
ahdl.vim
3.08 KB
Del
OK
alsaconf.vim
1.5 KB
Del
OK
amiga.vim
3.28 KB
Del
OK
aml.vim
23.93 KB
Del
OK
ampl.vim
4.19 KB
Del
OK
ant.vim
5.68 KB
Del
OK
antlr.vim
2.14 KB
Del
OK
apache.vim
14.78 KB
Del
OK
apachestyle.vim
1.7 KB
Del
OK
aptconf.vim
19.13 KB
Del
OK
arch.vim
1.11 KB
Del
OK
art.vim
1.27 KB
Del
OK
asciidoc.vim
10.6 KB
Del
OK
asm.vim
4.32 KB
Del
OK
asm68k.vim
14.3 KB
Del
OK
asmh8300.vim
2.42 KB
Del
OK
asn.vim
2.87 KB
Del
OK
aspperl.vim
1016 B
Del
OK
aspvbs.vim
9.25 KB
Del
OK
asterisk.vim
5.45 KB
Del
OK
asteriskvm.vim
2.56 KB
Del
OK
atlas.vim
2.9 KB
Del
OK
autohotkey.vim
9.75 KB
Del
OK
autoit.vim
46.89 KB
Del
OK
automake.vim
4.25 KB
Del
OK
ave.vim
2.21 KB
Del
OK
awk.vim
7.54 KB
Del
OK
ayacc.vim
2.88 KB
Del
OK
b.vim
5.09 KB
Del
OK
baan.vim
72.26 KB
Del
OK
basic.vim
8.31 KB
Del
OK
bc.vim
2.13 KB
Del
OK
bdf.vim
3.74 KB
Del
OK
bib.vim
3.76 KB
Del
OK
bindzone.vim
5.09 KB
Del
OK
blank.vim
1.18 KB
Del
OK
bst.vim
3.31 KB
Del
OK
btm.vim
9.41 KB
Del
OK
bzr.vim
1.91 KB
Del
OK
c.vim
24.25 KB
Del
OK
cabal.vim
4.59 KB
Del
OK
calendar.vim
4.91 KB
Del
OK
catalog.vim
921 B
Del
OK
cdl.vim
3.27 KB
Del
OK
cdrdaoconf.vim
3.55 KB
Del
OK
cdrtoc.vim
22.21 KB
Del
OK
cf.vim
28.9 KB
Del
OK
cfg.vim
1.71 KB
Del
OK
ch.vim
1.26 KB
Del
OK
chaiscript.vim
2.82 KB
Del
OK
change.vim
1.28 KB
Del
OK
changelog.vim
2.79 KB
Del
OK
chaskell.vim
396 B
Del
OK
cheetah.vim
2.08 KB
Del
OK
chill.vim
8.08 KB
Del
OK
chordpro.vim
2.46 KB
Del
OK
cl.vim
4.18 KB
Del
OK
clean.vim
3.28 KB
Del
OK
clipper.vim
5.82 KB
Del
OK
clojure.vim
22.82 KB
Del
OK
cmake.vim
4.35 KB
Del
OK
cmusrc.vim
12.61 KB
Del
OK
cobol.vim
10.07 KB
Del
OK
coco.vim
1.26 KB
Del
OK
colortest.vim
3.13 KB
Del
OK
conaryrecipe.vim
7.85 KB
Del
OK
conf.vim
799 B
Del
OK
config.vim
1.8 KB
Del
OK
context.vim
4.08 KB
Del
OK
cpp.vim
2.58 KB
Del
OK
crm.vim
1.16 KB
Del
OK
crontab.vim
2.51 KB
Del
OK
cs.vim
5.95 KB
Del
OK
csc.vim
8.58 KB
Del
OK
csdl.vim
23.2 KB
Del
OK
csh.vim
6.84 KB
Del
OK
csp.vim
7.33 KB
Del
OK
css.vim
23.08 KB
Del
OK
cterm.vim
6.58 KB
Del
OK
ctrlh.vim
688 B
Del
OK
cucumber.vim
31.14 KB
Del
OK
cuda.vim
2.77 KB
Del
OK
cupl.vim
4.13 KB
Del
OK
cuplsim.vim
2.32 KB
Del
OK
cvs.vim
1.27 KB
Del
OK
cvsrc.vim
1.21 KB
Del
OK
cweb.vim
3.29 KB
Del
OK
cynlib.vim
2.94 KB
Del
OK
cynpp.vim
1.74 KB
Del
OK
d.vim
27.36 KB
Del
OK
datascript.vim
3.39 KB
Del
OK
dcd.vim
2.15 KB
Del
OK
dcl.vim
6.47 KB
Del
OK
debchangelog.vim
2.47 KB
Del
OK
debcontrol.vim
7.07 KB
Del
OK
debsources.vim
1.32 KB
Del
OK
def.vim
1.46 KB
Del
OK
denyhosts.vim
7.18 KB
Del
OK
desc.vim
3.41 KB
Del
OK
desktop.vim
4.34 KB
Del
OK
dictconf.vim
3.03 KB
Del
OK
dictdconf.vim
6.3 KB
Del
OK
diff.vim
16.5 KB
Del
OK
dircolors.vim
41.07 KB
Del
OK
dirpager.vim
1.75 KB
Del
OK
diva.vim
4.95 KB
Del
OK
django.vim
4.2 KB
Del
OK
dns.vim
132 B
Del
OK
dnsmasq.vim
8.97 KB
Del
OK
docbk.vim
10.52 KB
Del
OK
docbksgml.vim
193 B
Del
OK
docbkxml.vim
191 B
Del
OK
dosbatch.vim
6.46 KB
Del
OK
dosini.vim
1.51 KB
Del
OK
dot.vim
3.32 KB
Del
OK
doxygen.vim
35.2 KB
Del
OK
dracula.vim
3 KB
Del
OK
dsl.vim
1.28 KB
Del
OK
dtd.vim
5.11 KB
Del
OK
dtml.vim
16.67 KB
Del
OK
dtrace.vim
6.34 KB
Del
OK
dts.vim
1.1 KB
Del
OK
dylan.vim
3.72 KB
Del
OK
dylanintr.vim
1.45 KB
Del
OK
dylanlid.vim
1.06 KB
Del
OK
ecd.vim
1.52 KB
Del
OK
edif.vim
1.61 KB
Del
OK
eiffel.vim
7.06 KB
Del
OK
elf.vim
2.65 KB
Del
OK
elinks.vim
10.24 KB
Del
OK
elmfilt.vim
3.19 KB
Del
OK
erlang.vim
10.63 KB
Del
OK
eruby.vim
2.83 KB
Del
OK
esmtprc.vim
1.01 KB
Del
OK
esqlc.vim
2.5 KB
Del
OK
esterel.vim
3.27 KB
Del
OK
eterm.vim
18.71 KB
Del
OK
eviews.vim
5.29 KB
Del
OK
exim.vim
17.84 KB
Del
OK
expect.vim
4.02 KB
Del
OK
exports.vim
2.08 KB
Del
OK
falcon.vim
11.68 KB
Del
OK
fan.vim
5.32 KB
Del
OK
fasm.vim
8.54 KB
Del
OK
fdcc.vim
5.82 KB
Del
OK
fetchmail.vim
3.22 KB
Del
OK
fgl.vim
7.48 KB
Del
OK
flexwiki.vim
5.34 KB
Del
OK
focexec.vim
3.82 KB
Del
OK
form.vim
6.65 KB
Del
OK
forth.vim
13.2 KB
Del
OK
fortran.vim
25.92 KB
Del
OK
foxpro.vim
32.37 KB
Del
OK
framescript.vim
11.39 KB
Del
OK
freebasic.vim
10.27 KB
Del
OK
fstab.vim
15.19 KB
Del
OK
fvwm.vim
24.44 KB
Del
OK
fvwm2m4.vim
828 B
Del
OK
gdb.vim
4.63 KB
Del
OK
gdmo.vim
3.59 KB
Del
OK
gedcom.vim
2.61 KB
Del
OK
git.vim
4.06 KB
Del
OK
gitcommit.vim
4.72 KB
Del
OK
gitconfig.vim
1.58 KB
Del
OK
gitolite.vim
3.5 KB
Del
OK
gitrebase.vim
1.69 KB
Del
OK
gitsendemail.vim
437 B
Del
OK
gkrellmrc.vim
4.24 KB
Del
OK
gnash.vim
3.48 KB
Del
OK
gnuplot.vim
9.41 KB
Del
OK
gp.vim
3.06 KB
Del
OK
gpg.vim
5.45 KB
Del
OK
gprof.vim
2.07 KB
Del
OK
grads.vim
2.06 KB
Del
OK
gretl.vim
4.05 KB
Del
OK
groff.vim
292 B
Del
OK
groovy.vim
22.34 KB
Del
OK
group.vim
1.67 KB
Del
OK
grub.vim
3.78 KB
Del
OK
gsp.vim
2.21 KB
Del
OK
gtkrc.vim
9.25 KB
Del
OK
haml.vim
6.86 KB
Del
OK
hamster.vim
13.9 KB
Del
OK
haskell.vim
8.53 KB
Del
OK
haste.vim
4.97 KB
Del
OK
hastepreproc.vim
1.59 KB
Del
OK
hb.vim
3.47 KB
Del
OK
help.vim
7.76 KB
Del
OK
hercules.vim
6.01 KB
Del
OK
hex.vim
1.65 KB
Del
OK
hgcommit.vim
1.09 KB
Del
OK
hitest.vim
3.6 KB
Del
OK
hog.vim
17.74 KB
Del
OK
hostconf.vim
3.77 KB
Del
OK
hostsaccess.vim
607 B
Del
OK
html.vim
15.47 KB
Del
OK
htmlcheetah.vim
672 B
Del
OK
htmldjango.vim
1.15 KB
Del
OK
htmlm4.vim
874 B
Del
OK
htmlos.vim
8.54 KB
Del
OK
ia64.vim
10.68 KB
Del
OK
ibasic.vim
6.87 KB
Del
OK
icemenu.vim
838 B
Del
OK
icon.vim
7.12 KB
Del
OK
idl.vim
19.13 KB
Del
OK
idlang.vim
13.5 KB
Del
OK
indent.vim
6.98 KB
Del
OK
inform.vim
19.3 KB
Del
OK
initex.vim
18.76 KB
Del
OK
initng.vim
3.32 KB
Del
OK
inittab.vim
2.76 KB
Del
OK
ipfilter.vim
1.68 KB
Del
OK
ishd.vim
26.78 KB
Del
OK
iss.vim
5.24 KB
Del
OK
ist.vim
2.39 KB
Del
OK
jal.vim
8.99 KB
Del
OK
jam.vim
26.48 KB
Del
OK
jargon.vim
1006 B
Del
OK
java.vim
17.11 KB
Del
OK
javacc.vim
2.65 KB
Del
OK
javascript.vim
5.34 KB
Del
OK
jess.vim
6.53 KB
Del
OK
jgraph.vim
1.58 KB
Del
OK
jovial.vim
4.01 KB
Del
OK
jproperties.vim
5.75 KB
Del
OK
jsp.vim
3.05 KB
Del
OK
kconfig.vim
35.29 KB
Del
OK
kix.vim
6.42 KB
Del
OK
kscript.vim
2.31 KB
Del
OK
kwt.vim
2.85 KB
Del
OK
lace.vim
4.31 KB
Del
OK
latte.vim
3.9 KB
Del
OK
ld.vim
2.82 KB
Del
OK
ldapconf.vim
12.98 KB
Del
OK
ldif.vim
1.19 KB
Del
OK
lex.vim
6.61 KB
Del
OK
lftp.vim
7.28 KB
Del
OK
lhaskell.vim
4.88 KB
Del
OK
libao.vim
624 B
Del
OK
lifelines.vim
6.75 KB
Del
OK
lilo.vim
10.42 KB
Del
OK
limits.vim
1.27 KB
Del
OK
liquid.vim
6.04 KB
Del
OK
lisp.vim
35.56 KB
Del
OK
lite.vim
5.08 KB
Del
OK
litestep.vim
6.51 KB
Del
OK
loginaccess.vim
4.09 KB
Del
OK
logindefs.vim
7.35 KB
Del
OK
logtalk.vim
15.91 KB
Del
OK
lotos.vim
2.7 KB
Del
OK
lout.vim
4.68 KB
Del
OK
lpc.vim
22.84 KB
Del
OK
lprolog.vim
4.25 KB
Del
OK
lscript.vim
12.19 KB
Del
OK
lsl.vim
15.43 KB
Del
OK
lss.vim
5.14 KB
Del
OK
lua.vim
14.07 KB
Del
OK
lynx.vim
6.42 KB
Del
OK
m4.vim
2.99 KB
Del
OK
mail.vim
5.92 KB
Del
OK
mailaliases.vim
2.69 KB
Del
OK
mailcap.vim
1.11 KB
Del
OK
make.vim
6.34 KB
Del
OK
mallard.vim
1.69 KB
Del
OK
man.vim
1.99 KB
Del
OK
manconf.vim
4.23 KB
Del
OK
manual.vim
803 B
Del
OK
maple.vim
27.95 KB
Del
OK
markdown.vim
7.11 KB
Del
OK
masm.vim
15.7 KB
Del
OK
mason.vim
3.39 KB
Del
OK
master.vim
1.4 KB
Del
OK
matlab.vim
4.23 KB
Del
OK
maxima.vim
18.71 KB
Del
OK
mel.vim
3.65 KB
Del
OK
messages.vim
2.49 KB
Del
OK
mf.vim
8.05 KB
Del
OK
mgl.vim
3.87 KB
Del
OK
mgp.vim
2.34 KB
Del
OK
mib.vim
2.63 KB
Del
OK
mma.vim
11.69 KB
Del
OK
mmix.vim
5.12 KB
Del
OK
mmp.vim
1.63 KB
Del
OK
modconf.vim
1.37 KB
Del
OK
model.vim
1.43 KB
Del
OK
modsim3.vim
3.86 KB
Del
OK
modula2.vim
3.54 KB
Del
OK
modula3.vim
2.37 KB
Del
OK
monk.vim
10.44 KB
Del
OK
moo.vim
9.03 KB
Del
OK
mp.vim
5.62 KB
Del
OK
mplayerconf.vim
4.29 KB
Del
OK
mrxvtrc.vim
9.38 KB
Del
OK
msidl.vim
3.74 KB
Del
OK
msmessages.vim
6.26 KB
Del
OK
msql.vim
2.73 KB
Del
OK
mupad.vim
15.41 KB
Del
OK
mush.vim
13.15 KB
Del
OK
muttrc.vim
79.17 KB
Del
OK
mysql.vim
17.46 KB
Del
OK
named.vim
10.17 KB
Del
OK
nanorc.vim
10.36 KB
Del
OK
nasm.vim
24.98 KB
Del
OK
nastran.vim
8.53 KB
Del
OK
natural.vim
7.11 KB
Del
OK
ncf.vim
13.35 KB
Del
OK
netrc.vim
1.88 KB
Del
OK
netrw.vim
5.71 KB
Del
OK
ninja.vim
2.5 KB
Del
OK
nosyntax.vim
755 B
Del
OK
nqc.vim
14.05 KB
Del
OK
nroff.vim
7.85 KB
Del
OK
nsis.vim
9.64 KB
Del
OK
obj.vim
3.09 KB
Del
OK
objc.vim
29.72 KB
Del
OK
objcpp.vim
786 B
Del
OK
ocaml.vim
13.5 KB
Del
OK
occam.vim
4.37 KB
Del
OK
omnimark.vim
6.69 KB
Del
OK
openroad.vim
14.01 KB
Del
OK
opl.vim
4.42 KB
Del
OK
ora.vim
26.82 KB
Del
OK
pamconf.vim
5.4 KB
Del
OK
papp.vim
4.03 KB
Del
OK
pascal.vim
14.97 KB
Del
OK
passwd.vim
2.37 KB
Del
OK
pcap.vim
1.92 KB
Del
OK
pccts.vim
4.44 KB
Del
OK
pdf.vim
3.46 KB
Del
OK
perl.vim
35.71 KB
Del
OK
perl6.vim
72.67 KB
Del
OK
pf.vim
2.71 KB
Del
OK
pfmain.vim
80.89 KB
Del
OK
php.vim
78.62 KB
Del
OK
phtml.vim
151 B
Del
OK
pic.vim
3.63 KB
Del
OK
pike.vim
6.55 KB
Del
OK
pilrc.vim
5.38 KB
Del
OK
pine.vim
15.52 KB
Del
OK
pinfo.vim
5.16 KB
Del
OK
plaintex.vim
10.05 KB
Del
OK
pli.vim
13.2 KB
Del
OK
plm.vim
5.57 KB
Del
OK
plp.vim
1.43 KB
Del
OK
plsql.vim
12.92 KB
Del
OK
po.vim
6.21 KB
Del
OK
pod.vim
7.49 KB
Del
OK
postscr.vim
45.45 KB
Del
OK
pov.vim
9.13 KB
Del
OK
povini.vim
3.69 KB
Del
OK
ppd.vim
1.23 KB
Del
OK
ppwiz.vim
3.1 KB
Del
OK
prescribe.vim
2.72 KB
Del
OK
privoxy.vim
3.5 KB
Del
OK
procmail.vim
2.35 KB
Del
OK
progress.vim
31.38 KB
Del
OK
prolog.vim
4.45 KB
Del
OK
promela.vim
1.78 KB
Del
OK
proto.vim
2.86 KB
Del
OK
protocols.vim
1.38 KB
Del
OK
psf.vim
4.52 KB
Del
OK
ptcap.vim
4.35 KB
Del
OK
purifylog.vim
3.54 KB
Del
OK
pyrex.vim
2 KB
Del
OK
python.vim
11.61 KB
Del
OK
qf.vim
596 B
Del
OK
quake.vim
8.34 KB
Del
OK
r.vim
7.45 KB
Del
OK
racc.vim
5.48 KB
Del
OK
radiance.vim
7.42 KB
Del
OK
ratpoison.vim
17.19 KB
Del
OK
rc.vim
10.19 KB
Del
OK
rcs.vim
2.47 KB
Del
OK
rcslog.vim
970 B
Del
OK
readline.vim
16.24 KB
Del
OK
rebol.vim
7.37 KB
Del
OK
redif.vim
85.91 KB
Del
OK
registry.vim
3.48 KB
Del
OK
remind.vim
2.71 KB
Del
OK
resolv.vim
3.1 KB
Del
OK
reva.vim
7.58 KB
Del
OK
rexx.vim
15.23 KB
Del
OK
rhelp.vim
9.84 KB
Del
OK
rib.vim
2.38 KB
Del
OK
rnc.vim
2.2 KB
Del
OK
rng.vim
817 B
Del
OK
rnoweb.vim
2.01 KB
Del
OK
robots.vim
1.8 KB
Del
OK
rpcgen.vim
2.11 KB
Del
OK
rpl.vim
25.38 KB
Del
OK
rst.vim
8.06 KB
Del
OK
rtf.vim
2.68 KB
Del
OK
ruby.vim
27.76 KB
Del
OK
samba.vim
6.37 KB
Del
OK
sas.vim
11.74 KB
Del
OK
sass.vim
5.6 KB
Del
OK
sather.vim
3.74 KB
Del
OK
scheme.vim
17.25 KB
Del
OK
scilab.vim
3.44 KB
Del
OK
screen.vim
8.32 KB
Del
OK
scss.vim
409 B
Del
OK
sd.vim
2.49 KB
Del
OK
sdc.vim
1.36 KB
Del
OK
sdl.vim
6.87 KB
Del
OK
sed.vim
5.23 KB
Del
OK
sendpr.vim
1000 B
Del
OK
sensors.vim
1.47 KB
Del
OK
services.vim
1.77 KB
Del
OK
setserial.vim
5.09 KB
Del
OK
sgml.vim
8.75 KB
Del
OK
sgmldecl.vim
2.42 KB
Del
OK
sgmllnx.vim
2.18 KB
Del
OK
sh.vim
38.15 KB
Del
OK
sicad.vim
18.5 KB
Del
OK
sieve.vim
1.62 KB
Del
OK
simula.vim
3.59 KB
Del
OK
sinda.vim
4 KB
Del
OK
sindacmp.vim
1.64 KB
Del
OK
sindaout.vim
2.36 KB
Del
OK
sisu.vim
19.91 KB
Del
OK
skill.vim
25.5 KB
Del
OK
sl.vim
4.32 KB
Del
OK
slang.vim
3.55 KB
Del
OK
slice.vim
3.22 KB
Del
OK
slpconf.vim
11.5 KB
Del
OK
slpreg.vim
5.21 KB
Del
OK
slpspi.vim
1.14 KB
Del
OK
slrnrc.vim
12.85 KB
Del
OK
slrnsc.vim
3.45 KB
Del
OK
sm.vim
3.21 KB
Del
OK
smarty.vim
3.02 KB
Del
OK
smcl.vim
11.75 KB
Del
OK
smil.vim
5.84 KB
Del
OK
smith.vim
1.17 KB
Del
OK
sml.vim
9.41 KB
Del
OK
snnsnet.vim
2.63 KB
Del
OK
snnspat.vim
2.37 KB
Del
OK
snnsres.vim
2.09 KB
Del
OK
snobol4.vim
5.48 KB
Del
OK
spec.vim
12.39 KB
Del
OK
specman.vim
7.47 KB
Del
OK
spice.vim
2.57 KB
Del
OK
splint.vim
15.76 KB
Del
OK
spup.vim
13.95 KB
Del
OK
spyce.vim
4.5 KB
Del
OK
sql.vim
1.19 KB
Del
OK
sqlanywhere.vim
41.04 KB
Del
OK
sqlforms.vim
6.97 KB
Del
OK
sqlhana.vim
10.86 KB
Del
OK
sqlinformix.vim
6.14 KB
Del
OK
sqlj.vim
3.14 KB
Del
OK
sqloracle.vim
2.9 KB
Del
OK
sqr.vim
13.86 KB
Del
OK
squid.vim
7.15 KB
Del
OK
sshconfig.vim
8.69 KB
Del
OK
sshdconfig.vim
8.45 KB
Del
OK
st.vim
3.06 KB
Del
OK
stata.vim
26.41 KB
Del
OK
stp.vim
5.65 KB
Del
OK
strace.vim
2.15 KB
Del
OK
sudoers.vim
21.52 KB
Del
OK
svg.vim
436 B
Del
OK
svn.vim
1.64 KB
Del
OK
syncolor.vim
4 KB
Del
OK
synload.vim
1.86 KB
Del
OK
syntax.vim
1.2 KB
Del
OK
sysctl.vim
1.11 KB
Del
OK
tads.vim
7.01 KB
Del
OK
tags.vim
1.54 KB
Del
OK
tak.vim
3.27 KB
Del
OK
takcmp.vim
1.94 KB
Del
OK
takout.vim
2.39 KB
Del
OK
tar.vim
373 B
Del
OK
taskdata.vim
1.27 KB
Del
OK
taskedit.vim
1.2 KB
Del
OK
tasm.vim
5.91 KB
Del
OK
tcl.vim
17.01 KB
Del
OK
tcsh.vim
12.96 KB
Del
OK
terminfo.vim
4.68 KB
Del
OK
tex.vim
61.29 KB
Del
OK
texinfo.vim
25.25 KB
Del
OK
texmf.vim
2.41 KB
Del
OK
tf.vim
7.07 KB
Del
OK
tidy.vim
6.38 KB
Del
OK
tilde.vim
1.5 KB
Del
OK
tli.vim
2 KB
Del
OK
tpp.vim
3.83 KB
Del
OK
trasys.vim
5.34 KB
Del
OK
treetop.vim
3.57 KB
Del
OK
trustees.vim
1.5 KB
Del
OK
tsalt.vim
8.43 KB
Del
OK
tsscl.vim
5.36 KB
Del
OK
tssgm.vim
3.09 KB
Del
OK
tssop.vim
2.13 KB
Del
OK
tt2.vim
7.73 KB
Del
OK
tt2html.vim
516 B
Del
OK
tt2js.vim
522 B
Del
OK
uc.vim
6.76 KB
Del
OK
udevconf.vim
1.19 KB
Del
OK
udevperm.vim
2.34 KB
Del
OK
udevrules.vim
6.79 KB
Del
OK
uil.vim
2.93 KB
Del
OK
updatedb.vim
1.18 KB
Del
OK
upstart.vim
3.07 KB
Del
OK
upstreamdat.vim
13.5 KB
Del
OK
upstreaminstalllog.vim
971 B
Del
OK
upstreamlog.vim
2.47 KB
Del
OK
usserverlog.vim
2.96 KB
Del
OK
usw2kagtlog.vim
2.13 KB
Del
OK
valgrind.vim
2.99 KB
Del
OK
vb.vim
20.14 KB
Del
OK
vera.vim
19.34 KB
Del
OK
verilog.vim
5.4 KB
Del
OK
verilogams.vim
6.4 KB
Del
OK
vgrindefs.vim
1.19 KB
Del
OK
vhdl.vim
6.59 KB
Del
OK
vim.vim
62.55 KB
Del
OK
viminfo.vim
1.1 KB
Del
OK
virata.vim
11.6 KB
Del
OK
vmasm.vim
8.68 KB
Del
OK
voscm.vim
6.81 KB
Del
OK
vrml.vim
12.91 KB
Del
OK
vsejcl.vim
1.36 KB
Del
OK
wdiff.vim
1.12 KB
Del
OK
web.vim
1.24 KB
Del
OK
webmacro.vim
3.39 KB
Del
OK
wget.vim
3.87 KB
Del
OK
whitespace.vim
357 B
Del
OK
winbatch.vim
12.25 KB
Del
OK
wml.vim
6.12 KB
Del
OK
wsh.vim
1.21 KB
Del
OK
wsml.vim
5.59 KB
Del
OK
wvdial.vim
1.07 KB
Del
OK
xbl.vim
568 B
Del
OK
xdefaults.vim
6.11 KB
Del
OK
xf86conf.vim
14.58 KB
Del
OK
xhtml.vim
186 B
Del
OK
xinetd.vim
13.86 KB
Del
OK
xkb.vim
3.38 KB
Del
OK
xmath.vim
10.85 KB
Del
OK
xml.vim
8.41 KB
Del
OK
xmodmap.vim
45.41 KB
Del
OK
xpm.vim
4.55 KB
Del
OK
xpm2.vim
4.87 KB
Del
OK
xquery.vim
7.02 KB
Del
OK
xs.vim
214.6 KB
Del
OK
xsd.vim
2.08 KB
Del
OK
xslt.vim
2.12 KB
Del
OK
xxd.vim
1.16 KB
Del
OK
yacc.vim
5.41 KB
Del
OK
yaml.vim
8.93 KB
Del
OK
z8a.vim
3.2 KB
Del
OK
zimbu.vim
4.69 KB
Del
OK
zsh.vim
8.71 KB
Del
OK
Edit: tex.vim
" Vim syntax file " Language: TeX " Maintainer: Charles E. Campbell <NdrchipO@ScampbellPfamily.AbizM> " Last Change: Jun 24, 2013 " Version: 79 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_TEX " " Notes: {{{1 " " 1. If you have a \begin{verbatim} that appears to overrun its boundaries, " use %stopzone. " " 2. Run-on equations ($..$ and $$..$$, particularly) can also be stopped " by suitable use of %stopzone. " " 3. If you have a slow computer, you may wish to modify " " syn sync maxlines=200 " syn sync minlines=50 " " to values that are more to your liking. " " 4. There is no match-syncing for $...$ and $$...$$; hence large " equation blocks constructed that way may exhibit syncing problems. " (there's no difference between begin/end patterns) " " 5. If you have the variable "g:tex_no_error" defined then none of the " lexical error-checking will be done. " " ie. let g:tex_no_error=1 " Version Clears: {{{1 " For version 5.x: Clear all syntax items " For version 6.x: Quit when a syntax file was already loaded if version < 600 syntax clear elseif exists("b:current_syntax") finish endif let s:keepcpo= &cpo set cpo&vim scriptencoding utf-8 " Define the default highlighting. {{{1 " For version 5.7 and earlier: only when not done already " For version 5.8 and later: only when an item doesn't have highlighting yet if version >= 508 || !exists("did_tex_syntax_inits") let did_tex_syntax_inits = 1 if version < 508 command -nargs=+ HiLink hi link <args> else command -nargs=+ HiLink hi def link <args> endif endif if exists("g:tex_no_error") && g:tex_no_error let s:tex_no_error= 1 endif " by default, enable all region-based highlighting let s:tex_fast= "bcmMprsSvV" if exists("g:tex_fast") if type(g:tex_fast) != 1 " g:tex_fast exists and is not a string, so " turn off all optional region-based highighting let s:tex_fast= "" else let s:tex_fast= g:tex_fast endif let s:tex_no_error= 1 else let s:tex_fast= "bcmMprsSvV" endif " let user determine which classes of concealment will be supported " a=accents/ligatures d=delimiters m=math symbols g=Greek s=superscripts/subscripts if !exists("g:tex_conceal") let s:tex_conceal= 'abdmgsS' else let s:tex_conceal= g:tex_conceal endif " Determine whether or not to use "*.sty" mode {{{1 " The user may override the normal determination by setting " g:tex_stylish to 1 (for "*.sty" mode) " or to 0 else (normal "*.tex" mode) " or on a buffer-by-buffer basis with b:tex_stylish let s:extfname=expand("%:e") if exists("g:tex_stylish") let b:tex_stylish= g:tex_stylish elseif !exists("b:tex_stylish") if s:extfname == "sty" || s:extfname == "cls" || s:extfname == "clo" || s:extfname == "dtx" || s:extfname == "ltx" let b:tex_stylish= 1 else let b:tex_stylish= 0 endif endif " handle folding {{{1 if !exists("g:tex_fold_enabled") let g:tex_fold_enabled= 0 elseif g:tex_fold_enabled && !has("folding") let g:tex_fold_enabled= 0 echomsg "Ignoring g:tex_fold_enabled=".g:tex_fold_enabled."; need to re-compile vim for +fold support" endif if g:tex_fold_enabled && &fdm == "manual" setl fdm=syntax endif " (La)TeX keywords: uses the characters 0-9,a-z,A-Z,192-255 only... {{{1 " but _ is the only one that causes problems. " One may override this iskeyword setting by providing " g:tex_isk if exists("g:tex_isk") exe "setlocal isk=".g:tex_isk else setlocal isk=48-57,a-z,A-Z,192-255 endif if b:tex_stylish setlocal isk+=@-@ endif if exists("g:tex_nospell") && g:tex_nospell && !exists("g:tex_comment_nospell") let g:tex_comment_nospell= 1 endif " Clusters: {{{1 " -------- syn cluster texCmdGroup contains=texCmdBody,texComment,texDefParm,texDelimiter,texDocType,texInput,texLength,texLigature,texMathDelim,texMathOper,texNewCmd,texNewEnv,texRefZone,texSection,texBeginEnd,texBeginEndName,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle if !exists("s:tex_no_error") syn cluster texCmdGroup add=texMathError endif syn cluster texEnvGroup contains=texMatcher,texMathDelim,texSpecialChar,texStatement syn cluster texFoldGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMatcher,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texBeginEnd,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract,texBoldStyle,texItalStyle,texNoSpell syn cluster texBoldGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMatcher,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texBeginEnd,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract,texBoldStyle,texBoldItalStyle,texNoSpell syn cluster texItalGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,texMatcher,texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ,texNewCmd,texNewEnv,texOnlyMath,texOption,texParen,texRefZone,texSection,texBeginEnd,texSectionZone,texSpaceCode,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,@texMathZones,texTitle,texAbstract,texItalStyle,texItalBoldStyle,texNoSpell if !exists("g:tex_nospell") || !g:tex_nospell syn cluster texMatchGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcher,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,@Spell syn cluster texStyleGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,texStyleStatement,@Spell,texStyleMatcher else syn cluster texMatchGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcher,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption syn cluster texStyleGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,texStyleStatement,texStyleMatcher endif syn cluster texPreambleMatchGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcher,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone,texInputFile,texOption syn cluster texRefGroup contains=texMatcher,texComment,texDelimiter if !exists("tex_no_math") syn cluster texMathZones contains=texMathZoneV,texMathZoneW,texMathZoneX,texMathZoneY,texMathZoneZ syn cluster texMatchGroup add=@texMathZones syn cluster texMathDelimGroup contains=texMathDelimBad,texMathDelimKey,texMathDelimSet1,texMathDelimSet2 syn cluster texMathMatchGroup contains=@texMathZones,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMathDelim,texMathMatcher,texMathOper,texNewCmd,texNewEnv,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texZone syn cluster texMathZoneGroup contains=texComment,texDelimiter,texLength,texMathDelim,texMathMatcher,texMathOper,texMathSymbol,texMathText,texRefZone,texSpecialChar,texStatement,texTypeSize,texTypeStyle if !exists("s:tex_no_error") syn cluster texMathMatchGroup add=texMathError syn cluster texMathZoneGroup add=texMathError endif syn cluster texMathZoneGroup add=@NoSpell " following used in the \part \chapter \section \subsection \subsubsection " \paragraph \subparagraph \author \title highlighting syn cluster texDocGroup contains=texPartZone,@texPartGroup syn cluster texPartGroup contains=texChapterZone,texSectionZone,texParaZone syn cluster texChapterGroup contains=texSectionZone,texParaZone syn cluster texSectionGroup contains=texSubSectionZone,texParaZone syn cluster texSubSectionGroup contains=texSubSubSectionZone,texParaZone syn cluster texSubSubSectionGroup contains=texParaZone syn cluster texParaGroup contains=texSubParaZone if has("conceal") && &enc == 'utf-8' syn cluster texMathZoneGroup add=texGreek,texSuperscript,texSubscript,texMathSymbol syn cluster texMathMatchGroup add=texGreek,texSuperscript,texSubscript,texMathSymbol endif endif " Try to flag {} and () mismatches: {{{1 if s:tex_fast =~ 'm' if !exists("s:tex_no_error") syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup,texError syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup,texError,@NoSpell else syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texMatchGroup syn region texMatcher matchgroup=Delimiter start="\[" end="]" contains=@texMatchGroup endif if !exists("g:tex_nospell") || !g:tex_nospell syn region texParen start="(" end=")" contains=@texMatchGroup,@Spell else syn region texParen start="(" end=")" contains=@texMatchGroup endif endif if !exists("s:tex_no_error") syn match texError "[}\])]" endif if s:tex_fast =~ 'M' if !exists("tex_no_math") if !exists("s:tex_no_error") syn match texMathError "}" contained endif syn region texMathMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\}" end="}" end="%stopzone\>" contained contains=@texMathMatchGroup endif endif " TeX/LaTeX keywords: {{{1 " Instead of trying to be All Knowing, I just match \..alphameric.. " Note that *.tex files may not have "@" in their \commands if exists("g:tex_tex") || b:tex_stylish syn match texStatement "\\[a-zA-Z@]\+" else syn match texStatement "\\\a\+" if !exists("s:tex_no_error") syn match texError "\\\a*@[a-zA-Z@]*" endif endif " TeX/LaTeX delimiters: {{{1 syn match texDelimiter "&" syn match texDelimiter "\\\\" syn match texDelimiter "[{}]" " Tex/Latex Options: {{{1 syn match texOption "[^\\]\zs#\d\+\|^#\d\+" " texAccent (tnx to Karim Belabas) avoids annoying highlighting for accents: {{{1 if b:tex_stylish syn match texAccent "\\[bcdvuH][^a-zA-Z@]"me=e-1 syn match texLigature "\\\([ijolL]\|ae\|oe\|ss\|AA\|AE\|OE\)[^a-zA-Z@]"me=e-1 else syn match texAccent "\\[bcdvuH]\A"me=e-1 syn match texLigature "\\\([ijolL]\|ae\|oe\|ss\|AA\|AE\|OE\)\A"me=e-1 endif syn match texAccent "\\[bcdvuH]$" syn match texAccent +\\[=^.\~"`']+ syn match texAccent +\\['=t'.c^ud"vb~Hr]{\a}+ syn match texLigature "\\\([ijolL]\|ae\|oe\|ss\|AA\|AE\|OE\)$" " \begin{}/\end{} section markers: {{{1 syn match texBeginEnd "\\begin\>\|\\end\>" nextgroup=texBeginEndName if s:tex_fast =~ 'm' syn region texBeginEndName matchgroup=Delimiter start="{" end="}" contained nextgroup=texBeginEndModifier contains=texComment syn region texBeginEndModifier matchgroup=Delimiter start="\[" end="]" contained contains=texComment,@NoSpell endif " \documentclass, \documentstyle, \usepackage: {{{1 syn match texDocType "\\documentclass\>\|\\documentstyle\>\|\\usepackage\>" nextgroup=texBeginEndName,texDocTypeArgs if s:tex_fast =~ 'm' syn region texDocTypeArgs matchgroup=Delimiter start="\[" end="]" contained nextgroup=texBeginEndName contains=texComment,@NoSpell endif " Preamble syntax-based folding support: {{{1 if g:tex_fold_enabled && has("folding") syn region texPreamble transparent fold start='\zs\\documentclass\>' end='\ze\\begin{document}' contains=texStyle,@texPreambleMatchGroup endif " TeX input: {{{1 syn match texInput "\\input\s\+[a-zA-Z/.0-9_^]\+"hs=s+7 contains=texStatement syn match texInputFile "\\include\(graphics\|list\)\=\(\[.\{-}\]\)\=\s*{.\{-}}" contains=texStatement,texInputCurlies,texInputFileOpt syn match texInputFile "\\\(epsfig\|input\|usepackage\)\s*\(\[.*\]\)\={.\{-}}" contains=texStatement,texInputCurlies,texInputFileOpt syn match texInputCurlies "[{}]" contained if s:tex_fast =~ 'm' syn region texInputFileOpt matchgroup=Delimiter start="\[" end="\]" contained contains=texComment endif " Type Styles (LaTeX 2.09): {{{1 syn match texTypeStyle "\\rm\>" syn match texTypeStyle "\\em\>" syn match texTypeStyle "\\bf\>" syn match texTypeStyle "\\it\>" syn match texTypeStyle "\\sl\>" syn match texTypeStyle "\\sf\>" syn match texTypeStyle "\\sc\>" syn match texTypeStyle "\\tt\>" " Type Styles: attributes, commands, families, etc (LaTeX2E): {{{1 if s:tex_conceal !~ 'b' syn match texTypeStyle "\\textbf\>" syn match texTypeStyle "\\textit\>" endif syn match texTypeStyle "\\textmd\>" syn match texTypeStyle "\\textrm\>" syn match texTypeStyle "\\textsc\>" syn match texTypeStyle "\\textsf\>" syn match texTypeStyle "\\textsl\>" syn match texTypeStyle "\\texttt\>" syn match texTypeStyle "\\textup\>" syn match texTypeStyle "\\emph\>" syn match texTypeStyle "\\mathbb\>" syn match texTypeStyle "\\mathbf\>" syn match texTypeStyle "\\mathcal\>" syn match texTypeStyle "\\mathfrak\>" syn match texTypeStyle "\\mathit\>" syn match texTypeStyle "\\mathnormal\>" syn match texTypeStyle "\\mathrm\>" syn match texTypeStyle "\\mathsf\>" syn match texTypeStyle "\\mathtt\>" syn match texTypeStyle "\\rmfamily\>" syn match texTypeStyle "\\sffamily\>" syn match texTypeStyle "\\ttfamily\>" syn match texTypeStyle "\\itshape\>" syn match texTypeStyle "\\scshape\>" syn match texTypeStyle "\\slshape\>" syn match texTypeStyle "\\upshape\>" syn match texTypeStyle "\\bfseries\>" syn match texTypeStyle "\\mdseries\>" " Some type sizes: {{{1 syn match texTypeSize "\\tiny\>" syn match texTypeSize "\\scriptsize\>" syn match texTypeSize "\\footnotesize\>" syn match texTypeSize "\\small\>" syn match texTypeSize "\\normalsize\>" syn match texTypeSize "\\large\>" syn match texTypeSize "\\Large\>" syn match texTypeSize "\\LARGE\>" syn match texTypeSize "\\huge\>" syn match texTypeSize "\\Huge\>" " Spacecodes (TeX'isms): {{{1 " \mathcode`\^^@="2201 \delcode`\(="028300 \sfcode`\)=0 \uccode`X=`X \lccode`x=`x syn match texSpaceCode "\\\(math\|cat\|del\|lc\|sf\|uc\)code`"me=e-1 nextgroup=texSpaceCodeChar syn match texSpaceCodeChar "`\\\=.\(\^.\)\==\(\d\|\"\x\{1,6}\|`.\)" contained " Sections, subsections, etc: {{{1 if s:tex_fast =~ 'p' if !exists("g:tex_nospell") || !g:tex_nospell if g:tex_fold_enabled && has("folding") syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup,@Spell syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texPartGroup,@Spell syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texChapterGroup,@Spell syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSectionGroup,@Spell syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup,@Spell syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSubSectionGroup,@Spell syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texParaGroup,@Spell syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@Spell syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup,@Spell syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup,@Spell else syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup,@Spell syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup,@Spell syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup,@Spell syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup,@Spell syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup,@Spell syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup,@Spell syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup,@Spell syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@Spell syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup,@Spell syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup,@Spell endif else if g:tex_fold_enabled && has("folding") syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' fold contains=@texFoldGroup,@texDocGroup syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texPartGroup syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texChapterGroup syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSectionGroup syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSectionGroup syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texSubSubSectionGroup syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup,@texParaGroup syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' fold contains=@texFoldGroup syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' fold contains=@texFoldGroup syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' fold contains=@texFoldGroup else syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup endif endif endif " particular support for bold and italic {{{1 if s:tex_fast =~ 'b' if s:tex_conceal =~ 'b' syn region texBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" end="}" concealends contains=@texBoldGroup syn region texBoldItalStyle matchgroup=texTypeStyle start="\\textit\s*{" end="}" concealends contains=@texItalGroup syn region texItalStyle matchgroup=texTypeStyle start="\\textit\s*{" end="}" concealends contains=@texItalGroup syn region texItalBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" end="}" concealends contains=@texBoldGroup endif endif " Bad Math (mismatched): {{{1 if !exists("g:tex_no_math") && !exists("s:tex_no_error") syn match texBadMath "\\end\s*{\s*\(array\|gathered\|bBpvV]matrix\|split\|subequations\|smallmatrix\|xxalignat\)\s*}" syn match texBadMath "\\end\s*{\s*\(align\|alignat\|displaymath\|displaymath\|eqnarray\|equation\|flalign\|gather\|math\|multline\|xalignat\)\*\=\s*}" syn match texBadMath "\\[\])]" endif " Math Zones: {{{1 if !exists("tex_no_math") " TexNewMathZone: function creates a mathzone with the given suffix and mathzone name. {{{2 " Starred forms are created if starform is true. Starred " forms have syntax group and synchronization groups with a " "S" appended. Handles: cluster, syntax, sync, and HiLink. fun! TexNewMathZone(sfx,mathzone,starform) let grpname = "texMathZone".a:sfx let syncname = "texSyncMathZone".a:sfx if g:tex_fold_enabled let foldcmd= " fold" else let foldcmd= "" endif exe "syn cluster texMathZones add=".grpname if s:tex_fast =~ 'M' exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\s*}'."'".' keepend contains=@texMathZoneGroup'.foldcmd exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"' exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"' endif exe 'hi def link '.grpname.' texMath' if a:starform let grpname = "texMathZone".a:sfx.'S' let syncname = "texSyncMathZone".a:sfx.'S' exe "syn cluster texMathZones add=".grpname if s:tex_fast =~ 'M' exe 'syn region '.grpname.' start='."'".'\\begin\s*{\s*'.a:mathzone.'\*\s*}'."'".' end='."'".'\\end\s*{\s*'.a:mathzone.'\*\s*}'."'".' keepend contains=@texMathZoneGroup'.foldcmd exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"' exe 'syn sync match '.syncname.' grouphere '.grpname.' "\\begin\s*{\s*'.a:mathzone.'\*\s*}"' endif exe 'hi def link '.grpname.' texMath' endif endfun " Standard Math Zones: {{{2 call TexNewMathZone("A","align",1) call TexNewMathZone("B","alignat",1) call TexNewMathZone("C","displaymath",1) call TexNewMathZone("D","eqnarray",1) call TexNewMathZone("E","equation",1) call TexNewMathZone("F","flalign",1) call TexNewMathZone("G","gather",1) call TexNewMathZone("H","math",1) call TexNewMathZone("I","multline",1) call TexNewMathZone("J","subequations",0) call TexNewMathZone("K","xalignat",1) call TexNewMathZone("L","xxalignat",0) " Inline Math Zones: {{{2 if s:tex_fast =~ 'M' if has("conceal") && &enc == 'utf-8' && s:tex_conceal =~ 'd' syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend concealends contains=@texMathZoneGroup syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend concealends contains=@texMathZoneGroup syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" concealends contains=@texMathZoneGroup syn region texMathZoneY matchgroup=Delimiter start="\$\$" matchgroup=Delimiter end="\$\$" end="%stopzone\>" concealends keepend contains=@texMathZoneGroup else syn region texMathZoneV matchgroup=Delimiter start="\\(" matchgroup=Delimiter end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup syn region texMathZoneW matchgroup=Delimiter start="\\\[" matchgroup=Delimiter end="\\]\|%stopzone\>" keepend contains=@texMathZoneGroup syn region texMathZoneX matchgroup=Delimiter start="\$" skip="\\\\\|\\\$" matchgroup=Delimiter end="\$" end="%stopzone\>" contains=@texMathZoneGroup syn region texMathZoneY matchgroup=Delimiter start="\$\$" matchgroup=Delimiter end="\$\$" end="%stopzone\>" keepend contains=@texMathZoneGroup endif syn region texMathZoneZ matchgroup=texStatement start="\\ensuremath\s*{" matchgroup=texStatement end="}" end="%stopzone\>" contains=@texMathZoneGroup endif syn match texMathOper "[_^=]" contained " Text Inside Math Zones: {{{2 if s:tex_fast =~ 'M' if !exists("g:tex_nospell") || !g:tex_nospell syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup,@Spell else syn region texMathText matchgroup=texStatement start='\\\(\(inter\)\=text\|mbox\)\s*{' end='}' contains=@texFoldGroup endif endif " \left..something.. and \right..something.. support: {{{2 syn match texMathDelimBad contained "\S" if has("conceal") && &enc == 'utf-8' && s:tex_conceal =~ 'm' syn match texMathDelim contained "\\left\\{\>" skipwhite nextgroup=texMathDelimSet1,texMathDelimSet2,texMathDelimBad contains=texMathSymbol cchar={ syn match texMathDelim contained "\\right\\}\>" skipwhite nextgroup=texMathDelimSet1,texMathDelimSet2,texMathDelimBad contains=texMathSymbol cchar=} let s:texMathDelimList=[ \ ['<' , '<'] , \ ['>' , '>'] , \ ['(' , '('] , \ [')' , ')'] , \ ['\[' , '['] , \ [']' , ']'] , \ ['\\{' , '{'] , \ ['\\}' , '}'] , \ ['|' , '|'] , \ ['\\|' , '‖'] , \ ['\\backslash' , '\'] , \ ['\\downarrow' , '↓'] , \ ['\\Downarrow' , '⇓'] , \ ['\\langle' , '<'] , \ ['\\lbrace' , '['] , \ ['\\lceil' , '⌈'] , \ ['\\lfloor' , '⌊'] , \ ['\\lgroup' , '⌊'] , \ ['\\lmoustache' , '⎛'] , \ ['\\rangle' , '>'] , \ ['\\rbrace' , ']'] , \ ['\\rceil' , '⌉'] , \ ['\\rfloor' , '⌋'] , \ ['\\rgroup' , '⌋'] , \ ['\\rmoustache' , '⎞'] , \ ['\\uparrow' , '↑'] , \ ['\\Uparrow' , '↑'] , \ ['\\updownarrow', '↕'] , \ ['\\Updownarrow', '⇕']] syn match texMathDelim '\\[bB]igg\=[lr]' contained nextgroup=texMathDelimBad for texmath in s:texMathDelimList exe "syn match texMathDelim '\\\\[bB]igg\\=[lr]\\=".texmath[0]."' contained conceal cchar=".texmath[1] endfor else syn match texMathDelim contained "\\\(left\|right\)\>" skipwhite nextgroup=texMathDelimSet1,texMathDelimSet2,texMathDelimBad syn match texMathDelim contained "\\[bB]igg\=[lr]\=\>" skipwhite nextgroup=texMathDelimSet1,texMathDelimSet2,texMathDelimBad syn match texMathDelimSet2 contained "\\" nextgroup=texMathDelimKey,texMathDelimBad syn match texMathDelimSet1 contained "[<>()[\]|/.]\|\\[{}|]" syn keyword texMathDelimKey contained backslash lceil lVert rgroup uparrow syn keyword texMathDelimKey contained downarrow lfloor rangle rmoustache Uparrow syn keyword texMathDelimKey contained Downarrow lgroup rbrace rvert updownarrow syn keyword texMathDelimKey contained langle lmoustache rceil rVert Updownarrow syn keyword texMathDelimKey contained lbrace lvert rfloor endif syn match texMathDelim contained "\\\(left\|right\)arrow\>\|\<\([aA]rrow\|brace\)\=vert\>" syn match texMathDelim contained "\\lefteqn\>" endif " Special TeX characters ( \$ \& \% \# \{ \} \_ \S \P ) : {{{1 syn match texSpecialChar "\\[$&%#{}_]" if b:tex_stylish syn match texSpecialChar "\\[SP@][^a-zA-Z@]"me=e-1 else syn match texSpecialChar "\\[SP@]\A"me=e-1 endif syn match texSpecialChar "\\\\" if !exists("tex_no_math") syn match texOnlyMath "[_^]" endif syn match texSpecialChar "\^\^[0-9a-f]\{2}\|\^\^\S" if s:tex_conceal !~ 'S' syn match texSpecialChar '\\glq\>' contained conceal cchar=‚ syn match texSpecialChar '\\grq\>' contained conceal cchar=‘ syn match texSpecialChar '\\glqq\>' contained conceal cchar=„ syn match texSpecialChar '\\grqq\>' contained conceal cchar=“ syn match texSpecialChar '\\hyp\>' contained conceal cchar=- endif " Comments: {{{1 " Normal TeX LaTeX : %.... " Documented TeX Format: ^^A... -and- leading %s (only) if !exists("g:tex_comment_nospell") || !g:tex_comment_nospell syn cluster texCommentGroup contains=texTodo,@Spell else syn cluster texCommentGroup contains=texTodo,@NoSpell endif syn case ignore syn keyword texTodo contained combak fixme todo xxx syn case match if s:extfname == "dtx" syn match texComment "\^\^A.*$" contains=@texCommentGroup syn match texComment "^%\+" contains=@texCommentGroup else if g:tex_fold_enabled " allows syntax-folding of 2 or more contiguous comment lines " single-line comments are not folded syn match texComment "%.*$" contains=@texCommentGroup if s:tex_fast =~ 'c' syn region texComment start="^\zs\s*%.*\_s*%" skip="^\s*%" end='^\ze\s*[^%]' fold syn region texNoSpell contained fold matchgroup=texComment start="%\s*nospell\s*{" end="%\s*nospell\s*}" contains=@texFoldGroup,@NoSpell endif else syn match texComment "%.*$" contains=@texCommentGroup if s:tex_fast =~ 'c' syn region texNoSpell contained matchgroup=texComment start="%\s*nospell\s*{" end="%\s*nospell\s*}" contains=@texFoldGroup,@NoSpell endif endif endif " Separate lines used for verb` and verb# so that the end conditions {{{1 " will appropriately terminate. " If g:tex_verbspell exists, then verbatim texZones will permit spellchecking there. if s:tex_fast =~ 'v' if exists("g:tex_verbspell") && g:tex_verbspell syn region texZone start="\\begin{[vV]erbatim}" end="\\end{[vV]erbatim}\|%stopzone\>" contains=@Spell " listings package: syn region texZone start="\\begin{lstlisting}" end="\\end{lstlisting}\|%stopzone\>" contains=@Spell if version < 600 syn region texZone start="\\verb\*\=`" end="`\|%stopzone\>" contains=@Spell syn region texZone start="\\verb\*\=#" end="#\|%stopzone\>" contains=@Spell else if b:tex_stylish syn region texZone start="\\verb\*\=\z([^\ta-zA-Z@]\)" end="\z1\|%stopzone\>" contains=@Spell else syn region texZone start="\\verb\*\=\z([^\ta-zA-Z]\)" end="\z1\|%stopzone\>" contains=@Spell endif endif else syn region texZone start="\\begin{[vV]erbatim}" end="\\end{[vV]erbatim}\|%stopzone\>" if version < 600 syn region texZone start="\\verb\*\=`" end="`\|%stopzone\>" syn region texZone start="\\verb\*\=#" end="#\|%stopzone\>" else if b:tex_stylish syn region texZone start="\\verb\*\=\z([^\ta-zA-Z@]\)" end="\z1\|%stopzone\>" else syn region texZone start="\\verb\*\=\z([^\ta-zA-Z]\)" end="\z1\|%stopzone\>" endif endif endif endif " Tex Reference Zones: {{{1 if s:tex_fast =~ 'r' syn region texZone matchgroup=texStatement start="@samp{" end="}\|%stopzone\>" contains=@texRefGroup syn region texRefZone matchgroup=texStatement start="\\nocite{" end="}\|%stopzone\>" contains=@texRefGroup syn region texRefZone matchgroup=texStatement start="\\bibliography{" end="}\|%stopzone\>" contains=@texRefGroup syn region texRefZone matchgroup=texStatement start="\\label{" end="}\|%stopzone\>" contains=@texRefGroup syn region texRefZone matchgroup=texStatement start="\\\(page\|eq\)ref{" end="}\|%stopzone\>" contains=@texRefGroup syn region texRefZone matchgroup=texStatement start="\\v\=ref{" end="}\|%stopzone\>" contains=@texRefGroup syn region texRefOption contained matchgroup=Delimiter start='\[' end=']' contains=@texRefGroup,texRefZone nextgroup=texRefOption,texCite syn region texCite contained matchgroup=Delimiter start='{' end='}' contains=@texRefGroup,texRefZone,texCite endif syn match texRefZone '\\cite\%([tp]\*\=\)\=' nextgroup=texRefOption,texCite " Handle newcommand, newenvironment : {{{1 syn match texNewCmd "\\newcommand\>" nextgroup=texCmdName skipwhite skipnl if s:tex_fast =~ 'V' syn region texCmdName contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texCmdArgs,texCmdBody skipwhite skipnl syn region texCmdArgs contained matchgroup=Delimiter start="\["rs=s+1 end="]" nextgroup=texCmdBody skipwhite skipnl syn region texCmdBody contained matchgroup=Delimiter start="{"rs=s+1 skip="\\\\\|\\[{}]" matchgroup=Delimiter end="}" contains=@texCmdGroup endif syn match texNewEnv "\\newenvironment\>" nextgroup=texEnvName skipwhite skipnl if s:tex_fast =~ 'V' syn region texEnvName contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texEnvBgn skipwhite skipnl syn region texEnvBgn contained matchgroup=Delimiter start="{"rs=s+1 end="}" nextgroup=texEnvEnd skipwhite skipnl contains=@texEnvGroup syn region texEnvEnd contained matchgroup=Delimiter start="{"rs=s+1 end="}" skipwhite skipnl contains=@texEnvGroup endif " Definitions/Commands: {{{1 syn match texDefCmd "\\def\>" nextgroup=texDefName skipwhite skipnl if b:tex_stylish syn match texDefName contained "\\[a-zA-Z@]\+" nextgroup=texDefParms,texCmdBody skipwhite skipnl syn match texDefName contained "\\[^a-zA-Z@]" nextgroup=texDefParms,texCmdBody skipwhite skipnl else syn match texDefName contained "\\\a\+" nextgroup=texDefParms,texCmdBody skipwhite skipnl syn match texDefName contained "\\\A" nextgroup=texDefParms,texCmdBody skipwhite skipnl endif syn match texDefParms contained "#[^{]*" contains=texDefParm nextgroup=texCmdBody skipwhite skipnl syn match texDefParm contained "#\d\+" " TeX Lengths: {{{1 syn match texLength "\<\d\+\([.,]\d\+\)\=\s*\(true\)\=\s*\(bp\|cc\|cm\|dd\|em\|ex\|in\|mm\|pc\|pt\|sp\)\>" " TeX String Delimiters: {{{1 syn match texString "\(``\|''\|,,\)" " makeatletter -- makeatother sections if !exists("s:tex_no_error") if s:tex_fast =~ 'S' syn region texStyle matchgroup=texStatement start='\\makeatletter' end='\\makeatother' contains=@texStyleGroup contained endif syn match texStyleStatement "\\[a-zA-Z@]\+" contained if s:tex_fast =~ 'S' syn region texStyleMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" contains=@texStyleGroup,texError contained syn region texStyleMatcher matchgroup=Delimiter start="\[" end="]" contains=@texStyleGroup,texError contained endif endif " Conceal mode support (supports set cole=2) {{{1 if has("conceal") && &enc == 'utf-8' " Math Symbols {{{2 " (many of these symbols were contributed by Björn Winckler) if s:tex_conceal =~ 'm' let s:texMathList=[ \ ['|' , '‖'], \ ['aleph' , 'ℵ'], \ ['amalg' , '∐'], \ ['angle' , '∠'], \ ['approx' , '≈'], \ ['ast' , '∗'], \ ['asymp' , '≍'], \ ['backepsilon' , '∍'], \ ['backsimeq' , '≃'], \ ['backslash' , '∖'], \ ['barwedge' , '⊼'], \ ['because' , '∵'], \ ['between' , '≬'], \ ['bigcap' , '∩'], \ ['bigcirc' , '○'], \ ['bigcup' , '∪'], \ ['bigodot' , '⊙'], \ ['bigoplus' , '⊕'], \ ['bigotimes' , '⊗'], \ ['bigsqcup' , '⊔'], \ ['bigtriangledown', '∇'], \ ['bigtriangleup' , '∆'], \ ['bigvee' , '⋁'], \ ['bigwedge' , '⋀'], \ ['blacksquare' , '∎'], \ ['bot' , '⊥'], \ ['bowtie' , '⋈'], \ ['boxdot' , '⊡'], \ ['boxminus' , '⊟'], \ ['boxplus' , '⊞'], \ ['boxtimes' , '⊠'], \ ['bullet' , '•'], \ ['bumpeq' , '≏'], \ ['Bumpeq' , '≎'], \ ['cap' , '∩'], \ ['Cap' , '⋒'], \ ['cdot' , '·'], \ ['cdots' , '⋯'], \ ['circ' , '∘'], \ ['circeq' , '≗'], \ ['circlearrowleft', '↺'], \ ['circlearrowright', '↻'], \ ['circledast' , '⊛'], \ ['circledcirc' , '⊚'], \ ['clubsuit' , '♣'], \ ['complement' , '∁'], \ ['cong' , '≅'], \ ['coprod' , '∐'], \ ['copyright' , '©'], \ ['cup' , '∪'], \ ['Cup' , '⋓'], \ ['curlyeqprec' , '⋞'], \ ['curlyeqsucc' , '⋟'], \ ['curlyvee' , '⋎'], \ ['curlywedge' , '⋏'], \ ['dagger' , '†'], \ ['dashv' , '⊣'], \ ['ddagger' , '‡'], \ ['ddots' , '⋱'], \ ['diamond' , '⋄'], \ ['diamondsuit' , '♢'], \ ['div' , '÷'], \ ['doteq' , '≐'], \ ['doteqdot' , '≑'], \ ['dotplus' , '∔'], \ ['dots' , '…'], \ ['dotsb' , '⋯'], \ ['dotsc' , '…'], \ ['dotsi' , '⋯'], \ ['dotso' , '…'], \ ['doublebarwedge' , '⩞'], \ ['downarrow' , '↓'], \ ['Downarrow' , '⇓'], \ ['ell' , 'ℓ'], \ ['emptyset' , '∅'], \ ['eqcirc' , '≖'], \ ['eqsim' , '≂'], \ ['eqslantgtr' , '⪖'], \ ['eqslantless' , '⪕'], \ ['equiv' , '≡'], \ ['exists' , '∃'], \ ['fallingdotseq' , '≒'], \ ['flat' , '♭'], \ ['forall' , '∀'], \ ['frown' , '⁔'], \ ['ge' , '≥'], \ ['geq' , '≥'], \ ['geqq' , '≧'], \ ['gets' , '←'], \ ['gg' , '⟫'], \ ['gneqq' , '≩'], \ ['gtrdot' , '⋗'], \ ['gtreqless' , '⋛'], \ ['gtrless' , '≷'], \ ['gtrsim' , '≳'], \ ['hbar' , 'ℏ'], \ ['heartsuit' , '♡'], \ ['hookleftarrow' , '↩'], \ ['hookrightarrow' , '↪'], \ ['iiint' , '∭'], \ ['iint' , '∬'], \ ['Im' , 'ℑ'], \ ['imath' , 'ɩ'], \ ['in' , '∈'], \ ['infty' , '∞'], \ ['int' , '∫'], \ ['lceil' , '⌈'], \ ['ldots' , '…'], \ ['le' , '≤'], \ ['leadsto' , '↝'], \ ['left(' , '('], \ ['left\[' , '['], \ ['left\\{' , '{'], \ ['leftarrow' , '⟵'], \ ['Leftarrow' , '⟸'], \ ['leftarrowtail' , '↢'], \ ['leftharpoondown', '↽'], \ ['leftharpoonup' , '↼'], \ ['leftrightarrow' , '↔'], \ ['Leftrightarrow' , '⇔'], \ ['leftrightsquigarrow', '↭'], \ ['leftthreetimes' , '⋋'], \ ['leq' , '≤'], \ ['leq' , '≤'], \ ['leqq' , '≦'], \ ['lessdot' , '⋖'], \ ['lesseqgtr' , '⋚'], \ ['lesssim' , '≲'], \ ['lfloor' , '⌊'], \ ['ll' , '≪'], \ ['lmoustache' , '╭'], \ ['lneqq' , '≨'], \ ['ltimes' , '⋉'], \ ['mapsto' , '↦'], \ ['measuredangle' , '∡'], \ ['mid' , '∣'], \ ['models' , '╞'], \ ['mp' , '∓'], \ ['nabla' , '∇'], \ ['natural' , '♮'], \ ['ncong' , '≇'], \ ['ne' , '≠'], \ ['nearrow' , '↗'], \ ['neg' , '¬'], \ ['neq' , '≠'], \ ['nexists' , '∄'], \ ['ngeq' , '≱'], \ ['ngeqq' , '≱'], \ ['ngtr' , '≯'], \ ['ni' , '∋'], \ ['nleftarrow' , '↚'], \ ['nLeftarrow' , '⇍'], \ ['nLeftrightarrow', '⇎'], \ ['nleq' , '≰'], \ ['nleqq' , '≰'], \ ['nless' , '≮'], \ ['nmid' , '∤'], \ ['notin' , '∉'], \ ['nprec' , '⊀'], \ ['nrightarrow' , '↛'], \ ['nRightarrow' , '⇏'], \ ['nsim' , '≁'], \ ['nsucc' , '⊁'], \ ['ntriangleleft' , '⋪'], \ ['ntrianglelefteq', '⋬'], \ ['ntriangleright' , '⋫'], \ ['ntrianglerighteq', '⋭'], \ ['nvdash' , '⊬'], \ ['nvDash' , '⊭'], \ ['nVdash' , '⊮'], \ ['nwarrow' , '↖'], \ ['odot' , '⊙'], \ ['oint' , '∮'], \ ['ominus' , '⊖'], \ ['oplus' , '⊕'], \ ['oslash' , '⊘'], \ ['otimes' , '⊗'], \ ['owns' , '∋'], \ ['P' , '¶'], \ ['parallel' , '║'], \ ['partial' , '∂'], \ ['perp' , '⊥'], \ ['pitchfork' , '⋔'], \ ['pm' , '±'], \ ['prec' , '≺'], \ ['precapprox' , '⪷'], \ ['preccurlyeq' , '≼'], \ ['preceq' , '⪯'], \ ['precnapprox' , '⪹'], \ ['precneqq' , '⪵'], \ ['precsim' , '≾'], \ ['prime' , '′'], \ ['prod' , '∏'], \ ['propto' , '∝'], \ ['rceil' , '⌉'], \ ['Re' , 'ℜ'], \ ['rfloor' , '⌋'], \ ['right)' , ')'], \ ['right]' , ']'], \ ['right\\}' , '}'], \ ['rightarrow' , '⟶'], \ ['Rightarrow' , '⟹'], \ ['rightarrowtail' , '↣'], \ ['rightleftharpoons', '⇌'], \ ['rightsquigarrow', '↝'], \ ['rightthreetimes', '⋌'], \ ['risingdotseq' , '≓'], \ ['rmoustache' , '╮'], \ ['rtimes' , '⋊'], \ ['S' , '§'], \ ['searrow' , '↘'], \ ['setminus' , '∖'], \ ['sharp' , '♯'], \ ['sim' , '∼'], \ ['simeq' , '⋍'], \ ['smile' , '‿'], \ ['spadesuit' , '♠'], \ ['sphericalangle' , '∢'], \ ['sqcap' , '⊓'], \ ['sqcup' , '⊔'], \ ['sqsubset' , '⊏'], \ ['sqsubseteq' , '⊑'], \ ['sqsupset' , '⊐'], \ ['sqsupseteq' , '⊒'], \ ['star' , '✫'], \ ['subset' , '⊂'], \ ['Subset' , '⋐'], \ ['subseteq' , '⊆'], \ ['subseteqq' , '⫅'], \ ['subsetneq' , '⊊'], \ ['subsetneqq' , '⫋'], \ ['succ' , '≻'], \ ['succapprox' , '⪸'], \ ['succcurlyeq' , '≽'], \ ['succeq' , '⪰'], \ ['succnapprox' , '⪺'], \ ['succneqq' , '⪶'], \ ['succsim' , '≿'], \ ['sum' , '∑'], \ ['supset' , '⊃'], \ ['Supset' , '⋑'], \ ['supseteq' , '⊇'], \ ['supseteqq' , '⫆'], \ ['supsetneq' , '⊋'], \ ['supsetneqq' , '⫌'], \ ['surd' , '√'], \ ['swarrow' , '↙'], \ ['therefore' , '∴'], \ ['times' , '×'], \ ['to' , '→'], \ ['top' , '⊤'], \ ['triangle' , '∆'], \ ['triangleleft' , '⊲'], \ ['trianglelefteq' , '⊴'], \ ['triangleq' , '≜'], \ ['triangleright' , '⊳'], \ ['trianglerighteq', '⊵'], \ ['twoheadleftarrow', '↞'], \ ['twoheadrightarrow', '↠'], \ ['uparrow' , '↑'], \ ['Uparrow' , '⇑'], \ ['updownarrow' , '↕'], \ ['Updownarrow' , '⇕'], \ ['varnothing' , '∅'], \ ['vartriangle' , '∆'], \ ['vdash' , '⊢'], \ ['vDash' , '⊨'], \ ['Vdash' , '⊩'], \ ['vdots' , '⋮'], \ ['vee' , '∨'], \ ['veebar' , '⊻'], \ ['Vvdash' , '⊪'], \ ['wedge' , '∧'], \ ['wp' , '℘'], \ ['wr' , '≀']] " \ ['jmath' , 'X'] " \ ['uminus' , 'X'] " \ ['uplus' , 'X'] for texmath in s:texMathList if texmath[0] =~ '\w$' exe "syn match texMathSymbol '\\\\".texmath[0]."\\>' contained conceal cchar=".texmath[1] else exe "syn match texMathSymbol '\\\\".texmath[0]."' contained conceal cchar=".texmath[1] endif endfor if &ambw == "double" syn match texMathSymbol '\\gg\>' contained conceal cchar=≫ syn match texMathSymbol '\\ll\>' contained conceal cchar=≪ else syn match texMathSymbol '\\gg\>' contained conceal cchar=⟫ syn match texMathSymbol '\\ll\>' contained conceal cchar=⟪ endif syn match texMathSymbol '\\hat{a}' contained conceal cchar=â syn match texMathSymbol '\\hat{A}' contained conceal cchar= syn match texMathSymbol '\\hat{c}' contained conceal cchar=ĉ syn match texMathSymbol '\\hat{C}' contained conceal cchar=Ĉ syn match texMathSymbol '\\hat{e}' contained conceal cchar=ê syn match texMathSymbol '\\hat{E}' contained conceal cchar=Ê syn match texMathSymbol '\\hat{g}' contained conceal cchar=ĝ syn match texMathSymbol '\\hat{G}' contained conceal cchar=Ĝ syn match texMathSymbol '\\hat{i}' contained conceal cchar=î syn match texMathSymbol '\\hat{I}' contained conceal cchar=Î syn match texMathSymbol '\\hat{o}' contained conceal cchar=ô syn match texMathSymbol '\\hat{O}' contained conceal cchar=Ô syn match texMathSymbol '\\hat{s}' contained conceal cchar=ŝ syn match texMathSymbol '\\hat{S}' contained conceal cchar=Ŝ syn match texMathSymbol '\\hat{u}' contained conceal cchar=û syn match texMathSymbol '\\hat{U}' contained conceal cchar=Û syn match texMathSymbol '\\hat{w}' contained conceal cchar=ŵ syn match texMathSymbol '\\hat{W}' contained conceal cchar=Ŵ syn match texMathSymbol '\\hat{y}' contained conceal cchar=ŷ syn match texMathSymbol '\\hat{Y}' contained conceal cchar=Ŷ endif " Greek {{{2 if s:tex_conceal =~ 'g' fun! s:Greek(group,pat,cchar) exe 'syn match '.a:group." '".a:pat."' contained conceal cchar=".a:cchar endfun call s:Greek('texGreek','\\alpha\>' ,'α') call s:Greek('texGreek','\\beta\>' ,'β') call s:Greek('texGreek','\\gamma\>' ,'γ') call s:Greek('texGreek','\\delta\>' ,'δ') call s:Greek('texGreek','\\epsilon\>' ,'ϵ') call s:Greek('texGreek','\\varepsilon\>' ,'ε') call s:Greek('texGreek','\\zeta\>' ,'ζ') call s:Greek('texGreek','\\eta\>' ,'η') call s:Greek('texGreek','\\theta\>' ,'θ') call s:Greek('texGreek','\\vartheta\>' ,'ϑ') call s:Greek('texGreek','\\kappa\>' ,'κ') call s:Greek('texGreek','\\lambda\>' ,'λ') call s:Greek('texGreek','\\mu\>' ,'μ') call s:Greek('texGreek','\\nu\>' ,'ν') call s:Greek('texGreek','\\xi\>' ,'ξ') call s:Greek('texGreek','\\pi\>' ,'π') call s:Greek('texGreek','\\varpi\>' ,'ϖ') call s:Greek('texGreek','\\rho\>' ,'ρ') call s:Greek('texGreek','\\varrho\>' ,'ϱ') call s:Greek('texGreek','\\sigma\>' ,'σ') call s:Greek('texGreek','\\varsigma\>' ,'ς') call s:Greek('texGreek','\\tau\>' ,'τ') call s:Greek('texGreek','\\upsilon\>' ,'υ') call s:Greek('texGreek','\\phi\>' ,'φ') call s:Greek('texGreek','\\varphi\>' ,'ϕ') call s:Greek('texGreek','\\chi\>' ,'χ') call s:Greek('texGreek','\\psi\>' ,'ψ') call s:Greek('texGreek','\\omega\>' ,'ω') call s:Greek('texGreek','\\Gamma\>' ,'Γ') call s:Greek('texGreek','\\Delta\>' ,'Δ') call s:Greek('texGreek','\\Theta\>' ,'Θ') call s:Greek('texGreek','\\Lambda\>' ,'Λ') call s:Greek('texGreek','\\Xi\>' ,'Χ') call s:Greek('texGreek','\\Pi\>' ,'Π') call s:Greek('texGreek','\\Sigma\>' ,'Σ') call s:Greek('texGreek','\\Upsilon\>' ,'Υ') call s:Greek('texGreek','\\Phi\>' ,'Φ') call s:Greek('texGreek','\\Psi\>' ,'Ψ') call s:Greek('texGreek','\\Omega\>' ,'Ω') delfun s:Greek endif " Superscripts/Subscripts {{{2 if s:tex_conceal =~ 's' if s:tex_fast =~ 's' syn region texSuperscript matchgroup=Delimiter start='\^{' skip="\\\\\|\\[{}]" end='}' contained concealends contains=texSpecialChar,texSuperscripts,texStatement,texSubscript,texSuperscript,texMathMatcher syn region texSubscript matchgroup=Delimiter start='_{' skip="\\\\\|\\[{}]" end='}' contained concealends contains=texSpecialChar,texSubscripts,texStatement,texSubscript,texSuperscript,texMathMatcher endif fun! s:SuperSub(group,leader,pat,cchar) exe 'syn match '.a:group." '".a:leader.a:pat."' contained conceal cchar=".a:cchar exe 'syn match '.a:group."s '".a:pat."' contained conceal cchar=".a:cchar.' nextgroup='.a:group.'s' endfun call s:SuperSub('texSuperscript','\^','0','⁰') call s:SuperSub('texSuperscript','\^','1','¹') call s:SuperSub('texSuperscript','\^','2','²') call s:SuperSub('texSuperscript','\^','3','³') call s:SuperSub('texSuperscript','\^','4','⁴') call s:SuperSub('texSuperscript','\^','5','⁵') call s:SuperSub('texSuperscript','\^','6','⁶') call s:SuperSub('texSuperscript','\^','7','⁷') call s:SuperSub('texSuperscript','\^','8','⁸') call s:SuperSub('texSuperscript','\^','9','⁹') call s:SuperSub('texSuperscript','\^','a','ᵃ') call s:SuperSub('texSuperscript','\^','b','ᵇ') call s:SuperSub('texSuperscript','\^','c','ᶜ') call s:SuperSub('texSuperscript','\^','d','ᵈ') call s:SuperSub('texSuperscript','\^','e','ᵉ') call s:SuperSub('texSuperscript','\^','f','ᶠ') call s:SuperSub('texSuperscript','\^','g','ᵍ') call s:SuperSub('texSuperscript','\^','h','ʰ') call s:SuperSub('texSuperscript','\^','i','ⁱ') call s:SuperSub('texSuperscript','\^','j','ʲ') call s:SuperSub('texSuperscript','\^','k','ᵏ') call s:SuperSub('texSuperscript','\^','l','ˡ') call s:SuperSub('texSuperscript','\^','m','ᵐ') call s:SuperSub('texSuperscript','\^','n','ⁿ') call s:SuperSub('texSuperscript','\^','o','ᵒ') call s:SuperSub('texSuperscript','\^','p','ᵖ') call s:SuperSub('texSuperscript','\^','r','ʳ') call s:SuperSub('texSuperscript','\^','s','ˢ') call s:SuperSub('texSuperscript','\^','t','ᵗ') call s:SuperSub('texSuperscript','\^','u','ᵘ') call s:SuperSub('texSuperscript','\^','v','ᵛ') call s:SuperSub('texSuperscript','\^','w','ʷ') call s:SuperSub('texSuperscript','\^','x','ˣ') call s:SuperSub('texSuperscript','\^','y','ʸ') call s:SuperSub('texSuperscript','\^','z','ᶻ') call s:SuperSub('texSuperscript','\^','A','ᴬ') call s:SuperSub('texSuperscript','\^','B','ᴮ') call s:SuperSub('texSuperscript','\^','D','ᴰ') call s:SuperSub('texSuperscript','\^','E','ᴱ') call s:SuperSub('texSuperscript','\^','G','ᴳ') call s:SuperSub('texSuperscript','\^','H','ᴴ') call s:SuperSub('texSuperscript','\^','I','ᴵ') call s:SuperSub('texSuperscript','\^','J','ᴶ') call s:SuperSub('texSuperscript','\^','K','ᴷ') call s:SuperSub('texSuperscript','\^','L','ᴸ') call s:SuperSub('texSuperscript','\^','M','ᴹ') call s:SuperSub('texSuperscript','\^','N','ᴺ') call s:SuperSub('texSuperscript','\^','O','ᴼ') call s:SuperSub('texSuperscript','\^','P','ᴾ') call s:SuperSub('texSuperscript','\^','R','ᴿ') call s:SuperSub('texSuperscript','\^','T','ᵀ') call s:SuperSub('texSuperscript','\^','U','ᵁ') call s:SuperSub('texSuperscript','\^','W','ᵂ') call s:SuperSub('texSuperscript','\^',',','︐') call s:SuperSub('texSuperscript','\^',':','︓') call s:SuperSub('texSuperscript','\^',';','︔') call s:SuperSub('texSuperscript','\^','+','⁺') call s:SuperSub('texSuperscript','\^','-','⁻') call s:SuperSub('texSuperscript','\^','<','˂') call s:SuperSub('texSuperscript','\^','>','˃') call s:SuperSub('texSuperscript','\^','/','ˊ') call s:SuperSub('texSuperscript','\^','(','⁽') call s:SuperSub('texSuperscript','\^',')','⁾') call s:SuperSub('texSuperscript','\^','\.','˙') call s:SuperSub('texSuperscript','\^','=','˭') call s:SuperSub('texSubscript','_','0','₀') call s:SuperSub('texSubscript','_','1','₁') call s:SuperSub('texSubscript','_','2','₂') call s:SuperSub('texSubscript','_','3','₃') call s:SuperSub('texSubscript','_','4','₄') call s:SuperSub('texSubscript','_','5','₅') call s:SuperSub('texSubscript','_','6','₆') call s:SuperSub('texSubscript','_','7','₇') call s:SuperSub('texSubscript','_','8','₈') call s:SuperSub('texSubscript','_','9','₉') call s:SuperSub('texSubscript','_','a','ₐ') call s:SuperSub('texSubscript','_','e','ₑ') call s:SuperSub('texSubscript','_','i','ᵢ') call s:SuperSub('texSubscript','_','o','ₒ') call s:SuperSub('texSubscript','_','u','ᵤ') call s:SuperSub('texSubscript','_',',','︐') call s:SuperSub('texSubscript','_','+','₊') call s:SuperSub('texSubscript','_','-','₋') call s:SuperSub('texSubscript','_','/','ˏ') call s:SuperSub('texSubscript','_','(','₍') call s:SuperSub('texSubscript','_',')','₎') call s:SuperSub('texSubscript','_','\.','‸') call s:SuperSub('texSubscript','_','r','ᵣ') call s:SuperSub('texSubscript','_','v','ᵥ') call s:SuperSub('texSubscript','_','x','ₓ') call s:SuperSub('texSubscript','_','\\beta\>' ,'ᵦ') call s:SuperSub('texSubscript','_','\\delta\>','ᵨ') call s:SuperSub('texSubscript','_','\\phi\>' ,'ᵩ') call s:SuperSub('texSubscript','_','\\gamma\>','ᵧ') call s:SuperSub('texSubscript','_','\\chi\>' ,'ᵪ') delfun s:SuperSub endif " Accented characters: {{{2 if s:tex_conceal =~ 'a' if b:tex_stylish syn match texAccent "\\[bcdvuH][^a-zA-Z@]"me=e-1 syn match texLigature "\\\([ijolL]\|ae\|oe\|ss\|AA\|AE\|OE\)[^a-zA-Z@]"me=e-1 else fun! s:Accents(chr,...) let i= 1 for accent in ["`","\\'","^",'"','\~','\.',"c","H","k","r","u","v"] if i > a:0 break endif if strlen(a:{i}) == 0 || a:{i} == ' ' || a:{i} == '?' let i= i + 1 continue endif if accent =~ '\a' exe "syn match texAccent '".'\\'.accent.'\(\s*{'.a:chr.'}\|\s\+'.a:chr.'\)'."' conceal cchar=".a:{i} else exe "syn match texAccent '".'\\'.accent.'\s*\({'.a:chr.'}\|'.a:chr.'\)'."' conceal cchar=".a:{i} endif let i= i + 1 endfor endfun " \` \' \^ \" \~ \. \c \H \k \r \u \v call s:Accents('a','à','á','â','ä','ã','ȧ',' ',' ','ą','å','ă','ă') call s:Accents('A','À','Á','Â','Ä','Ã','Ȧ',' ',' ','Ą','Å','Ă','Ă') call s:Accents('c',' ','ć','ĉ',' ',' ','ċ','ç',' ',' ',' ',' ','č') call s:Accents('C',' ','Ć','Ĉ',' ',' ','Ċ','Ç',' ',' ',' ',' ','Č') call s:Accents('d',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ď') call s:Accents('D',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ď') call s:Accents('e','è','é','ê','ë','ẽ','ė','ȩ',' ','ę',' ','ĕ','ě') call s:Accents('E','È','É','Ê','Ë','Ẽ','Ė','Ȩ',' ','Ę',' ','Ĕ','Ě') call s:Accents('g',' ','ǵ','ĝ',' ',' ','ġ','ģ',' ',' ',' ','ğ',' ') call s:Accents('G',' ','Ǵ','Ĝ',' ',' ','Ġ','Ģ',' ',' ',' ','Ğ',' ') call s:Accents('h',' ',' ','ĥ',' ',' ',' ',' ',' ',' ',' ',' ','ȟ') call s:Accents('H',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','Ȟ') call s:Accents('i','ì','í','î','ï','ĩ','į',' ',' ',' ',' ','ĭ',' ') call s:Accents('I','Ì','Í','Î','Ï','Ĩ','İ',' ',' ',' ',' ','Ĭ',' ') call s:Accents('J',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ','ǰ') call s:Accents('k',' ',' ',' ',' ',' ',' ','ķ',' ',' ',' ',' ',' ') call s:Accents('K',' ',' ',' ',' ',' ',' ','Ķ',' ',' ',' ',' ',' ') call s:Accents('l',' ','ĺ','ľ',' ',' ',' ','ļ',' ',' ',' ',' ','ľ') call s:Accents('L',' ','Ĺ','Ľ',' ',' ',' ','Ļ',' ',' ',' ',' ','Ľ') call s:Accents('n',' ','ń',' ',' ','ñ',' ','ņ',' ',' ',' ',' ','ň') call s:Accents('N',' ','Ń',' ',' ','Ñ',' ','Ņ',' ',' ',' ',' ','Ň') call s:Accents('o','ò','ó','ô','ö','õ','ȯ',' ','ő','ǫ',' ','ŏ',' ') call s:Accents('O','Ò','Ó','Ô','Ö','Õ','Ȯ',' ','Ő','Ǫ',' ','Ŏ',' ') call s:Accents('r',' ','ŕ',' ',' ',' ',' ','ŗ',' ',' ',' ',' ','ř') call s:Accents('R',' ','Ŕ',' ',' ',' ',' ','Ŗ',' ',' ',' ',' ','Ř') call s:Accents('s',' ','ś','ŝ',' ',' ',' ','ş',' ','ȿ',' ',' ','š') call s:Accents('S',' ','Ś','Ŝ',' ',' ',' ','Ş',' ',' ',' ',' ','Š') call s:Accents('t',' ',' ',' ',' ',' ',' ','ţ',' ',' ',' ',' ','ť') call s:Accents('T',' ',' ',' ',' ',' ',' ','Ţ',' ',' ',' ',' ','Ť') call s:Accents('u','ù','ú','û','ü','ũ',' ',' ','ű','ų','ů','ŭ','ǔ') call s:Accents('U','Ù','Ú','Û','Ü','Ũ',' ',' ','Ű','Ų','Ů','Ŭ','Ǔ') call s:Accents('w',' ',' ','ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ') call s:Accents('W',' ',' ','Ŵ',' ',' ',' ',' ',' ',' ',' ',' ',' ') call s:Accents('y','ỳ','ý','ŷ','ÿ','ỹ',' ',' ',' ',' ',' ',' ',' ') call s:Accents('Y','Ỳ','Ý','Ŷ','Ÿ','Ỹ',' ',' ',' ',' ',' ',' ',' ') call s:Accents('z',' ','ź',' ',' ',' ','ż',' ',' ',' ',' ',' ','ž') call s:Accents('Z',' ','Ź',' ',' ',' ','Ż',' ',' ',' ',' ',' ','Ž') call s:Accents('\\i','ì','í','î','ï','ĩ','į',' ',' ',' ',' ','ĭ',' ') " \` \' \^ \" \~ \. \c \H \k \r \u \v delfun s:Accents syn match texAccent '\\aa\>' conceal cchar=å syn match texAccent '\\AA\>' conceal cchar=Å syn match texAccent '\\o\>' conceal cchar=ø syn match texAccent '\\O\>' conceal cchar=Ø syn match texLigature '\\AE\>' conceal cchar=Æ syn match texLigature '\\ae\>' conceal cchar=æ syn match texLigature '\\oe\>' conceal cchar=œ syn match texLigature '\\OE\>' conceal cchar=Œ syn match texLigature '\\ss\>' conceal cchar=ß endif endif endif " --------------------------------------------------------------------- " LaTeX synchronization: {{{1 syn sync maxlines=200 syn sync minlines=50 syn sync match texSyncStop groupthere NONE "%stopzone\>" " Synchronization: {{{1 " The $..$ and $$..$$ make for impossible sync patterns " (one can't tell if a "$$" starts or stops a math zone by itself) " The following grouptheres coupled with minlines above " help improve the odds of good syncing. if !exists("tex_no_math") syn sync match texSyncMathZoneA groupthere NONE "\\end{abstract}" syn sync match texSyncMathZoneA groupthere NONE "\\end{center}" syn sync match texSyncMathZoneA groupthere NONE "\\end{description}" syn sync match texSyncMathZoneA groupthere NONE "\\end{enumerate}" syn sync match texSyncMathZoneA groupthere NONE "\\end{itemize}" syn sync match texSyncMathZoneA groupthere NONE "\\end{table}" syn sync match texSyncMathZoneA groupthere NONE "\\end{tabular}" syn sync match texSyncMathZoneA groupthere NONE "\\\(sub\)*section\>" endif " --------------------------------------------------------------------- " Highlighting: {{{1 if did_tex_syntax_inits == 1 let did_tex_syntax_inits= 2 " TeX highlighting groups which should share similar highlighting if !exists("s:tex_no_error") if !exists("g:tex_no_math") HiLink texBadMath texError HiLink texMathDelimBad texError HiLink texMathError texError if !b:tex_stylish HiLink texOnlyMath texError endif endif HiLink texError Error endif hi texBoldStyle gui=bold cterm=bold hi texItalStyle gui=italic cterm=italic hi texBoldItalStyle gui=bold,italic cterm=bold,italic hi texItalBoldStyle gui=bold,italic cterm=bold,italic HiLink texCite texRefZone HiLink texDefCmd texDef HiLink texDefName texDef HiLink texDocType texCmdName HiLink texDocTypeArgs texCmdArgs HiLink texInputFileOpt texCmdArgs HiLink texInputCurlies texDelimiter HiLink texLigature texSpecialChar if !exists("tex_no_math") HiLink texMathDelimSet1 texMathDelim HiLink texMathDelimSet2 texMathDelim HiLink texMathDelimKey texMathDelim HiLink texMathMatcher texMath HiLink texAccent texStatement HiLink texGreek texStatement HiLink texSuperscript texStatement HiLink texSubscript texStatement HiLink texSuperscripts texSuperscript HiLink texSubscripts texSubscript HiLink texMathSymbol texStatement HiLink texMathZoneV texMath HiLink texMathZoneW texMath HiLink texMathZoneX texMath HiLink texMathZoneY texMath HiLink texMathZoneV texMath HiLink texMathZoneZ texMath endif HiLink texBeginEnd texCmdName HiLink texBeginEndName texSection HiLink texSpaceCode texStatement HiLink texStyleStatement texStatement HiLink texTypeSize texType HiLink texTypeStyle texType " Basic TeX highlighting groups HiLink texCmdArgs Number HiLink texCmdName Statement HiLink texComment Comment HiLink texDef Statement HiLink texDefParm Special HiLink texDelimiter Delimiter HiLink texInput Special HiLink texInputFile Special HiLink texLength Number HiLink texMath Special HiLink texMathDelim Statement HiLink texMathOper Operator HiLink texNewCmd Statement HiLink texNewEnv Statement HiLink texOption Number HiLink texRefZone Special HiLink texSection PreCondit HiLink texSpaceCodeChar Special HiLink texSpecialChar SpecialChar HiLink texStatement Statement HiLink texString String HiLink texTodo Todo HiLink texType Type HiLink texZone PreCondit delcommand HiLink endif " Cleanup: {{{1 unlet s:extfname let b:current_syntax = "tex" let &cpo = s:keepcpo unlet s:keepcpo " vim: ts=8 fdm=marker
Save