Kann der Standard-Hervorhebungsstil von Gedit für Dateien ohne Erweiterung festgelegt werden?

10

Ich arbeite häufig mit Textdateien, die keine Erweiterung haben oder die eine nicht standardmäßige Erweiterung haben, unter Verwendung von Gedit (eine .sampleDatei zum Beispiel, für die der MIME-Typ nicht verstanden wird), und Gedit verwendet standardmäßig immer die Matlab-Syntaxhervorhebung.

gedit Highlight-Einstellungen

Ich möchte für diese Dateien eine Standard-Syntax-Hervorhebung von "Nur Text" festlegen. Ist das möglich?

Nano kann dies , und eine ähnliche Frage für Dateien mit Erweiterungen finden Sie hier . Ich suche nach einer Antwort, mit der ich einen Sammelstil für Klartext für alle Typen ohne Erweiterung festlegen kann oder der nicht /usr/share/gtksourceview-3.0/language-specs/wie hier beschrieben bereits gefunden wurde

Angeforderte Info:

  • Keine lokale Sprachspezifikationsdatei in ~/.local/share/gtksourceview-3.0/language-specs/
  • Ausgabe von file --mime-type -b <myfile>ist korrekttext/plain
Tom Brossman
quelle
Ja das #! Wenn Sie in der ersten Zeile konstruieren, z. B. #! / bin / bash, erkennt gedit die Datei als Bash-Shellscript, und andere Skriptdateien werden ebenfalls erkannt, z. B. Python-Skripte. Ich habe diese Funktion nie optimiert, aber ich verwende sie mit gedit und auf ähnliche Weise mit geany . Ich denke, jemand wird mit einer Lösung für Sie kommen :-)
Sudodus
Das Verhalten, das Sie derzeit von Gedit erhalten, scheint ein Fehler zu sein, wenn ich Sie richtig verstehe. Zumindest mit gedit 3.18.3-0ubuntu4 unter Xenial (und jeder anderen Version von Gedit oder Pluma, an die ich mich erinnern kann, dass sie auf einer beliebigen Plattform verwendet wurde) werden Dateien ohne Erweiterung oder deren Erweiterung nicht erkannt wird als einfacher Text behandelt und nicht hervorgehoben. Ich glaube nicht, dass ich bereits Erfahrung mit dem Öffnen von Beispieldateien habe, aber wenn ich eine solche Datei auf meinem Xenial-Computer erstelle und sie in Gedit öffne, wird sie als einfacher Text identifiziert. Werden alle Ihre Dateien mit nicht erkannten (oder keinen) Erweiterungen als Matlab-Quellcode hervorgehoben?
Eliah Kagan
Derzeit nicht auf einem Ubuntu-Computer, aber haben Sie versucht, den Globbing-Parameter in /usr/share/gtksourceview-3.0/language-specs/mathlab.lang(oder was auch immer die MathLab-Sprachdatei genau ist) in Folgendes zu ändern: <property name="globs">*</property>??? ;-) Wenn das den Trick macht, werde ich eine vollständige Antwort
posten
Interesse auch an dieser Ausgabe
mattia.b89
1
@EliahKagan Ich habe das automatische Speichern in Gedit aktiviert, was anscheinend die Hervorhebung der Matlab-Syntax für Nur-Text-Dateien ohne Erweiterung auslöst. Öffnen Sie eine, speichern Sie sie manuell (oder warten Sie, bis die automatische Speicherung ausgelöst wird), und sehen Sie dann, dass das Problem auftritt. Wenn Sie es manuell wieder auf Nur-Text umschalten, ist es danach in Ordnung, aber wenn Sie nie wählen oder eingreifen, wird Matlab verwendet.
Tom Brossman

Antworten:

5

Schritte gemacht

In meinem geditMenü in der oberen Leiste wähle ich aus View, Highlight mode...und "Nur Text" ist die Standardeinstellung wie unten gezeigt:

gedit Highlight-Modus

Wenn Sie den Dateinamen "test.sample" verwenden und einige Zeilen Matlab-Code einfügen, bleibt das Format "Nur Text" erhalten, es sei denn, ich erzwinge das Format "Matlab".

Nach dem Speichern und Beenden habe ich ausgeführt, cp test.sample test.newbeegefolgt vom gedit test.newbeeStandardformat ist immer noch "Nur Text".

Als nächstes habe ich eine neue Datei mit geditaufgerufen erstellt noextention. Ich habe einen Satz eingegeben, die neue Datei gespeichert und beendet. Dann habe ich die Datei mit erneut geöffnet geditund dies ist das Ergebnis:

Geben Sie hier die Bildbeschreibung ein

Beachten Sie, dass in der unteren Leiste des Fensters von gedit die Plain TextOption zum Hervorheben angezeigt wird .

Zusammenfassung

Dies wurde unter Ubuntu 16.04, Kernel 4.4.0-53 durchgeführt.

Ich kann bestätigen, dass <property name="globs">*.m</property>innerhalb existiert /usr/share/gtksourceview-3.0/language-specs/matlab.lang.

Da ich mein System nicht wie Ihr System beschädigen kann, empfehle ich eine Neuinstallation, geditnachdem wir alle Dateien entfernt und gelöscht haben, mit denen Ihr System repariert werden kann apt-get.

Angaben zu meiner Version:

$ 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
quelle
2
Danke, das war hilfreich. Ich habe festgestellt, dass das Problem mit dem Inhalt der Datei variiert. Für eine Datei mit dem Inhalt "Dies ist eine Nur-Text-Datei" bleibt es Nur-Text. Bei einer Datei, die mit '#' beginnt und in Markdown (ich verwende sie häufig, da sie leicht zu lesen ist), wird immer noch der Hervorhebungsschalter zu Matlab angezeigt. Vielleicht muss ich eine neue Frage stellen: "Wie kann Gedit die Markdown-Syntax erkennen?".
Tom Brossman
2
Sehr gern geschehen. Ich habe eine schnelle Google-Suche durchgeführt und hier ist ein Start für das gedit-Markdown-Format: github.com/jpfleury/gedit-markdown
WinEunuuchs2Unix