Open Lenchik opened 9 years ago
Хотелось бы такую фичу
А конкретнее? :) Подсветить? Добавить в структуру файла? Просто подсветить вроде не сложно даже без новых фич плага, в структуру добавить тоже не сложно, в общем-то, но выглядит ужасно. Если только за счёт новых фич пробовать, но не уверен, что можно сделать вложенным, типа чтобы строка
\begin{xxx} %FIX
в панели структуры выглядела так
\begin{xxx}
%FIX
а не так
\begin{xxx} %FIX
(Возможность навигации по подобным комментариям схожую с оной в TeXStudio можно попробовать сделать с помощью закладок, скриптом.)
Хотелось бы, чтобы ещё и строки вида % % %% BUG bug bug могли быть подсвечены так же
Почему? Подобная каша меньше всего похожа на пометку и пояснение к ней. Вообще как-то странно сделано, выглядит разумным сделать конкретный список типа
%FIX %ASK %BUG %ADD
а сейчас получается, что всё, что начинается с двух заглавных латинских букв - special todo comment.
Вот такое в TeXStudio тоже подсвечивается, а не хотелось бы.
%D_{ij} = \frac{1}{3} \sum\limits_{k=1}^n (Q_{ij})_k (z_k^3 - z_{k-1}^3),
Почему не хотелось бы? Знак % не экранирован ("\%"), тогда получается, что всё, начиная с него и до конца строки, - комментарий. Подсвечивается как special todo comment? Забыл проверить :)
P.S. Надо подумать, уточнить про lookahead в QuotesRE/Folds.
Подсветить? Добавить в структуру файла?
Да. То и другое.
Подсвечивается как special todo comment? Забыл проверить
Именно как TODO подсвечивается, а это явно не он.
И заодно ещё по структуре в кодефоллде как-то отрабатывать вложенность
\part{title}
\chapter{title}
\section{title}
\subsection{title}
\subsubsection{title}
\paragraph{title}
\subparagraph{title}
\part*{title}
\chapter*{title}
\section*{title}
\subsection*{title}
\subsubsection*{title}
\paragraph*{title}
\subparagraph*{title}
А то там сворачиваются только какие-то явно вложенные блоки с явными границами. Но в этом случае есть опасность - это же весь документ отработать надо и прознать, какая там структура.
Вообще как-то странно сделано, выглядит разумным сделать конкретный список типа
Расширяемость - какие хочешь, такие добавишь - там же можно так комментарии рецензентов или от нескольких авторов писать и всё такое - кому что в голову придёт. И всё пишется в структуру, отдельным списком, помимо структуры part-chapter-section-... Наш codefold пока так не сможет, но хотя бы приблизится
Подсвечивается как special todo comment?
Именно как TODO подсвечивается, а это явно не он.
Похоже на баг: any multiple-capital-letter word is recognized as todo-style comment
А как вообще должна подсветиться данная строка?
И заодно ещё по структуре в кодефоллде как-то отрабатывать вложенность
Была такая мысль, ждал, пока устаканятся изменения в плагине. Однако есть вопросы :) Если разложить по размеру:
\begin{document}
\part
\chapter
\section
\subsection
\subsubsection
\paragraph
\subparagraph
Но это же не значит, что для \section родительским всегда будет \chapter, с тем же успехом родительским может быть \begin{document}. Если только делать несколько правил для почти каждого из уже существующих, что как минимум здорово раздует секцию.
Была мысль для секции Words указать родительские (типа команд, работающих только внутри, например, Math mode), вроде как более интеллектуальная подсветка-валидатор, но команды разметки подсвечиваются иначе, а убирать правила из QuotesRE и использовать Words не вариант: в некоторых случаях команды не захватятся. Да и противоречит начальной идее :)
Но в этом случае есть опасность - это же весь документ отработать надо и прознать, какая там структура.
Так понимаю, документ в любом случае отрабатывается целиком, а не только видимаю часть+, к тому же есть ограничение на размер файла, после которого фолдинг отключается.
И всё пишется в структуру, отдельным списком, помимо структуры part-chapter-section-...
Специализированному редактору делать подобное проще :)
Наш codefold пока так не сможет
Это уже тянет на полноценный плаг, типа FunctionList в Notepad++. Наверное, можно и скриптом распарсить текст и нарисовать GUI с TreeView. Закладки можно уже сейчас расставить. Не понял, по какому принципу группируются пункты на скрине? Или МЕТКИ - это уже пакет todonotes?
А как вообще должна подсветиться данная строка?
Никак - просто комментарий
Метки это всё, что \label{метка}.
"Предстоит сделать", это вот эти todo-style-notes.
Есть ещё всё, что подгружается \input и \include
А после того структура part-chapter-section-...
не значит, что для \section родительским всегда будет \chapter
Ага. Мало того, что по прихоти писателя, так ещё для разных классов, даже базовых, есть различия. У report
вроде бы крупнее chapter
не определено, но стартовать можно и с section
и без всего. У article
chapter
нет - самый верхний допустимый section
. Да, есть над чем голову поломать. Может, в xml.coder
можно что-то стырить. Там же маньячные структуры генерируются на ходу из одной разметки.
https://sourceforge.net/p/texstudio/bugs/1557/
Баг фиксить не будут
Но по ссылкам всплыла наводка на их принципы обработки разных форматов:
https://sourceforge.net/p/texstudio/hg/ci/default/tree/utilities/qxs/ http://texstudio.sourceforge.net/manual/qce/QNFA.html http://texstudio.sourceforge.net/manual/current/usermanual_en.html#LANGUAGEDEF https://sourceforge.net/p/texstudio/discussion/907840/thread/534a1cfa/#b5a8
Может пригодиться
Метки это всё, что \label{метка}.
В том смысле, что комментарий используется как пометка.
Баг фиксить не будут
Если используется выражение "%\s?[A-Z][A-Z_-]+", то вроде как и не баги. Сделал аналогично для совместимости.
В общем, добавил/изменил подсветку комментариев + \input и \include в панель структуры, с остальным надо ещё подумать.
Хотелось бы, чтобы не просто жирным, а ещё и фоновым цветом эта строка/строки выделялись, чтобы заметно было.
Не удалось подобрать приемлемый цвет для фона и шрифта, идеи приветствуются :)
; Special todo comment (TeXStudio) & ordinary comment line
1 "(?<!\\)(% |%)[A-Z][A-Z_\-]+[^\r\n]++$" "\0=(4,${CodeFold_ListBkColor},${CodeFold_ListTextColor})" 0 0
Вы пробовали только на своей теме? С дефолтными результат получается непредсказуемый, а на моей - вообще сливается с фоном. Вспомнил, сделал ход конём, цвета как в TeXStudio:
1 "(?<!\\)(% |%)[A-Z][A-Z_\-]+[^\r\n]++$" "\0=(4,#000000,#A9CF83)" 0 0
Как вам? Может быть, раз подсвечен фон, убрать жирность и оставить только курсив?
Я попробовал на нескольких и выбирал тот вариант как "инвертацию" кодфолдинговых цветов, которые у всех стандартных должны быть нормально согласованы. Ваш вариант тоже хорошо смотрится. Ход конём, действительно, получился. Жирность и курсив не надо убирать - так нормально видно и читается, во всяком случае при шрифте Consolas.
С дефолтной получается равносильно (4,0,0), а у меня изменённая цветовая тема + тема плагина Coder на основе дефолтной и _${CodeFoldListBkColor} = цвету фона, всё вместе как-то не очень выглядит при переключении стандартных тем.
Хотелось бы такую фичу, недавно появившуюся в TeXStudio (даже получше). http://texstudio.sourceforge.net/manual/current/CHANGELOG.txt
На таком коде:
выглядит так:
Хотелось бы, чтобы ещё и строки вида
% % %% BUG bug bug
могли быть подсвечены так же, если это возможно и не сильно замедлит работу АкеляВот такое в TeXStudio тоже подсвечивается, а не хотелось бы.