LaTeX Lexer

All questions regarding lexer highlighting schemes are discussed here...
Post Reply
sergiokapone
Posts: 50
Joined: 19.01.2017 15:33

LaTeX Lexer

Post by sergiokapone »

Прветствую. Пытылся поправить лекскр для LaTeX.

Нужно, чтобы блоки, которые заключены в

Code: Select all

\begin{что-то}
    что-то
\end{что-то}
где что-то = что угодно, ктроме document
подсвечивались фоном.

Исключение, структура между \begin{document} и \end{document} не должна входить в это правило.
Но мне так и не удалось этого добиться. К тому же выделение не захватывает фигурные скобки после \end
Вот вид того, что получается.

Мой редактированный лексер

Спасибо.
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

обновил Лекс. Это делается настройкой rules: флаг require same ident; и поставить индекс этого ident =-2 (от конца)
sergiokapone
Posts: 50
Joined: 19.01.2017 15:33

Post by sergiokapone »

Спасибо. А как сделать, чобы внутри комманд оглавления:

Code: Select all

\part{Заглавие}
\chapter{Заглавие}
\section{Заглавие}
\subsection{Заглавие}
текст "Заглавие" - тоже можно было бы настроить, например сделать больше кегль и полужирный + отображалось в дереве?
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

\part{Заглавие}
\chapter{Заглавие}
\section{Заглавие}
\subsection{Заглавие}
почему именно эти команды надо выделить и посветить слова? Не другие? дай ссылку на доку, почему они такие?
sergiokapone
Posts: 50
Joined: 19.01.2017 15:33

Post by sergiokapone »

Потому, что это команды секционирования. Доки можно здесь смотреть

Немного проравил лексер. Но почему-то стиль Param block BG не выделил полужирным в командах секционирования.

Хотелось бы увидеть подсветку примерно похожую на эту
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

Update -сденлал стиль для слов для 4х типов секций. в Сине красный. в Куде "label style"
sergiokapone
Posts: 50
Joined: 19.01.2017 15:33

Post by sergiokapone »

Большое спасибо.
Я уже начинаю понимать, как изменять лексер.
sergiokapone
Posts: 50
Joined: 19.01.2017 15:33

Post by sergiokapone »

Неоднозначно получается обработка команды

Code: Select all

 \verb|some text|
если внутри нахолятся такие символы $,~,\

Я пытался сдлать так Парсер правило

Code: Select all

(?<=\\verb\|\s*)|.+? (?=\|)
image
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

твое правило --после плавила symbol; поставь выше. Ок?
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

Regex неверный- | без эскейпа- |.+?
Post Reply