44 lines
1.3 KiB
Plaintext
44 lines
1.3 KiB
Plaintext
# https://www.latex-project.org/
|
|
#
|
|
|
|
# Detection
|
|
# ‾‾‾‾‾‾‾‾‾
|
|
|
|
hook global BufCreate .*\.tex %{
|
|
set-option buffer filetype latex
|
|
}
|
|
|
|
# Initialization
|
|
# ‾‾‾‾‾‾‾‾‾‾‾‾‾‾
|
|
|
|
hook global WinSetOption filetype=latex %{
|
|
require-module latex
|
|
}
|
|
|
|
hook -group latex-highlight global WinSetOption filetype=latex %{
|
|
add-highlighter window/latex ref latex
|
|
hook -once -always window WinSetOption filetype=.* %{ remove-highlighter window/latex }
|
|
}
|
|
|
|
provide-module latex %(
|
|
|
|
# Highlighters
|
|
# ‾‾‾‾‾‾‾‾‾‾‾‾
|
|
|
|
add-highlighter shared/latex regions
|
|
add-highlighter shared/latex/content default-region group
|
|
add-highlighter shared/latex/comment region '(?<!\\)%' '\n' fill comment
|
|
|
|
# Scopes, starting with a backslash
|
|
add-highlighter shared/latex/content/ regex '\\(?!_)\w+\b' 0:keyword
|
|
# Options passed to scopes, between brackets
|
|
add-highlighter shared/latex/content/ regex '\\(?!_)\w+\b\[([^\]]+)\]' 1:value
|
|
# Content between dollar signs/pairs
|
|
add-highlighter shared/latex/content/ regex '(\$(\\\$|[^$])+\$)|(\$\$(\\\$|[^$])+\$\$)' 0:meta
|
|
# Emphasized text
|
|
add-highlighter shared/latex/content/ regex '\\(emph|textit)\{([^}]+)\}' 2:default+i
|
|
# Bold text
|
|
add-highlighter shared/latex/content/ regex '\\textbf\{([^}]+)\}' 1:default+b
|
|
|
|
)
|