Можно ли установить стиль подсветки Gedit по умолчанию для файлов без расширения?

10

Я часто работаю с текстовыми файлами, которые не имеют расширения или имеют нестандартное расширение, используя Gedit ( .sampleнапример, файл, для которого тип mime не понятен), и Gedit всегда по умолчанию использует подсветку синтаксиса Matlab.

Настройки выделения Gedit

Я хотел бы установить подсветку синтаксиса по умолчанию для «Обычный текст» для этих файлов. Это возможно?

Nano может сделать это , и аналогичный вопрос для файлов с расширениями здесь . Я ищу ответ, который позволяет мне установить универсальный стиль простого текста для всех типов без расширения или еще не найден, /usr/share/gtksourceview-3.0/language-specs/как описано здесь

Запрашиваемая информация:

  • Нет файла спецификаций местного языка в ~/.local/share/gtksourceview-3.0/language-specs/
  • Вывод file --mime-type -b <myfile>правильныйtext/plain
Том Броссман
источник
Да, #! Конструкция в первой строке, например #! / bin / bash, заставит gedit распознать файл как сценарий оболочки bash, и другие файлы сценариев также будут распознаваться, например сценарии python. Я никогда не настраивал эту функцию, но я использую ее с gedit и таким же образом с geany . Я думаю, что кто-то придет с решением для вас :-)
sudodus
Поведение, которое вы сейчас получаете от Gedit, похоже на ошибку, если я вас правильно понимаю. По крайней мере, с помощью gedit 3.18.3-0ubuntu4 в Xenial (и я могу вспомнить, что при использовании любой другой версии Gedit или Pluma на любой платформе) файлы без расширения или расширение которых не распознаются, рассматриваются как обычный текст и не выделяются. Я не думаю, что у меня был предыдущий опыт открытия файлов .sample, но когда я создаю такой файл на своем компьютере Xenial и открываю его в Gedit, он идентифицируется как простой текст. Выполните все файлы с непризнанным (или нет) расширений получить выделены в качестве исходного кода Matlab?
Элия ​​Каган,
В настоящее время не на компьютере с Ubuntu, но вы пытались изменить параметр /usr/share/gtksourceview-3.0/language-specs/mathlab.langglobbing в (или в любом другом месте языкового файла MathLab) на: <property name="globs">*</property>??? ;-) Если это
поможет, я выложу
Интерес тоже к этому вопросу
mattia.b89
1
@EliahKagan У меня включено автоматическое сохранение в Gedit, который запускает подсветку синтаксиса Matlab для текстовых файлов без расширения. Откройте один, сохраните вручную (или подождите, пока не сработает автосохранение), а затем убедитесь, что проблема возникла. Если вы вручную переключите его обратно на обычный текст, то все в порядке после этого, но если вы никогда не выберете или не вмешаетесь, он использует Matlab.
Том Броссман

Ответы:

5

Шаги приняты

В моем geditверхнем меню я выбираю View, Highlight mode...и «Обычный текст» является значением по умолчанию, как показано ниже:

режим выделения Gedit

Используя имя файла «test.sample» и вставляя несколько строк кода Matlab, он все равно остается в формате «Простой текст», если я не принудительно переведу его в формат «Matlab».

После сохранения и выхода я выполнил cp test.sample test.newbeeследующий gedit test.newbeeформат по умолчанию - «Обычный текст».

Затем я создал новый файл, используя с geditименем noextention. Я набрал предложение, сохранил новый файл и вышел. Затем я снова открыл файл с помощью geditи вот результат:

введите описание изображения здесь

Обратите внимание, что нижняя панель окна Gedit показывает Plain Textопцию для выделения.

Резюме

Это было сделано под Ubuntu 16.04, Kernel 4.4.0-53.

Я могу подтвердить, что <property name="globs">*.m</property>существует внутри /usr/share/gtksourceview-3.0/language-specs/matlab.lang.

Поскольку я не могу сломать мою систему, как вашу, если мы не найдем что-то в вашей системе, чтобы исправить, я предлагаю переустановить geditпосле удаления и очистки всех его файлов с apt-get.

Подробности о моей версии:

$ sudo apt install gedit
Reading package lists... Done
Building dependency tree       
Reading state information... Done
gedit is already the newest version (3.18.3-0ubuntu4).
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
WinEunuuchs2Unix
источник
2
Спасибо, это было полезно. Я обнаружил, что проблема зависит от содержимого файла. Для файла с содержанием «Это простой текстовый файл» он остается простым текстом. Для файла, начинающегося с '#' и в Markdown (я часто его использую, так как его легко читать), я все еще вижу переключатель выделения в Matlab. Возможно, мне нужно задать новый вопрос «Как заставить Gedit распознавать синтаксис Markdown».
Том Броссман
2
Добро пожаловать. Я сделал быстрый поиск в Google, и вот начало формата уценки gedit: github.com/jpfleury/gedit-markdown
WinEunuuchs2Unix