kakoune/rc/extra/latex.kak
Martin Chaine 7384288e07 transform mimetype to a fallback option
The option is now used as a fallback when detection by extension fails. Some
scripts like `base/mail.kak` and `base/html.kak` still rely heavily on it.
2016-12-06 17:48:46 +01:00

35 lines
1.0 KiB
Plaintext

# https://www.latex-project.org/
#
# Detection
# ‾‾‾‾‾‾‾‾‾
hook global BufCreate .*\.tex %{
set buffer filetype latex
}
# Highlighters
# ‾‾‾‾‾‾‾‾‾‾‾‾
addhl -group / regions -default content latex \
comment '(?<!\\)%' '\n' ''
addhl -group /latex/comment fill comment
# Scopes, starting with a backslash
addhl -group /latex/content regex '\\(?!_)\w+\b' 0:keyword
# Options passed to scopes, between brackets
addhl -group /latex/content regex '\\(?!_)\w+\b\[([^]]+)\]' 1:value
# Content between dollar signs/pairs
addhl -group /latex/content regex '(?<!\\)\$\$?([^$]|(?<=\\)\$)+\$\$?' 0:magenta
# Emphasized text
addhl -group /latex/content regex '\\(emph|textit)\{([^}]+)\}' 2:default+i
# Bold text
addhl -group /latex/content regex '\\textbf\{([^}]+)\}' 1:default+b
# Initialization
# ‾‾‾‾‾‾‾‾‾‾‾‾‾‾
hook -group latex-highlight global WinSetOption filetype=latex %{ addhl ref latex }
hook -group latex-highlight global WinSetOption filetype=(?!latex).* %{ rmhl latex }