golden hour
/usr/share/vim/vim82/syntax
⬆️ Go Up
Upload
File/Folder
Size
Actions
2html.vim
73.65 KB
Del
OK
8th.vim
28.02 KB
Del
OK
README.txt
1.37 KB
Del
OK
a2ps.vim
2.37 KB
Del
OK
a65.vim
6.24 KB
Del
OK
aap.vim
5.56 KB
Del
OK
abap.vim
8.94 KB
Del
OK
abaqus.vim
1.07 KB
Del
OK
abc.vim
1.8 KB
Del
OK
abel.vim
4.99 KB
Del
OK
acedb.vim
4.76 KB
Del
OK
ada.vim
12.74 KB
Del
OK
aflex.vim
4.27 KB
Del
OK
ahdl.vim
2.71 KB
Del
OK
aidl.vim
629 B
Del
OK
alsaconf.vim
1.51 KB
Del
OK
amiga.vim
2.9 KB
Del
OK
aml.vim
23.57 KB
Del
OK
ampl.vim
4.01 KB
Del
OK
ant.vim
5.68 KB
Del
OK
antlr.vim
1.75 KB
Del
OK
apache.vim
15.01 KB
Del
OK
apachestyle.vim
1.38 KB
Del
OK
aptconf.vim
21.71 KB
Del
OK
arch.vim
1.12 KB
Del
OK
arduino.vim
1.98 KB
Del
OK
art.vim
1.27 KB
Del
OK
asciidoc.vim
10.88 KB
Del
OK
asm.vim
5.9 KB
Del
OK
asm68k.vim
13.95 KB
Del
OK
asmh8300.vim
1.68 KB
Del
OK
asn.vim
2.52 KB
Del
OK
aspperl.vim
811 B
Del
OK
aspvbs.vim
8.89 KB
Del
OK
asterisk.vim
5.5 KB
Del
OK
asteriskvm.vim
2.28 KB
Del
OK
atlas.vim
2.54 KB
Del
OK
autodoc.vim
3.64 KB
Del
OK
autohotkey.vim
11.58 KB
Del
OK
autoit.vim
46.89 KB
Del
OK
automake.vim
3.85 KB
Del
OK
ave.vim
1.86 KB
Del
OK
avra.vim
2.62 KB
Del
OK
awk.vim
8 KB
Del
OK
ayacc.vim
2.52 KB
Del
OK
b.vim
4.79 KB
Del
OK
baan.vim
71.87 KB
Del
OK
bash.vim
371 B
Del
OK
basic.vim
8.11 KB
Del
OK
bc.vim
1.75 KB
Del
OK
bdf.vim
3.75 KB
Del
OK
bib.vim
5.86 KB
Del
OK
bindzone.vim
4.79 KB
Del
OK
blank.vim
794 B
Del
OK
bsdl.vim
377 B
Del
OK
bst.vim
2.76 KB
Del
OK
btm.vim
9.07 KB
Del
OK
bzl.vim
374 B
Del
OK
bzr.vim
1.52 KB
Del
OK
c.vim
26.99 KB
Del
OK
cabal.vim
7.19 KB
Del
OK
cabalconfig.vim
1.15 KB
Del
OK
cabalproject.vim
944 B
Del
OK
calendar.vim
4.92 KB
Del
OK
catalog.vim
921 B
Del
OK
cdl.vim
3.02 KB
Del
OK
cdrdaoconf.vim
3.56 KB
Del
OK
cdrtoc.vim
22.22 KB
Del
OK
cf.vim
18.21 KB
Del
OK
cfg.vim
1.32 KB
Del
OK
ch.vim
922 B
Del
OK
chaiscript.vim
2.82 KB
Del
OK
change.vim
901 B
Del
OK
changelog.vim
2.05 KB
Del
OK
chaskell.vim
333 B
Del
OK
cheetah.vim
1.71 KB
Del
OK
chicken.vim
2.56 KB
Del
OK
chill.vim
7.84 KB
Del
OK
chordpro.vim
2.46 KB
Del
OK
cl.vim
3.81 KB
Del
OK
clean.vim
3.08 KB
Del
OK
clipper.vim
5.45 KB
Del
OK
clojure.vim
45.4 KB
Del
OK
cmake.vim
41.16 KB
Del
OK
cmod.vim
6.12 KB
Del
OK
cmusrc.vim
12.62 KB
Del
OK
cobol.vim
13.27 KB
Del
OK
coco.vim
1.27 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
2.03 KB
Del
OK
context.vim
6.05 KB
Del
OK
cpp.vim
3.5 KB
Del
OK
crm.vim
1.17 KB
Del
OK
crontab.vim
2.16 KB
Del
OK
cs.vim
10.69 KB
Del
OK
csc.vim
8.25 KB
Del
OK
csdl.vim
23.2 KB
Del
OK
csh.vim
6.31 KB
Del
OK
csp.vim
6.98 KB
Del
OK
css.vim
32.17 KB
Del
OK
cterm.vim
6.26 KB
Del
OK
ctrlh.vim
688 B
Del
OK
cucumber.vim
31.14 KB
Del
OK
cuda.vim
2.63 KB
Del
OK
cupl.vim
3.78 KB
Del
OK
cuplsim.vim
1.87 KB
Del
OK
cvs.vim
882 B
Del
OK
cvsrc.vim
1.22 KB
Del
OK
cweb.vim
2.82 KB
Del
OK
cynlib.vim
2.49 KB
Del
OK
cynpp.vim
1.23 KB
Del
OK
d.vim
27.96 KB
Del
OK
dart.vim
3.21 KB
Del
OK
datascript.vim
3.72 KB
Del
OK
dcd.vim
1.76 KB
Del
OK
dcl.vim
6.23 KB
Del
OK
debchangelog.vim
3.35 KB
Del
OK
debcontrol.vim
8.52 KB
Del
OK
debcopyright.vim
1.11 KB
Del
OK
debsources.vim
2.15 KB
Del
OK
def.vim
1.07 KB
Del
OK
denyhosts.vim
7.19 KB
Del
OK
desc.vim
3 KB
Del
OK
desktop.vim
9.13 KB
Del
OK
dictconf.vim
3.04 KB
Del
OK
dictdconf.vim
6.31 KB
Del
OK
diff.vim
17.01 KB
Del
OK
dircolors.vim
6.78 KB
Del
OK
dirpager.vim
1.75 KB
Del
OK
diva.vim
4.63 KB
Del
OK
django.vim
3.84 KB
Del
OK
dns.vim
132 B
Del
OK
dnsmasq.vim
9.83 KB
Del
OK
docbk.vim
10.08 KB
Del
OK
docbksgml.vim
193 B
Del
OK
docbkxml.vim
191 B
Del
OK
dockerfile.vim
2.42 KB
Del
OK
dosbatch.vim
6.11 KB
Del
OK
dosini.vim
1.24 KB
Del
OK
dot.vim
2.95 KB
Del
OK
doxygen.vim
38 KB
Del
OK
dracula.vim
2.61 KB
Del
OK
dsl.vim
1.28 KB
Del
OK
dtd.vim
4.89 KB
Del
OK
dtml.vim
16.22 KB
Del
OK
dtrace.vim
6.29 KB
Del
OK
dts.vim
1.18 KB
Del
OK
dune.vim
1.9 KB
Del
OK
dylan.vim
3.33 KB
Del
OK
dylanintr.vim
1.05 KB
Del
OK
dylanlid.vim
664 B
Del
OK
ecd.vim
1.2 KB
Del
OK
edif.vim
1.25 KB
Del
OK
eiffel.vim
6.76 KB
Del
OK
elf.vim
2.29 KB
Del
OK
elinks.vim
10.25 KB
Del
OK
elm.vim
3.57 KB
Del
OK
elmfilt.vim
2.83 KB
Del
OK
erlang.vim
10.87 KB
Del
OK
eruby.vim
3.22 KB
Del
OK
esmtprc.vim
938 B
Del
OK
esqlc.vim
2.04 KB
Del
OK
esterel.vim
2.98 KB
Del
OK
eterm.vim
18.72 KB
Del
OK
euphoria3.vim
5.96 KB
Del
OK
euphoria4.vim
14.2 KB
Del
OK
eviews.vim
4.89 KB
Del
OK
exim.vim
17.66 KB
Del
OK
expect.vim
3.65 KB
Del
OK
exports.vim
1.71 KB
Del
OK
falcon.vim
11.73 KB
Del
OK
fan.vim
5.32 KB
Del
OK
fasm.vim
8.55 KB
Del
OK
fdcc.vim
5.52 KB
Del
OK
fetchmail.vim
3.23 KB
Del
OK
fgl.vim
7.1 KB
Del
OK
flexwiki.vim
5.31 KB
Del
OK
focexec.vim
3.44 KB
Del
OK
form.vim
6.24 KB
Del
OK
forth.vim
10.42 KB
Del
OK
fortran.vim
32.28 KB
Del
OK
foxpro.vim
32.09 KB
Del
OK
framescript.vim
11.41 KB
Del
OK
freebasic.vim
10.58 KB
Del
OK
fstab.vim
15.53 KB
Del
OK
fvwm.vim
24.44 KB
Del
OK
fvwm2m4.vim
711 B
Del
OK
gdb.vim
4.26 KB
Del
OK
gdmo.vim
3.22 KB
Del
OK
gedcom.vim
2.22 KB
Del
OK
gift.vim
10 KB
Del
OK
git.vim
4.2 KB
Del
OK
gitcommit.vim
4.96 KB
Del
OK
gitconfig.vim
1.56 KB
Del
OK
gitolite.vim
4.35 KB
Del
OK
gitrebase.vim
2.88 KB
Del
OK
gitsendemail.vim
580 B
Del
OK
gkrellmrc.vim
4.02 KB
Del
OK
gnash.vim
3.38 KB
Del
OK
gnuplot.vim
23.11 KB
Del
OK
go.vim
7.72 KB
Del
OK
godoc.vim
352 B
Del
OK
gp.vim
2.9 KB
Del
OK
gpg.vim
5.46 KB
Del
OK
gprof.vim
2.07 KB
Del
OK
grads.vim
1.7 KB
Del
OK
gretl.vim
3.64 KB
Del
OK
groff.vim
293 B
Del
OK
groovy.vim
21.96 KB
Del
OK
group.vim
1.68 KB
Del
OK
grub.vim
3.79 KB
Del
OK
gsp.vim
1.98 KB
Del
OK
gtkrc.vim
9.1 KB
Del
OK
haml.vim
6.91 KB
Del
OK
hamster.vim
13.52 KB
Del
OK
haskell.vim
9.03 KB
Del
OK
haste.vim
4.88 KB
Del
OK
hastepreproc.vim
1.39 KB
Del
OK
hb.vim
3.08 KB
Del
OK
help.vim
8.19 KB
Del
OK
help_ru.vim
3.43 KB
Del
OK
hercules.vim
5.59 KB
Del
OK
hex.vim
3.92 KB
Del
OK
hgcommit.vim
1.09 KB
Del
OK
hitest.vim
3.56 KB
Del
OK
hog.vim
11.83 KB
Del
OK
hollywood.vim
43.41 KB
Del
OK
hostconf.vim
3.78 KB
Del
OK
hostsaccess.vim
549 B
Del
OK
html.vim
18.11 KB
Del
OK
htmlcheetah.vim
488 B
Del
OK
htmldjango.vim
1011 B
Del
OK
htmlm4.vim
670 B
Del
OK
htmlos.vim
8.12 KB
Del
OK
ia64.vim
10.23 KB
Del
OK
ibasic.vim
6.87 KB
Del
OK
icemenu.vim
824 B
Del
OK
icon.vim
6.81 KB
Del
OK
idl.vim
19.43 KB
Del
OK
idlang.vim
13.15 KB
Del
OK
indent.vim
7 KB
Del
OK
inform.vim
19.03 KB
Del
OK
initex.vim
18.77 KB
Del
OK
initng.vim
3.32 KB
Del
OK
inittab.vim
2.48 KB
Del
OK
ipfilter.vim
1.58 KB
Del
OK
ishd.vim
26.42 KB
Del
OK
iss.vim
4.91 KB
Del
OK
ist.vim
1.95 KB
Del
OK
j.vim
9.22 KB
Del
OK
jal.vim
8.75 KB
Del
OK
jam.vim
26.08 KB
Del
OK
jargon.vim
740 B
Del
OK
java.vim
18.15 KB
Del
OK
javacc.vim
2.2 KB
Del
OK
javascript.vim
5.48 KB
Del
OK
javascriptreact.vim
133 B
Del
OK
jess.vim
6.08 KB
Del
OK
jgraph.vim
1.18 KB
Del
OK
jovial.vim
4.01 KB
Del
OK
jproperties.vim
5.37 KB
Del
OK
json.vim
6.11 KB
Del
OK
jsp.vim
2.62 KB
Del
OK
kconfig.vim
35.45 KB
Del
OK
kivy.vim
986 B
Del
OK
kix.vim
6.18 KB
Del
OK
kscript.vim
1.94 KB
Del
OK
kwt.vim
2.4 KB
Del
OK
lace.vim
3.98 KB
Del
OK
latte.vim
3.43 KB
Del
OK
ld.vim
2.85 KB
Del
OK
ldapconf.vim
12.99 KB
Del
OK
ldif.vim
1014 B
Del
OK
less.vim
4.1 KB
Del
OK
lex.vim
8.45 KB
Del
OK
lftp.vim
7.3 KB
Del
OK
lhaskell.vim
4.82 KB
Del
OK
libao.vim
636 B
Del
OK
lifelines.vim
6.48 KB
Del
OK
lilo.vim
10.18 KB
Del
OK
limits.vim
1.29 KB
Del
OK
liquid.vim
6.04 KB
Del
OK
lisp.vim
35.05 KB
Del
OK
lite.vim
4.73 KB
Del
OK
litestep.vim
6.52 KB
Del
OK
loginaccess.vim
4.1 KB
Del
OK
logindefs.vim
7.36 KB
Del
OK
logtalk.vim
16.45 KB
Del
OK
lotos.vim
2.31 KB
Del
OK
lout.vim
4.22 KB
Del
OK
lpc.vim
22.6 KB
Del
OK
lprolog.vim
3.89 KB
Del
OK
lscript.vim
11.82 KB
Del
OK
lsl.vim
15.43 KB
Del
OK
lss.vim
4.76 KB
Del
OK
lua.vim
13.72 KB
Del
OK
lynx.vim
6.42 KB
Del
OK
m4.vim
2.63 KB
Del
OK
mail.vim
5.93 KB
Del
OK
mailaliases.vim
2.7 KB
Del
OK
mailcap.vim
1.11 KB
Del
OK
make.vim
6.05 KB
Del
OK
mallard.vim
1.69 KB
Del
OK
man.vim
1.64 KB
Del
OK
manconf.vim
4.24 KB
Del
OK
manual.vim
909 B
Del
OK
maple.vim
27.9 KB
Del
OK
markdown.vim
8.91 KB
Del
OK
masm.vim
16.84 KB
Del
OK
mason.vim
3.73 KB
Del
OK
master.vim
1022 B
Del
OK
matlab.vim
4.21 KB
Del
OK
maxima.vim
18.36 KB
Del
OK
mel.vim
3.33 KB
Del
OK
meson.vim
4.02 KB
Del
OK
messages.vim
2.65 KB
Del
OK
mf.vim
15.06 KB
Del
OK
mgl.vim
3.64 KB
Del
OK
mgp.vim
1.95 KB
Del
OK
mib.vim
2.63 KB
Del
OK
mix.vim
2.87 KB
Del
OK
mma.vim
11.52 KB
Del
OK
mmix.vim
4.85 KB
Del
OK
mmp.vim
1.45 KB
Del
OK
modconf.vim
1.39 KB
Del
OK
model.vim
1.43 KB
Del
OK
modsim3.vim
3.54 KB
Del
OK
modula2.vim
3.15 KB
Del
OK
modula3.vim
1.96 KB
Del
OK
monk.vim
9.98 KB
Del
OK
moo.vim
9.02 KB
Del
OK
mp.vim
43.49 KB
Del
OK
mplayerconf.vim
7.31 KB
Del
OK
mrxvtrc.vim
9.38 KB
Del
OK
msidl.vim
3.38 KB
Del
OK
msmessages.vim
6.17 KB
Del
OK
msql.vim
2.33 KB
Del
OK
mupad.vim
15.11 KB
Del
OK
murphi.vim
4.47 KB
Del
OK
mush.vim
12.88 KB
Del
OK
muttrc.vim
64.27 KB
Del
OK
mysql.vim
17.2 KB
Del
OK
n1ql.vim
12.6 KB
Del
OK
named.vim
9.77 KB
Del
OK
nanorc.vim
10.37 KB
Del
OK
nasm.vim
25.67 KB
Del
OK
nastran.vim
8.3 KB
Del
OK
natural.vim
6.81 KB
Del
OK
ncf.vim
13.1 KB
Del
OK
neomuttrc.vim
64 KB
Del
OK
netrc.vim
1.89 KB
Del
OK
netrw.vim
7.03 KB
Del
OK
ninja.vim
2.82 KB
Del
OK
nosyntax.vim
755 B
Del
OK
nqc.vim
13.74 KB
Del
OK
nroff.vim
7.6 KB
Del
OK
nsis.vim
33.26 KB
Del
OK
obj.vim
2.72 KB
Del
OK
objc.vim
40.79 KB
Del
OK
objcpp.vim
600 B
Del
OK
ocaml.vim
16.56 KB
Del
OK
occam.vim
4.21 KB
Del
OK
omnimark.vim
6.23 KB
Del
OK
opam.vim
1.37 KB
Del
OK
openroad.vim
13.65 KB
Del
OK
opl.vim
4.03 KB
Del
OK
ora.vim
26.5 KB
Del
OK
pamconf.vim
5.81 KB
Del
OK
pamenv.vim
1.11 KB
Del
OK
papp.vim
3.7 KB
Del
OK
pascal.vim
14.66 KB
Del
OK
passwd.vim
2.39 KB
Del
OK
pbtxt.vim
1.34 KB
Del
OK
pcap.vim
1.46 KB
Del
OK
pccts.vim
4 KB
Del
OK
pdf.vim
3.46 KB
Del
OK
perl.vim
37.57 KB
Del
OK
perl6.vim
72.39 KB
Del
OK
pf.vim
10.13 KB
Del
OK
pfmain.vim
90.56 KB
Del
OK
php.vim
95.59 KB
Del
OK
phtml.vim
151 B
Del
OK
pic.vim
3.25 KB
Del
OK
pike.vim
21.3 KB
Del
OK
pilrc.vim
5.19 KB
Del
OK
pine.vim
15.05 KB
Del
OK
pinfo.vim
5.17 KB
Del
OK
plaintex.vim
10.06 KB
Del
OK
pli.vim
12.91 KB
Del
OK
plm.vim
5.24 KB
Del
OK
plp.vim
1.24 KB
Del
OK
plsql.vim
12.62 KB
Del
OK
po.vim
6.24 KB
Del
OK
pod.vim
7.11 KB
Del
OK
poke.vim
5.07 KB
Del
OK
postscr.vim
45.05 KB
Del
OK
pov.vim
8.84 KB
Del
OK
povini.vim
3.41 KB
Del
OK
ppd.vim
868 B
Del
OK
ppwiz.vim
2.71 KB
Del
OK
prescribe.vim
2.33 KB
Del
OK
privoxy.vim
3.5 KB
Del
OK
procmail.vim
1.97 KB
Del
OK
progress.vim
31 KB
Del
OK
prolog.vim
4.39 KB
Del
OK
promela.vim
1.69 KB
Del
OK
proto.vim
3.46 KB
Del
OK
protocols.vim
1.4 KB
Del
OK
psf.vim
4.19 KB
Del
OK
ptcap.vim
4.03 KB
Del
OK
purifylog.vim
3.28 KB
Del
OK
pyrex.vim
1.62 KB
Del
OK
python.vim
12.78 KB
Del
OK
qf.vim
596 B
Del
OK
quake.vim
8.35 KB
Del
OK
r.vim
14.38 KB
Del
OK
racc.vim
5.49 KB
Del
OK
radiance.vim
6.99 KB
Del
OK
raml.vim
4.35 KB
Del
OK
ratpoison.vim
16.82 KB
Del
OK
rc.vim
9.98 KB
Del
OK
rcs.vim
2.08 KB
Del
OK
rcslog.vim
557 B
Del
OK
readline.vim
17.08 KB
Del
OK
rebol.vim
7 KB
Del
OK
redif.vim
85.88 KB
Del
OK
registry.vim
3.28 KB
Del
OK
rego.vim
3.74 KB
Del
OK
remind.vim
2.65 KB
Del
OK
resolv.vim
6.21 KB
Del
OK
reva.vim
7.41 KB
Del
OK
rexx.vim
14.97 KB
Del
OK
rhelp.vim
11.85 KB
Del
OK
rib.vim
2.14 KB
Del
OK
rmd.vim
5.26 KB
Del
OK
rnc.vim
2.21 KB
Del
OK
rng.vim
817 B
Del
OK
rnoweb.vim
1.86 KB
Del
OK
robots.vim
1.49 KB
Del
OK
rpcgen.vim
1.63 KB
Del
OK
rpl.vim
25.1 KB
Del
OK
rrst.vim
1.28 KB
Del
OK
rst.vim
11.5 KB
Del
OK
rtf.vim
2.28 KB
Del
OK
ruby.vim
40.15 KB
Del
OK
rust.vim
16.22 KB
Del
OK
samba.vim
5.99 KB
Del
OK
sas.vim
33.29 KB
Del
OK
sass.vim
6.12 KB
Del
OK
sather.vim
3.41 KB
Del
OK
sbt.vim
880 B
Del
OK
scala.vim
11.04 KB
Del
OK
scheme.vim
18.88 KB
Del
OK
scilab.vim
3.13 KB
Del
OK
screen.vim
8.89 KB
Del
OK
scss.vim
526 B
Del
OK
sd.vim
2.17 KB
Del
OK
sdc.vim
1.36 KB
Del
OK
sdl.vim
6.41 KB
Del
OK
sed.vim
4.92 KB
Del
OK
sendpr.vim
905 B
Del
OK
sensors.vim
1.48 KB
Del
OK
services.vim
1.78 KB
Del
OK
setserial.vim
5.11 KB
Del
OK
sexplib.vim
3.6 KB
Del
OK
sgml.vim
8.66 KB
Del
OK
sgmldecl.vim
1.99 KB
Del
OK
sgmllnx.vim
1.81 KB
Del
OK
sh.vim
43.22 KB
Del
OK
sicad.vim
18.04 KB
Del
OK
sieve.vim
1.63 KB
Del
OK
sil.vim
8.34 KB
Del
OK
simula.vim
3.29 KB
Del
OK
sinda.vim
3.58 KB
Del
OK
sindacmp.vim
1.24 KB
Del
OK
sindaout.vim
1.92 KB
Del
OK
sisu.vim
21.66 KB
Del
OK
skill.vim
25.17 KB
Del
OK
sl.vim
3.99 KB
Del
OK
slang.vim
3.22 KB
Del
OK
slice.vim
2.86 KB
Del
OK
slpconf.vim
11.51 KB
Del
OK
slpreg.vim
5.22 KB
Del
OK
slpspi.vim
1.15 KB
Del
OK
slrnrc.vim
12.51 KB
Del
OK
slrnsc.vim
3.03 KB
Del
OK
sm.vim
2.78 KB
Del
OK
smarty.vim
2.82 KB
Del
OK
smcl.vim
11.76 KB
Del
OK
smil.vim
5.48 KB
Del
OK
smith.vim
793 B
Del
OK
sml.vim
9.29 KB
Del
OK
snnsnet.vim
2.42 KB
Del
OK
snnspat.vim
2.18 KB
Del
OK
snnsres.vim
1.89 KB
Del
OK
snobol4.vim
5.21 KB
Del
OK
spec.vim
12.46 KB
Del
OK
specman.vim
7.17 KB
Del
OK
spice.vim
2.19 KB
Del
OK
splint.vim
15.42 KB
Del
OK
spup.vim
13.6 KB
Del
OK
spyce.vim
4.35 KB
Del
OK
sql.vim
1.09 KB
Del
OK
sqlanywhere.vim
40.95 KB
Del
OK
sqlforms.vim
6.58 KB
Del
OK
sqlhana.vim
10.77 KB
Del
OK
sqlinformix.vim
5.76 KB
Del
OK
sqlj.vim
2.9 KB
Del
OK
sqloracle.vim
7.47 KB
Del
OK
sqr.vim
12.71 KB
Del
OK
squid.vim
6.77 KB
Del
OK
srec.vim
3.73 KB
Del
OK
sshconfig.vim
11.17 KB
Del
OK
sshdconfig.vim
12.62 KB
Del
OK
st.vim
2.69 KB
Del
OK
stata.vim
26.42 KB
Del
OK
stp.vim
5.3 KB
Del
OK
strace.vim
1.92 KB
Del
OK
sudoers.vim
23.88 KB
Del
OK
svg.vim
436 B
Del
OK
svn.vim
1.81 KB
Del
OK
swift.vim
8.62 KB
Del
OK
swiftgyb.vim
822 B
Del
OK
syncolor.vim
4.04 KB
Del
OK
synload.vim
1.99 KB
Del
OK
syntax.vim
1.2 KB
Del
OK
sysctl.vim
1.13 KB
Del
OK
systemd.vim
184 B
Del
OK
systemverilog.vim
3.46 KB
Del
OK
tads.vim
6.7 KB
Del
OK
tags.vim
1.13 KB
Del
OK
tak.vim
2.85 KB
Del
OK
takcmp.vim
1.56 KB
Del
OK
takout.vim
1.95 KB
Del
OK
tap.vim
4.26 KB
Del
OK
tar.vim
373 B
Del
OK
taskdata.vim
1.18 KB
Del
OK
taskedit.vim
1.1 KB
Del
OK
tasm.vim
5.56 KB
Del
OK
tcl.vim
16.88 KB
Del
OK
tcsh.vim
12.96 KB
Del
OK
template.vim
449 B
Del
OK
teraterm.vim
4.86 KB
Del
OK
terminfo.vim
4.69 KB
Del
OK
tex.vim
63.52 KB
Del
OK
texinfo.vim
24.97 KB
Del
OK
texmf.vim
2.23 KB
Del
OK
tf.vim
6.74 KB
Del
OK
tidy.vim
13.24 KB
Del
OK
tilde.vim
1.5 KB
Del
OK
tli.vim
1.62 KB
Del
OK
tmux.vim
5.81 KB
Del
OK
tpp.vim
3.33 KB
Del
OK
trasys.vim
4.92 KB
Del
OK
treetop.vim
3.58 KB
Del
OK
trustees.vim
1.51 KB
Del
OK
tsalt.vim
8.13 KB
Del
OK
tsscl.vim
5 KB
Del
OK
tssgm.vim
2.72 KB
Del
OK
tssop.vim
1.74 KB
Del
OK
tt2.vim
7.74 KB
Del
OK
tt2html.vim
516 B
Del
OK
tt2js.vim
522 B
Del
OK
typescript.vim
1.39 KB
Del
OK
typescriptcommon.vim
131.23 KB
Del
OK
typescriptreact.vim
3.83 KB
Del
OK
uc.vim
6.48 KB
Del
OK
udevconf.vim
1.2 KB
Del
OK
udevperm.vim
2.35 KB
Del
OK
udevrules.vim
6.8 KB
Del
OK
uil.vim
2.75 KB
Del
OK
updatedb.vim
1.19 KB
Del
OK
upstart.vim
3.08 KB
Del
OK
upstreamdat.vim
13.72 KB
Del
OK
upstreaminstalllog.vim
971 B
Del
OK
upstreamlog.vim
2.56 KB
Del
OK
upstreamrpt.vim
13.86 KB
Del
OK
usserverlog.vim
3.04 KB
Del
OK
usw2kagtlog.vim
2.64 KB
Del
OK
valgrind.vim
3.14 KB
Del
OK
vb.vim
19.82 KB
Del
OK
vera.vim
19.09 KB
Del
OK
verilog.vim
4.94 KB
Del
OK
verilogams.vim
5.94 KB
Del
OK
vgrindefs.vim
1.19 KB
Del
OK
vhdl.vim
9.43 KB
Del
OK
vim.vim
73.19 KB
Del
OK
viminfo.vim
1.21 KB
Del
OK
virata.vim
11.34 KB
Del
OK
vmasm.vim
8.31 KB
Del
OK
voscm.vim
6.81 KB
Del
OK
vrml.vim
12.49 KB
Del
OK
vroom.vim
3.41 KB
Del
OK
vsejcl.vim
1004 B
Del
OK
vue.vim
433 B
Del
OK
wast.vim
3.83 KB
Del
OK
wdiff.vim
716 B
Del
OK
web.vim
1.09 KB
Del
OK
webmacro.vim
3.06 KB
Del
OK
wget.vim
3.87 KB
Del
OK
whitespace.vim
357 B
Del
OK
winbatch.vim
11.87 KB
Del
OK
wml.vim
5.6 KB
Del
OK
wsh.vim
1.21 KB
Del
OK
wsml.vim
5.27 KB
Del
OK
wvdial.vim
1.07 KB
Del
OK
xbl.vim
568 B
Del
OK
xdefaults.vim
5.75 KB
Del
OK
xf86conf.vim
14.38 KB
Del
OK
xhtml.vim
186 B
Del
OK
xinetd.vim
13.88 KB
Del
OK
xkb.vim
3.24 KB
Del
OK
xmath.vim
10.58 KB
Del
OK
xml.vim
8.92 KB
Del
OK
xmodmap.vim
45.42 KB
Del
OK
xpm.vim
4.3 KB
Del
OK
xpm2.vim
4.59 KB
Del
OK
xquery.vim
7.02 KB
Del
OK
xs.vim
240.96 KB
Del
OK
xsd.vim
2.08 KB
Del
OK
xslt.vim
2.59 KB
Del
OK
xxd.vim
767 B
Del
OK
yacc.vim
5.52 KB
Del
OK
yaml.vim
12.57 KB
Del
OK
z8a.vim
2.83 KB
Del
OK
zimbu.vim
6.29 KB
Del
OK
zsh.vim
24.58 KB
Del
OK
Edit: tex.vim
" Vim syntax file " Language: TeX " Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Last Change: Jun 29, 2020 " Version: 119 " 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 " " 6. Please see :help latex-syntax for information on " syntax folding :help tex-folding " spell checking :help tex-nospell " commands and mathzones :help tex-runon " new command highlighting :help tex-morecommands " error highlighting :help tex-error " new math groups :help tex-math " new styles :help tex-style " using conceal mode :help tex-conceal " Version Clears: {{{1 " quit when a syntax file was already loaded if exists("b:current_syntax") finish endif let s:keepcpo= &cpo set cpo&vim scriptencoding utf-8 " 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 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 if !exists("g:tex_superscripts") let s:tex_superscripts= '[0-9a-zA-W.,:;+-<>/()=]' else let s:tex_superscripts= g:tex_superscripts endif if !exists("g:tex_subscripts") let s:tex_subscripts= '[0-9aehijklmnoprstuvx,+-/().]' else let s:tex_subscripts= g:tex_subscripts 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 s:tex_fold_enabled= 0 elseif g:tex_fold_enabled && !has("folding") let s:tex_fold_enabled= 0 echomsg "Ignoring g:tex_fold_enabled=".g:tex_fold_enabled."; need to re-compile vim for +fold support" else let s:tex_fold_enabled= 1 endif if s:tex_fold_enabled && &fdm == "manual" setl fdm=syntax endif if s:tex_fold_enabled && has("folding") com! -nargs=* TexFold <args> fold else com! -nargs=* TexFold <args> 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") if b:tex_stylish && g:tex_isk !~ '@' let b:tex_isk= '@,'.g:tex_isk else let b:tex_isk= g:tex_isk endif elseif b:tex_stylish let b:tex_isk="@,48-57,a-z,A-Z,192-255" else let b:tex_isk="48-57,a-z,A-Z,192-255" endif if (v:version == 704 && has("patch-7.4.1142")) || v:version > 704 exe "syn iskeyword ".b:tex_isk else exe "setl isk=".b:tex_isk endif if exists("g:tex_no_error") && g:tex_no_error let s:tex_no_error= 1 else let s:tex_no_error= 0 endif if exists("g:tex_comment_nospell") && g:tex_comment_nospell let s:tex_comment_nospell= 1 else let s:tex_comment_nospell= 0 endif if exists("g:tex_nospell") && g:tex_nospell let s:tex_nospell = 1 else let s:tex_nospell = 0 endif if exists("g:tex_matchcheck") let s:tex_matchcheck= g:tex_matchcheck else let s:tex_matchcheck= '[({[]' endif if exists("g:tex_excludematcher") let s:tex_excludematcher= g:tex_excludematcher else let s:tex_excludematcher= 0 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,@texMathZones if !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,texEmphStyle,texNoSpell syn cluster texBoldGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texInputFile,texLength,texLigature,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,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,texEmphStyle,texItalBoldStyle,texNoSpell if !s:tex_excludematcher syn cluster texBoldGroup add=texMatcher syn cluster texItalGroup add=texMatcher endif if !s: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,texBoldStyle,texBoldItalStyle,texItalStyle,texItalBoldStyle,texZone,texInputFile,texOption,@Spell syn cluster texMatchNMGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcherNM,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTypeSize,texTypeStyle,texBoldStyle,texBoldItalStyle,texItalStyle,texItalBoldStyle,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,texBoldStyle,texBoldItalStyle,texItalStyle,texItalBoldStyle,texZone,texInputFile,texOption,texStyleStatement,texStyleMatcher,@Spell 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 texMatchNMGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcherNM,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,texMatcherNM,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTitle,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,texMathZoneZ syn cluster texRefGroup contains=texMatcher,texComment,texDelimiter if !exists("g:tex_no_math") syn cluster texPreambleMatchGroup contains=texAccent,texBadMath,texComment,texDefCmd,texDelimiter,texDocType,texInput,texLength,texLigature,texMatcherNM,texNewCmd,texNewEnv,texOnlyMath,texParen,texRefZone,texSection,texSpecialChar,texStatement,texString,texTitle,texTypeSize,texTypeStyle,texZone,texInputFile,texOption,texMathZoneZ 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 !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 !s:tex_no_error if s:tex_matchcheck =~ '{' syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" transparent contains=@texMatchGroup,texError syn region texMatcherNM matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" transparent contains=@texMatchNMGroup,texError endif if s:tex_matchcheck =~ '\[' syn region texMatcher matchgroup=Delimiter start="\[" end="]" transparent contains=@texMatchGroup,texError,@NoSpell syn region texMatcherNM matchgroup=Delimiter start="\[" end="]" transparent contains=@texMatchNMGroup,texError,@NoSpell endif else if s:tex_matchcheck =~ '{' syn region texMatcher matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" transparent contains=@texMatchGroup syn region texMatcherNM matchgroup=Delimiter start="{" skip="\\\\\|\\[{}]" end="}" transparent contains=@texMatchNMGroup endif if s:tex_matchcheck =~ '\[' syn region texMatcher matchgroup=Delimiter start="\[" end="]" transparent contains=@texMatchGroup syn region texMatcherNM matchgroup=Delimiter start="\[" end="]" transparent contains=@texMatchNMGroup endif endif if s:tex_matchcheck =~ '(' if !s:tex_nospell syn region texParen start="(" end=")" transparent contains=@texMatchGroup,@Spell else syn region texParen start="(" end=")" transparent contains=@texMatchGroup endif endif endif if !s:tex_no_error if s:tex_matchcheck =~ '(' syn match texError "[}\]]" else syn match texError "[}\])]" endif endif if s:tex_fast =~# 'M' if !exists("g:tex_no_math") if !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 !s:tex_no_error syn match texError "\\\a*@[a-zA-Z@]*" endif endif " TeX/LaTeX delimiters: {{{1 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,@texMathZones,@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 s: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\>" syn match texTypeStyle "\\emph\>" endif syn match texTypeStyle "\\textmd\>" syn match texTypeStyle "\\textrm\>" 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 !s:tex_nospell TexFold syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup,@Spell TexFold syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup,@Spell TexFold syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup,@Spell TexFold syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup,@Spell TexFold syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup,@Spell TexFold syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup,@Spell TexFold syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup,@Spell TexFold syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@Spell TexFold syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup,@Spell TexFold syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup,@Spell else TexFold syn region texDocZone matchgroup=texSection start='\\begin\s*{\s*document\s*}' end='\\end\s*{\s*document\s*}' contains=@texFoldGroup,@texDocGroup TexFold syn region texPartZone matchgroup=texSection start='\\part\>' end='\ze\s*\\\%(part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texPartGroup TexFold syn region texChapterZone matchgroup=texSection start='\\chapter\>' end='\ze\s*\\\%(chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texChapterGroup TexFold syn region texSectionZone matchgroup=texSection start='\\section\>' end='\ze\s*\\\%(section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSectionGroup TexFold syn region texSubSectionZone matchgroup=texSection start='\\subsection\>' end='\ze\s*\\\%(\%(sub\)\=section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSectionGroup TexFold syn region texSubSubSectionZone matchgroup=texSection start='\\subsubsection\>' end='\ze\s*\\\%(\%(sub\)\{,2}section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texSubSubSectionGroup TexFold syn region texParaZone matchgroup=texSection start='\\paragraph\>' end='\ze\s*\\\%(paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup,@texParaGroup TexFold syn region texSubParaZone matchgroup=texSection start='\\subparagraph\>' end='\ze\s*\\\%(\%(sub\)\=paragraph\>\|\%(sub\)*section\>\|chapter\>\|part\>\|end\s*{\s*document\s*}\)' contains=@texFoldGroup TexFold syn region texTitle matchgroup=texSection start='\\\%(author\|title\)\>\s*{' end='}' contains=@texFoldGroup TexFold syn region texAbstract matchgroup=texSection start='\\begin\s*{\s*abstract\s*}' end='\\end\s*{\s*abstract\s*}' contains=@texFoldGroup endif endif " particular support for bold and italic {{{1 if s:tex_fast =~# 'b' if s:tex_conceal =~# 'b' if !exists("g:tex_nospell") || !g:tex_nospell syn region texBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell syn region texBoldItalStyle matchgroup=texTypeStyle start="\\textit\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup,@Spell syn region texItalStyle matchgroup=texTypeStyle start="\\textit\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup,@Spell syn region texItalBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell syn region texEmphStyle matchgroup=texTypeStyle start="\\emph\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup,@Spell syn region texEmphStyle matchgroup=texTypeStyle start="\\texts[cfl]\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell syn region texEmphStyle matchgroup=texTypeStyle start="\\textup\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell syn region texEmphStyle matchgroup=texTypeStyle start="\\texttt\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup,@Spell else syn region texBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup syn region texBoldItalStyle matchgroup=texTypeStyle start="\\textit\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup syn region texItalStyle matchgroup=texTypeStyle start="\\textit\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup syn region texItalBoldStyle matchgroup=texTypeStyle start="\\textbf\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texBoldGroup syn region texEmphStyle matchgroup=texTypeStyle start="\\emph\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texItalGroup syn region texEmphStyle matchgroup=texTypeStyle start="\\texts[cfl]\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texEmphGroup syn region texEmphStyle matchgroup=texTypeStyle start="\\textup\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texEmphGroup syn region texEmphStyle matchgroup=texTypeStyle start="\\texttt\s*{" matchgroup=texTypeStyle end="}" concealends contains=@texEmphGroup endif endif endif " Bad Math (mismatched): {{{1 if !exists("g:tex_no_math") && !s:tex_no_error syn match texBadMath "\\end\s*{\s*\(array\|[bBpvV]matrix\|split\|smallmatrix\)\s*}" syn match texBadMath "\\end\s*{\s*\(displaymath\|equation\|eqnarray\|math\)\*\=\s*}" syn match texBadMath "\\[\])]" endif " Math Zones: {{{1 if !exists("g: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 highlighting. fun! TexNewMathZone(sfx,mathzone,starform) let grpname = "texMathZone".a:sfx let syncname = "texSyncMathZone".a:sfx if s: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","displaymath",1) call TexNewMathZone("B","eqnarray",1) call TexNewMathZone("C","equation",1) call TexNewMathZone("D","math",1) " 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\>" keepend concealends 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\[" 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' , '⇓'] , \ ['\\lbrace' , '['] , \ ['\\lceil' , '⌈'] , \ ['\\lfloor' , '⌊'] , \ ['\\lgroup' , '⌊'] , \ ['\\lmoustache' , '⎛'] , \ ['\\rbrace' , ']'] , \ ['\\rceil' , '⌉'] , \ ['\\rfloor' , '⌋'] , \ ['\\rgroup' , '⌋'] , \ ['\\rmoustache' , '⎞'] , \ ['\\uparrow' , '↑'] , \ ['\\Uparrow' , '↑'] , \ ['\\updownarrow', '↕'] , \ ['\\Updownarrow', '⇕']] if &ambw == "double" || exists("g:tex_usedblwidth") let s:texMathDelimList= s:texMathDelimList + [ \ ['\\langle' , '〈'] , \ ['\\rangle' , '〉']] else let s:texMathDelimList= s:texMathDelimList + [ \ ['\\langle' , '<'] , \ ['\\rangle' , '>']] endif 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("g: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 !s: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 s: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' TexFold syn region texComment start="^\zs\s*%.*\_s*%" skip="^\s*%" end='^\ze\s*[^%]' contains=@texCommentGroup TexFold syn region texNoSpell contained 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 " %begin-include ... %end-include acts like a texDocZone for \include'd files. Permits spell checking, for example, in such files. if !s:tex_nospell TexFold syn region texDocZone matchgroup=texSection start='^\s*%begin-include\>' end='^\s*%end-include\>' contains=@texFoldGroup,@texDocGroup,@Spell else TexFold syn region texDocZone matchgroup=texSection start='^\s*%begin-include\>' end='^\s*%end-include\>' contains=@texFoldGroup,@texDocGroup 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: 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 else syn region texZone start="\\begin{[vV]erbatim}" end="\\end{[vV]erbatim}\|%stopzone\>" 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 " 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 !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' , '≍'], \ ['backslash' , '∖'], \ ['bigcap' , '∩'], \ ['bigcirc' , '○'], \ ['bigcup' , '∪'], \ ['bigodot' , '⊙'], \ ['bigoplus' , '⊕'], \ ['bigotimes' , '⊗'], \ ['bigsqcup' , '⊔'], \ ['bigtriangledown', '∇'], \ ['bigtriangleup' , '∆'], \ ['bigvee' , '⋁'], \ ['bigwedge' , '⋀'], \ ['bot' , '⊥'], \ ['bowtie' , '⋈'], \ ['bullet' , '•'], \ ['cap' , '∩'], \ ['cdot' , '·'], \ ['cdots' , '⋯'], \ ['circ' , '∘'], \ ['clubsuit' , '♣'], \ ['cong' , '≅'], \ ['coprod' , '∐'], \ ['copyright' , '©'], \ ['cup' , '∪'], \ ['dagger' , '†'], \ ['dashv' , '⊣'], \ ['ddagger' , '‡'], \ ['ddots' , '⋱'], \ ['diamond' , '⋄'], \ ['diamondsuit' , '♢'], \ ['div' , '÷'], \ ['doteq' , '≐'], \ ['dots' , '…'], \ ['downarrow' , '↓'], \ ['Downarrow' , '⇓'], \ ['ell' , 'ℓ'], \ ['emptyset' , '∅'], \ ['equiv' , '≡'], \ ['exists' , '∃'], \ ['flat' , '♭'], \ ['forall' , '∀'], \ ['frown' , '⁔'], \ ['ge' , '≥'], \ ['geq' , '≥'], \ ['gets' , '←'], \ ['gg' , '⟫'], \ ['hbar' , 'ℏ'], \ ['heartsuit' , '♡'], \ ['hookleftarrow' , '↩'], \ ['hookrightarrow' , '↪'], \ ['iff' , '⇔'], \ ['Im' , 'ℑ'], \ ['imath' , 'ɩ'], \ ['in' , '∈'], \ ['infty' , '∞'], \ ['int' , '∫'], \ ['jmath' , '𝚥'], \ ['land' , '∧'], \ ['lceil' , '⌈'], \ ['ldots' , '…'], \ ['le' , '≤'], \ ['left|' , '|'], \ ['left\\|' , '‖'], \ ['left(' , '('], \ ['left\[' , '['], \ ['left\\{' , '{'], \ ['leftarrow' , '←'], \ ['Leftarrow' , '⇐'], \ ['leftharpoondown', '↽'], \ ['leftharpoonup' , '↼'], \ ['leftrightarrow' , '↔'], \ ['Leftrightarrow' , '⇔'], \ ['leq' , '≤'], \ ['leq' , '≤'], \ ['lfloor' , '⌊'], \ ['ll' , '≪'], \ ['lmoustache' , '╭'], \ ['lor' , '∨'], \ ['mapsto' , '↦'], \ ['mid' , '∣'], \ ['models' , '╞'], \ ['mp' , '∓'], \ ['nabla' , '∇'], \ ['natural' , '♮'], \ ['ne' , '≠'], \ ['nearrow' , '↗'], \ ['neg' , '¬'], \ ['neq' , '≠'], \ ['ni' , '∋'], \ ['notin' , '∉'], \ ['nwarrow' , '↖'], \ ['odot' , '⊙'], \ ['oint' , '∮'], \ ['ominus' , '⊖'], \ ['oplus' , '⊕'], \ ['oslash' , '⊘'], \ ['otimes' , '⊗'], \ ['owns' , '∋'], \ ['P' , '¶'], \ ['parallel' , '║'], \ ['partial' , '∂'], \ ['perp' , '⊥'], \ ['pm' , '±'], \ ['prec' , '≺'], \ ['preceq' , '⪯'], \ ['prime' , '′'], \ ['prod' , '∏'], \ ['propto' , '∝'], \ ['rceil' , '⌉'], \ ['Re' , 'ℜ'], \ ['quad' , ' '], \ ['qquad' , ' '], \ ['rfloor' , '⌋'], \ ['right|' , '|'], \ ['right\\|' , '‖'], \ ['right)' , ')'], \ ['right]' , ']'], \ ['right\\}' , '}'], \ ['rightarrow' , '→'], \ ['Rightarrow' , '⇒'], \ ['rightleftharpoons', '⇌'], \ ['rmoustache' , '╮'], \ ['S' , '§'], \ ['searrow' , '↘'], \ ['setminus' , '∖'], \ ['sharp' , '♯'], \ ['sim' , '∼'], \ ['simeq' , '⋍'], \ ['smile' , '‿'], \ ['spadesuit' , '♠'], \ ['sqcap' , '⊓'], \ ['sqcup' , '⊔'], \ ['sqsubset' , '⊏'], \ ['sqsubseteq' , '⊑'], \ ['sqsupset' , '⊐'], \ ['sqsupseteq' , '⊒'], \ ['star' , '✫'], \ ['subset' , '⊂'], \ ['subseteq' , '⊆'], \ ['succ' , '≻'], \ ['succeq' , '⪰'], \ ['sum' , '∑'], \ ['supset' , '⊃'], \ ['supseteq' , '⊇'], \ ['surd' , '√'], \ ['swarrow' , '↙'], \ ['times' , '×'], \ ['to' , '→'], \ ['top' , '⊤'], \ ['triangle' , '∆'], \ ['triangleleft' , '⊲'], \ ['triangleright' , '⊳'], \ ['uparrow' , '↑'], \ ['Uparrow' , '⇑'], \ ['updownarrow' , '↕'], \ ['Updownarrow' , '⇕'], \ ['vdash' , '⊢'], \ ['vdots' , '⋮'], \ ['vee' , '∨'], \ ['wedge' , '∧'], \ ['wp' , '℘'], \ ['wr' , '≀']] if &ambw == "double" || exists("g:tex_usedblwidth") let s:texMathList= s:texMathList + [ \ ['right\\rangle' , '〉'], \ ['left\\langle' , '〈']] else let s:texMathList= s:texMathList + [ \ ['right\\rangle' , '>'], \ ['left\\langle' , '<']] endif 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=Ŷ " syn match texMathSymbol '\\bar{a}' contained conceal cchar=a̅ syn match texMathSymbol '\\dot{B}' contained conceal cchar=Ḃ syn match texMathSymbol '\\dot{b}' contained conceal cchar=ḃ syn match texMathSymbol '\\dot{D}' contained conceal cchar=Ḋ syn match texMathSymbol '\\dot{d}' contained conceal cchar=ḋ syn match texMathSymbol '\\dot{F}' contained conceal cchar=Ḟ syn match texMathSymbol '\\dot{f}' contained conceal cchar=ḟ syn match texMathSymbol '\\dot{H}' contained conceal cchar=Ḣ syn match texMathSymbol '\\dot{h}' contained conceal cchar=ḣ syn match texMathSymbol '\\dot{M}' contained conceal cchar=Ṁ syn match texMathSymbol '\\dot{m}' contained conceal cchar=ṁ syn match texMathSymbol '\\dot{N}' contained conceal cchar=Ṅ syn match texMathSymbol '\\dot{n}' contained conceal cchar=ṅ syn match texMathSymbol '\\dot{P}' contained conceal cchar=Ṗ syn match texMathSymbol '\\dot{p}' contained conceal cchar=ṗ syn match texMathSymbol '\\dot{R}' contained conceal cchar=Ṙ syn match texMathSymbol '\\dot{r}' contained conceal cchar=ṙ syn match texMathSymbol '\\dot{S}' contained conceal cchar=Ṡ syn match texMathSymbol '\\dot{s}' contained conceal cchar=ṡ syn match texMathSymbol '\\dot{T}' contained conceal cchar=Ṫ syn match texMathSymbol '\\dot{t}' contained conceal cchar=ṫ syn match texMathSymbol '\\dot{W}' contained conceal cchar=Ẇ syn match texMathSymbol '\\dot{w}' contained conceal cchar=ẇ syn match texMathSymbol '\\dot{X}' contained conceal cchar=Ẋ syn match texMathSymbol '\\dot{x}' contained conceal cchar=ẋ syn match texMathSymbol '\\dot{Y}' contained conceal cchar=Ẏ syn match texMathSymbol '\\dot{y}' contained conceal cchar=ẏ syn match texMathSymbol '\\dot{Z}' contained conceal cchar=Ż syn match texMathSymbol '\\dot{z}' contained conceal cchar=ż syn match texMathSymbol '\\dot{C}' contained conceal cchar=Ċ syn match texMathSymbol '\\dot{c}' contained conceal cchar=ċ syn match texMathSymbol '\\dot{E}' contained conceal cchar=Ė syn match texMathSymbol '\\dot{e}' contained conceal cchar=ė syn match texMathSymbol '\\dot{G}' contained conceal cchar=Ġ syn match texMathSymbol '\\dot{g}' contained conceal cchar=ġ syn match texMathSymbol '\\dot{I}' contained conceal cchar=İ syn match texMathSymbol '\\dot{A}' contained conceal cchar=Ȧ syn match texMathSymbol '\\dot{a}' contained conceal cchar=ȧ syn match texMathSymbol '\\dot{O}' contained conceal cchar=Ȯ syn match texMathSymbol '\\dot{o}' 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','\\iota\>' ,'ι') 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','\\Chi\>' ,'Χ') 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 " s:SuperSub: fun! s:SuperSub(group,leader,pat,cchar) if a:pat =~# '^\\' || (a:leader == '\^' && a:pat =~# s:tex_superscripts) || (a:leader == '_' && a:pat =~# s:tex_subscripts) " call Decho("SuperSub: group<".a:group."> leader<".a:leader."> pat<".a:pat."> cchar<".a: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' endif 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','\^','V','ⱽ') 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','_','h','ₕ') call s:SuperSub('texSubscript','_','i','ᵢ') call s:SuperSub('texSubscript','_','j','ⱼ') call s:SuperSub('texSubscript','_','k','ₖ') call s:SuperSub('texSubscript','_','l','ₗ') call s:SuperSub('texSubscript','_','m','ₘ') call s:SuperSub('texSubscript','_','n','ₙ') call s:SuperSub('texSubscript','_','o','ₒ') call s:SuperSub('texSubscript','_','p','ₚ') call s:SuperSub('texSubscript','_','r','ᵣ') call s:SuperSub('texSubscript','_','s','ₛ') call s:SuperSub('texSubscript','_','t','ₜ') call s:SuperSub('texSubscript','_','u','ᵤ') call s:SuperSub('texSubscript','_','v','ᵥ') call s:SuperSub('texSubscript','_','x','ₓ') 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 and Ligatures: {{{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 syn match texLigature '--' syn match texLigature '---' 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=ß syn match texLigature '--' conceal cchar=– syn match texLigature '---' 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("g: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 " Define the default highlighting. {{{1 if !exists("skip_tex_syntax_inits") " TeX highlighting groups which should share similar highlighting if !exists("g:tex_no_error") if !exists("g:tex_no_math") hi def link texBadMath texError hi def link texMathDelimBad texError hi def link texMathError texError if !b:tex_stylish hi def link texOnlyMath texError endif endif hi def link 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 hi def link texEmphStyle texItalStyle hi def link texCite texRefZone hi def link texDefCmd texDef hi def link texDefName texDef hi def link texDocType texCmdName hi def link texDocTypeArgs texCmdArgs hi def link texInputFileOpt texCmdArgs hi def link texInputCurlies texDelimiter hi def link texLigature texSpecialChar if !exists("g:tex_no_math") hi def link texMathDelimSet1 texMathDelim hi def link texMathDelimSet2 texMathDelim hi def link texMathDelimKey texMathDelim hi def link texMathMatcher texMath hi def link texAccent texStatement hi def link texGreek texStatement hi def link texSuperscript texStatement hi def link texSubscript texStatement hi def link texSuperscripts texSuperscript hi def link texSubscripts texSubscript hi def link texMathSymbol texStatement hi def link texMathZoneV texMath hi def link texMathZoneW texMath hi def link texMathZoneX texMath hi def link texMathZoneY texMath hi def link texMathZoneV texMath hi def link texMathZoneZ texMath endif hi def link texBeginEnd texCmdName hi def link texBeginEndName texSection hi def link texSpaceCode texStatement hi def link texStyleStatement texStatement hi def link texTypeSize texType hi def link texTypeStyle texType " Basic TeX highlighting groups hi def link texCmdArgs Number hi def link texCmdName Statement hi def link texComment Comment hi def link texDef Statement hi def link texDefParm Special hi def link texDelimiter Delimiter hi def link texInput Special hi def link texInputFile Special hi def link texLength Number hi def link texMath Special hi def link texMathDelim Statement hi def link texMathOper Operator hi def link texNewCmd Statement hi def link texNewEnv Statement hi def link texOption Number hi def link texRefZone Special hi def link texSection PreCondit hi def link texSpaceCodeChar Special hi def link texSpecialChar SpecialChar hi def link texStatement Statement hi def link texString String hi def link texTodo Todo hi def link texType Type hi def link texZone PreCondit endif " Cleanup: {{{1 delc TexFold unlet s:extfname let b:current_syntax = "tex" let &cpo = s:keepcpo unlet s:keepcpo " vim: ts=8 fdm=marker
Save