Kann ich Emacs das Thema automatisch laden lassen? oder einen bestimmten Befehl zur angepassten Zeit ausführen? Sag, was ich will, ist M-x load-theme RET solarized-light
, wenn ich um 9:00 Uhr im Büro bin und M-x laod-theme RET solarized-dark
, wenn ich wieder zu Hause bin und um 20:00 Uhr auf Emacs weitermache.
Um die Antwort von @Anton Kovalenko zu erweitern, können Sie die aktuelle Uhrzeit mit current-time-string elisp-Funktion und Extrahieren der aktuellen Uhrzeit in Stunden.
Wenn Sie eine vollständige Implementierung schreiben möchten, könnten Sie etwas wie ( Warnung, nicht debugged ) tun:
%Vor%Weitere Informationen zu den verwendeten Funktionen finden Sie in den folgenden Abschnitten des emacs-Handbuchs:
Eine andere (sehr elegante) Lösung ist theme-changer .
Wenn Sie einen bestimmten Ort und Tag / Nacht-Farbthemen verwenden, bietet diese Datei eine Änderungsthema-Funktion, die das passende Thema je nachdem, ob es Tag oder Nacht ist, auswählt. Es wird weiterhin Themen bei Sonnenaufgang und Sonnenuntergang wechseln. Zu installieren:
Legen Sie den Ort fest:
%Vor%Geben Sie die Tag- und Nachtthemen an:
%Vor%Das Projekt wird auf Github gehostet und kann über melpa installiert werden.
Sie können dieses Code-Snippet verwenden, um das zu tun, was Sie wollen.
%Vor% Passen Sie die Variable install-theme-loading-times
wie gewünscht an:
Sie können mit run-with-timer
function beginnen:
Planen Sie eine Funktion, die jede Minute oder so ausgeführt wird und überprüft
aktuelle Zeit und ggf. load-theme
aufrufen (nicht wechseln
Thema jede Minute, auch wenn es das aktuelle Thema neu lädt).