;; Math [ (displayed_equation) (inline_formula) ] @text.math ;; This highlights the whole environment like vimtex does ((environment (begin name: (word) @_env)) @text.math (#match? @_env "^(displaymath|equation|multline|eqnarray|align|array|split)[*]?$")) ;; This at the begining of the file would be the alternative to highlight ;; only the interior of the environment ;((environment ;(begin ;name: (word) @_env) @none ;(end) @none) @text.math ;(#match? @_env "^(displaymath|eqn|eqnarray)[*]?$")) [ (generic_command_name) "\\newcommand" "\\renewcommand" "\\DeclareRobustCommand" "\\DeclareMathOperator" "\\newglossaryentry" "\\caption" "\\cite" "\\label" "\\newlabel" "\\label" "\\ref" "\\cref" "\\eqref" "\\color" "\\colorbox" "\\textcolor" "\\pagecolor" "\\definecolor" "\\definecolorset" "\\newtheorem" "\\declaretheorem" "\\newacronym" "\\newglossaryentry" ] @function.macro (comment) @comment (bracket_group) @parameter [(math_operator) "="] @operator [ "\\usepackage" "\\documentclass" "\\input" "\\include" "\\subfile" "\\subfileinclude" "\\subfileinclude" "\\includegraphics" "\\addbibresource" "\\bibliography" "\\includesvg" "\\includeinkscape" "\\usepgflibrary" "\\usetikzlibrary" ] @include [ "\\part" "\\chapter" "\\section" "\\subsection" "\\subsubsection" "\\paragraph" "\\subparagraph" ] @type "\\item" @punctuation.special ((word) @punctuation.delimiter (#eq? @punctuation.delimiter "&")) ["$" "\\[" "\\]" "\\(" "\\)"] @punctuation.delimiter (label_definition name: (_) @text.reference) (label_reference label: (_) @text.reference) (equation_label_reference label: (_) @text.reference) (label_reference label: (_) @text.reference) (label_number label: (_) @text.reference) (citation key: (word) @text.reference) (key_val_pair key: (_) @parameter value: (_)) ["[" "]" "{" "}"] @punctuation.bracket ;"(" ")" is has no special meaning in LaTeX (chapter text: (brace_group) @text.title) (part text: (brace_group) @text.title) (section text: (brace_group) @text.title) (subsection text: (brace_group) @text.title) (subsubsection text: (brace_group) @text.title) (paragraph text: (brace_group) @text.title) (subparagraph text: (brace_group) @text.title) ((environment (begin name: (word) @_frame) (brace_group child: (text) @text.title)) (#eq? @_frame "frame")) ((generic_command name:(generic_command_name) @_name arg: (brace_group (text) @text.title)) (#eq? @_name "\\frametitle")) ;; Formatting ((generic_command name:(generic_command_name) @_name arg: (_) @text.emphasis) (#eq? @_name "\\emph")) ((generic_command name:(generic_command_name) @_name arg: (_) @text.emphasis) (#match? @_name "^(\\textit|\\mathit)$")) ((generic_command name:(generic_command_name) @_name arg: (_) @text.strong) (#match? @_name "^(\\textbf|\\mathbf)$")) ((generic_command name:(generic_command_name) @_name . arg: (_) @text.uri) (#match? @_name "^(\\url|\\href)$")) (ERROR) @error [ "\\begin" "\\end" ] @text.environment (begin name: (_) @text.environment.name (#not-match? @text.environment.name "^(displaymath|equation|multline|eqnarray|align|array|split)[*]?$")) (end name: (_) @text.environment.name (#not-match? @text.environment.name "^(displaymath|equation|multline|eqnarray|align|array|split)[*]?$"))