Gedit подсветка синтаксиса

Автор sergey1212, 30 января 2022, 21:59:48

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

sergey1212

Gnome 3.30.2
Gedit 3.30.2
Для текстовых файлов нет подсветки синтаксиса. Хотел, чтобы участки с bash кодом выглядели форматироваными.
Загуглил, прямого решения нет. Етсь информация о местоположении файлов подсветки синтаксиса.
/usr/share/gtksourceview-3.0/

Взял один файл посветки  и стал его оптимизировать под себя. Исправил для начала секцию на применение к текстовым файлам.
<property name="mimetypes">text/plain</property>
    <property name="globs">*.txt</property>

Но оно не срабаывает. Может кто подсказать почему?
Может есть хороший мануал по кастомизации подсветки синтаксиса в gedit?
А то есть непонятные моменты в настройке.

sergey1212

А все таки подсветка применилась.
Проверял так:
открываю txt файл gedit и смотрю нижнем левом углу на синтаксис который автоматически присвоился.
На одном фале у меня это не срабатывало видимо потому что gedit запоминает для контретного файла стиль который был назначен выбором из списка вручную.  А я как раз там тыкал.
Для других файлов происходит выбор.
Перенес настройки  пользвательскю директорию заодно.
Но вопрос по мануалу остается открытым.  Потому что некоторые моменты неясны.
Цвета прямо не указываются идет ссылка на какие то элементы gtk видимо, а они уже обладают стилем оформления. Но нет перечня этих элементов.
Вот тут например есть параметр _section="Other"
<language id="csv" name="bash" version="2.0" _section="Other">
А он бывает разным и Source, и Script, и Other
Что это означает и как работает?

sergey1212

Нашлась кое какая информация.
http://getfr.org/pub/dragonfly-release/usr-local-share/doc/gtksourceview-3.0/lang-reference.html

Все равно приветствуется если кто поделиться своим опытом.

sergey1212

Не могу сделать так чтобы заработало
<property name="block-comment-start">//</property>
<property name="block-comment-end">/\/\</property>
Либо эти инструкции не работают больше или надо что-то ниже прописать, но примера не нашел

https://pastebin.com/Qn31K41L

ChubaDuba

Цитата: sergey1212 от 30 января 2022, 21:59:48Может есть хороший мануал по кастомизации подсветки синтаксиса в gedit?
А то есть непонятные моменты в настройке.
За подсветку синтаксиса в Gedit отвечает GtkSourceView
Вся документация там имеется.

sergey1212

Цитата: ChubaDuba от 03 февраля 2022, 08:53:33За подсветку синтаксиса в Gedit отвечает GtkSourceView
Вся документация там имеется.
Я там был. Не нашел ответ на свой чисто практический вопрос.

sergey1212

разобрался...
<property name="block-comment-start">//</property>
<property name="block-comment-end">/\/\</property>

не работают напрямую для подсветки синтаксиса и не вносят какую-то полезную фичу в подсветку блоков.
Эти инструкции воспринимает программа использущая *.lang файл.  В моем случае gedit
Тогда через контекстное меню можно выбрать функцию  comment block  и блок закоментируется.
Только работает это криво. Инструкция
<property name="line-comment-start">//</property>
перехватывает значение, а не добавляет возможностей. А также комменитруется не весь блок куском а каждая строка в отдельности.
Ну хоть понятно стало что-то и для чего придумано.

sergey1212

В общем поработав с этими возможностями не добился результата. Хотел бы пердостеречь остальных. Лучше обратиться к более качественным реализациям аналогичных возможностей, или сменив окружение, или текстовый редактор.
Потому что синтаксис и функционал убогий. Работоспособность сильно зависит от нюансов кодообразования. Не работает по малейшему чиху и просто так... потому и объяснено так на уровне деклараций и типового кода который "должен работать"
Тратить время на разбор почему это не работает слишком накладно.

ChubaDuba

Цитата: sergey1212 от 03 февраля 2022, 18:46:41
В общем поработав с этими возможностями не добился результата. Хотел бы пердостеречь остальных. Лучше обратиться к более качественным реализациям аналогичных возможностей, или сменив окружение, или текстовый редактор.
Потому что синтаксис и функционал убогий. Работоспособность сильно зависит от нюансов кодообразования. Не работает по малейшему чиху и просто так... потому и объяснено так на уровне деклараций и типового кода который "должен работать"
Тратить время на разбор почему это не работает слишком накладно.
Совершенно верно! С учётом того, что под Linux существует куча текстовых редакторов на любой вкус.