So finden Sie das aktuelle Farbthema in Emacs heraus


23

Wie kann ich bei laufendem emacs herausfinden, welches Farbschema gerade verwendet wird?

Antworten:


19

Es gibt kein Konzept für ein aktuelles Thema, und tatsächlich können mehrere Themen nacheinander angewendet werden, um die Menge der aktiven Gesichter additiv zu definieren. In den neuesten Emacs-Versionen (siehe M-x customize-theme) wurde die Unterstützung für Themes hinzugefügt , und es besteht weiterhin die Möglichkeit, "mehrere Themes gleichzeitig auszuwählen".

Kurz gesagt, wenn Sie ein Thema aktivieren, wechseln Sie nicht zu diesem Thema, sondern wenden die im Thema angegebenen Änderungen auf die darin aufgeführten Flächen und Variablen an.

Alle Anpassungen, die nicht explizit in einem benannten Thema platziert sind, werden tatsächlich in das verborgene Benutzer-Thema eingefügt, sodass immer mindestens ein Thema aktiv ist. Die anderen derzeit aktivierten Themen werden in der Variablen aufgelistet custom-enabled-themes.


4

Teilen Sie ein Beispiel für die Verwendung von Color-Theme-Print, um zu ermitteln, welches Thema ich angewendet habe.

über 'Mx color-theme-print' erhalten sie ausgaben über das farbthema info, dann finden sie einen typischen wert, der für verschiedene farbthemen eindeutig ist, ich wähle 'background-color' mit einem wert von 537182 für meine emacs.

Öffnen Sie die Farbdesignbibliothek 'color-theme-library.el' und durchsuchen Sie die Datei mit dem Schlüsselwort '537182'. Anschließend erhalten Sie dort den Namen des Designs.

Obwohl kein direkter Weg, aber es funktioniert wirklich, hoffe das hilft!


3

M-x color-theme-printist nützlich, um genau zu sagen, welche Schriftarten wirksam sind. Es wird Ihnen nicht sagen, welche benannten Farbthemen angewendet wurden, aber Sie sollten in der Lage sein, das aus Ihrer Init-Datei herauszuarbeiten. Wenn nicht, müssen Sie vermutlich einen Modus verwenden, der sein eigenes Farbschema anwendet (ich weiß, dass Proof General dies tut und es am meisten irritiert).


1
Anscheinend muss dies (require 'color-theme)zuerst
geschehen

1

Um die Antwort von sanityinc zu ergänzen, legen Sie sie entweder selbst oder in Ihrer Datei init.el (dotemacs) fest.

Ich nehme an, du fragst, weil du ein paar von ihnen ausprobiert und vergessen hast, oder? Ich weiß, ich habe, ich frage mich, ob Sie Ihren Nachrichtenpuffer überprüfen können , um den zuletzt angewendeten zu sehen.

@sanityinc danke auch für die Erklärung. Ich bemerkte, dass sich einige Bereiche, wie der Minipuffer, nicht änderten oder auf den Wert des letzten Themas eingestellt wurden, als ich anfing, mehr und mehr Themen nacheinander hinzuzufügen. Jetzt weiß ich warum.


Im alten color-themePaket gibt es eine Variable namens color-theme-is-cumulative, die Sie so einstellen können, nildass Themen sich nicht gegenseitig stören. Es klingt nach einer guten Idee, aber die Ergebnisse sind normalerweise völlig unerwartet. Ich denke zum Teil, weil Themen normalerweise Annahmen über die eingebauten Gesichter machen.

Ja, mir ist diese Annahme auch aufgefallen, als ich eine erfunden habe ... Ich würde von einer "populären" kopieren, aber es hätte die Hälfte der Lok, die die nächste gemacht hat ... usw. Lassen Sie mich über einige Themen nachdenken änderte nur die Variablen, die es "wollte", und dass es Hunderte zu ändern gab, also warum sich die Mühe machen. In einem verwandten Punkt verwende ich das Thema Schokoladenregen und liebe es jetzt. Es ist seit vielen Monaten auf meinem 24.x-Build.

1
Ich habe einige Farbthemen mit dem Befehl "Farbthema auswählen" ausprobiert, und ich mochte ein Farbthema, aber ich hatte den Farbthema-Auswahlpuffer bis dahin geschlossen und auch vergessen, was ich ausgewählt habe, also dachte ich vielleicht Eine Variable speichert, welches Farbthema gerade angewendet wird. Es gibt keine Protokolle über sie in Nachrichten puffern

Vielleicht können Sie versuchen M-x describe-face RET default RET(oder ein anderes nicht standardmäßiges Gesicht) und dann M-x rgrepnach Farbthema-EL-Dateien suchen, die dieselben Farbnamen / Hex-Werte enthalten.

Entschuldigung - die Lösung mit Blick in den Nachrichtenpuffer hilft nicht. M-x load-theme <colortheme>druckt nichts in den Nachrichtenpuffer.
Christian Herenz
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.