Могу ли я установить подсветку синтаксиса по умолчанию в Gedit?

Пока вы не сохраните документ в gedit, подсветка синтаксиса отключена. Очевидно, для этого есть веские причины - люди могут запутаться, если определенные слова будут случайно отображаться разными цветами. Но для моих целей я использую gedit почти исключительно для редактирования HTML.

Много раз я вставляю фрагменты кода в новый документ gedit для быстрого редактирования, и мне приходится вручную устанавливать цвет синтаксиса в HTML. В других случаях я открываю документы ColdFusion (.cfm), которые gedit, по-видимому, не распознает, и снова мне приходится вручную устанавливать цвет HTML. Оба этих неудобства были бы устранены, если бы я мог найти способ сказать gedit, что он автоматически использует подсветку синтаксиса HTML для новых документов и документов без распознанного расширения файла. Это возможно?

4 ответа

Решение

Вы можете по крайней мере добавить расширения файла в схему раскраски синтаксиса html, отредактировав html.lang в /usr/share/gtksourceview-2.0/language-specs/ как супер пользователь. Допустим, вы хотите добавить подсветку синтаксиса HTML к файлам cfm, измените это

<property name="globs">*.html;*.htm</property>

(дефолт html.lang) в это

<property name="globs">*.html;*.htm;*.cfm</property>

Вы можете создать свои собственные файлы определения языка в вашем $HOME каталог. Редактирование спецификаций языка gtk не рекомендуется, так как оно будет переопределяться при каждом обновлении gtksourceview.

Скопируйте файл языковых спецификаций в ваш домашний каталог:

$ cp /usr/share/gtksourceview-3.0/language-specs/html.lang ~/.local/share/gtksourceview-3.0/language-specs/

Затем добавьте свои пользовательские форматы файлов, такие как .cfm к списку расширений:

<property name="globs">*.html;*.htm;*.cfm</property>

Сюда gedit будет использовать автоматическую подсветку синтаксиса в ваших пользовательских форматах файлов, а обновления gtk не будут отменять ваши пользовательские изменения.

Это невозможно без изменения исходного кода Gedit или написания плагина для переопределения по умолчанию. Схема подсветки синтаксиса по умолчанию жестко запрограммирована.

В файлах конфликт /usr/share/gtksourceview-3.0/language-specs/sml.langа также

Оба имеют расширение, связанное с ним. Чтобы получить автоматическую подсветку синтаксиса Standard ML, вам нужно стереть .smlиз /usr/share/gtksourceview-3.0/language-specs/xml.lang.

Другие вопросы по тегам