Frage Zuweisen von benutzerdefinierten Erweiterungen zur Syntaxhervorhebung einer Sprache in Notepad ++


In der aktuellen Version von Notepad ++ führt das Öffnen von .sql-Dateien dazu, dass Notepad SQL-Syntaxhervorhebung darauf anwendet. Ich möchte, dass Notepad ++ dasselbe auch für andere Erweiterungen tut, gibt es eine Einstellung, wo ich das definieren kann?


264
2017-09-14 10:09


Ursprung


Es ist nicht schon? Dies sollte standardmäßig geschehen. - D'Arvit
Dies gilt für .sql-Dateien, nicht für andere Dateien - Sathya♦
Ich wünschte, Notepad ++ hätte sich nur an die Sprache erinnert, die im Menü für jede Datei ausgewählt wurde, oder angeboten, Ihre Erweiterung dem Style-Konfigurator dieser Sprache hinzuzufügen, wenn Sie die Erweiterung zum zweiten Mal einer Sprache zugeordnet haben. - Matthew Lock
Beachten Sie, dass Sie die Sprachfarben Ihrer Erweiterung auch über die ändern können Sprache / Definieren Sie Ihre Sprache ... Speisekarte. - wil
Mögliches Duplikat von Wie kann ich Notepad ++ mitteilen, immer eine bestimmte Sprache mit einer bestimmten Dateierweiterung zu verwenden - DaveInCaz


Antworten:


Wenn Sie eine Datei in Notepad öffnen, wird versucht, die Syntaxhervorhebung für den Inhalt basierend auf der Dateierweiterung zu laden.

Wenn Sie eine benutzerdefinierte Erweiterung für eine der vorhandenen Sprachen verwenden, können Sie die benutzerdefinierte Erweiterung unter Einstellungen -> Styler Configurator hinzufügen. Wählen Sie die Sprache und fügen Sie die Erweiterung im Eingabefeld "Benutzererweiterung" hinzu. Um mehrere Erweiterungen hinzuzufügen, trennen Sie sie mit Raum.

Sie müssen dann Ihre Datei erneut öffnen, um die angewendete Syntaxhervorhebung zu sehen.

Sie können den Syntaxhervorhebungsstil auch ändern, indem Sie eine andere Sprache als das Sprachenmenü auswählen.


331
2017-09-14 10:28



Ich habe es versucht, aber es weist nur 1 Nebenstelle zu, ich möchte mehrere Nebenstellen zuweisen. - Sathya♦
Sie können mehrere Erweiterungen hinzufügen, indem Sie sie durch Leerzeichen trennen und in meinen Beitrag einfügen - T. Kaltnekar
Beachten Sie, dass sich diese Änderung nicht auf Dateien auswirkt, die derzeit in Notepad ++ geöffnet sind. Auch das Schließen und erneute Öffnen von Notepad ++ wirkt sich immer noch nicht auf Dateien aus, die zwischen den Sitzungen geöffnet bleiben. Die einzelnen Dateien müssen geschlossen und erneut geöffnet werden, damit der Effekt sichtbar ist. - mwolfe02
Diese Methode funktioniert auch nicht für benutzerdefinierte Sprachen. Siehe hierzu die Antwort unten, aber editieren Sie anstelle der Datei "langs.xml" die Datei "userDefineLang.xml" - Chase Sandmann
Diese Methode scheint nur beim Öffnen von Notepad ++ als Administrator zu funktionieren. Siehe dieses Problem: github.com/notepad-plus-plus/notepad-plus-plus/issues/67 Auch scheint es, die Änderungen in Programmdateien (deshalb das Berechtigungsproblem) in C: \ Programme (x86) \ Notepad ++ \ themes \ SelectedTheme.xml persistent zu sein, was bedeutet, dass diese Einstellung nicht verwendet wird, wenn Sie zwischen Themen wechseln. - Daniel Bogdan


Finde das langs.xml Datei (normalerweise unter C: \ Benutzer [Benutzername] \ AppData \ Roaming \ Notepad ++), öffne sie mit Notepad ++, finde die Zeile, die mit beginnt <Language name="sql" ext="sql" und fügen Sie die gewünschten Erweiterungen in das Feld ein ext Feld, trennt sie mit einem Leerzeichen.

Um dies für eine benutzerdefinierte Sprache zu tun, suchen Sie stattdessen nach userDefineLang.xml und bearbeiten Sie ext="".

Wenn Sie notepad ++ im "portable" -Modus installiert haben, dann wird der langs.xml und userDefineLangs.xml wird direkt in dem Ordner sein, in dem sich Notepad ++ befindet.


62
2017-09-14 10:23



Dieser Ansatz funktioniert auch gut, aber T. Kaltnekar Ansatz ist ein bisschen benutzerfreundlicher, danke! - Sathya♦
Es ist die einzige Art, wie ich wusste, wie :). - alex
Schön, ich bevorzuge diesen Ansatz, ich habe viele benutzerdefinierte Erweiterungen und es ist einfacher, sie auf diese Weise zu kopieren und zu passieren. - James
Diese Methode hat bei mir funktioniert. Ich verstehe nicht, warum das Hinzufügen der Erweiterung mit der GUI nicht funktioniert. "C: \ Benutzer (Benutzer) \ appdata \ roaming \ notepad ++ \ langs.xml" - jimueller
Ich habe Notepadd ++ nicht installiert, nur entpackt, also das lang.xml Datei ist im Anwendungsverzeichnis ;-) - Betlista