Skip to content

Commit

Permalink
feat(syntax): support \iftrue command
Browse files Browse the repository at this point in the history
Highlight the \else section of \iftrue command as a comment
ref: lervag#1988
  • Loading branch information
julio-b committed Feb 1, 2022
1 parent 15a242e commit 09ba976
Show file tree
Hide file tree
Showing 2 changed files with 57 additions and 0 deletions.
19 changes: 19 additions & 0 deletions autoload/vimtex/syntax/core.vim
Original file line number Diff line number Diff line change
Expand Up @@ -436,6 +436,25 @@ function! vimtex#syntax#core#init() abort " {{{1
syntax region texComment matchgroup=texCmd
\ start="^\s*\\iffalse\>" end="\\\(fi\|else\)\>"
\ contains=texCommentConditionals

syntax cluster texIftrueCluster contains=TOP
syntax cluster texIftrueClusterCommon contains=@texIftrueCluster,texIftrueConditionals

syntax region texIftrue matchgroup=texCmd
\ start="^\s*\\iftrue\>" end="\(\\\(fi\|else\)\>\)\@="
\ transparent contains=@texIftrueClusterCommon
\ nextgroup=texIftrueElseComment

syntax region texIftrueElseComment matchgroup=texCmd
\ start="\(\(\\fi\>\)@=\|\\else\>\)" end="\\fi\>"
\ contained contains=texCommentConditionals

highlight def link texIftrueElseComment texComment

syntax region texIftrueConditionals matchgroup=texCmd
\ start="\\if\w\+" end="\\fi\>"
\ contained contains=@texIftrueClusterCommon

syntax region texCommentConditionals matchgroup=texComment
\ start="\\if\w\+" end="\\fi\>"
\ contained transparent
Expand Down
38 changes: 38 additions & 0 deletions test/test-syntax/test-iftrue.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}

\begin{document}

\iftrue
\section{asd}
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod
tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At
vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd
gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
\ifasd \fi
\ifaa asd \else asd \fi
\fi

\section{qwe}
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod
tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At
vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd
gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

\iftrue
\section{asd}
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod
tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At
vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd
gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
\ifasd \fi
\ifaa asd \else asd \fi
\else
Commented stuff
Another \ifstuff here \fi
\ifaa \else \fi
\ifasd \fi \f \fii
\fi

\end{document}

0 comments on commit 09ba976

Please sign in to comment.