wake-up-neo.com

Ändern Sie die Emacs-Syntax, um Farben hervorzuheben

Ich verwende Emacs, bearbeite Dateien im C++ - Modus und im PHP) -Modus. Ich liebe das Hervorheben von Syntax als Konzept, aber die Standardfarben sind eine Farblösung. Ich kann einige davon kaum lesen: auch Ich habe nichts dagegen, die Binärdatei zu ändern, während ich meine eigenen Emacs kompiliere. Ich möchte nur die finden Stelle, an der blau steht, auf # 0000FF und ändere es zum Beispiel auf #AAAAFF.

58
adum

Ich finde es am einfachsten, ein Farbthema für solche Dinge zu verwenden.

https://www.emacswiki.org/emacs/ColorThemes

Aber wenn Sie das nicht wollen, bewegen Sie den Cursor über den anstößigen Text und drücken Sie M-x customize-face. Es sollte standardmäßig das Gesicht sein, über dem sich der Cursor befindet.

http://www.gnu.org/software/emacs/manual/html_node/emacs/Specific-Customization.html

65
seth

2 Möglichkeiten - Sie können das Paket color-theme installieren, das viele Nice-Schemata zur Auswahl hat und einfacher von Hand zu erstellen ist. Die von Hand sieht so aus (in deinen .emacs)

(custom-set-faces
   custom-set-faces was added by Custom.
   If you edit it by hand, you could mess it up, so be careful.
   Your init file should contain only one such instance.
   If there is more than one, they won't work right.
  '(default ((t (:inherit nil :stipple nil :background "lightyellow2" :foreground "gray20" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight bold :width normal :family "liberation mono"))))
  '(background "blue")
  '(font-lock-builtin-face ((((class color) (background dark)) (:foreground "Turquoise"))))
  '(font-lock-comment-face ((t (:foreground "MediumAquamarine"))))
  '(font-lock-constant-face ((((class color) (background dark)) (:bold t :foreground "DarkOrchid"))))
  '(font-lock-doc-string-face ((t (:foreground "green2"))))
  '(font-lock-function-name-face ((t (:foreground "SkyBlue"))))
  '(font-lock-keyword-face ((t (:bold t :foreground "CornflowerBlue"))))
  '(font-lock-preprocessor-face ((t (:italic nil :foreground "CornFlowerBlue"))))
  '(font-lock-reference-face ((t (:foreground "DodgerBlue"))))
  '(font-lock-string-face ((t (:foreground "LimeGreen"))))

...

usw. usw.

Sie können auch eingeben

`M-x customize-face RET`

dadurch erhalten Sie alle Anpassungen, die Sie vornehmen müssen, und landen letztendlich in Ihren .emacs.

26
Steve B.

Setzen Sie den Cursor auf ein Gesicht ("Farbe"), das Sie ändern möchten. Schlagen C-u C-x =. Dadurch erfahren Sie, welche Gesichter an dieser Position vorhanden sind, und Sie können darauf klicken, um sie anzupassen. Speichern Sie Ihre Anpassungen.

16
Drew

Wenn Ihnen das Hervorheben von Farben egal ist oder keine der oben genannten Antworten für Sie hilfreich ist (oder wenn Sie zu viel Zeit und Mühe aufwenden, um dies herauszufinden), finden Sie hier eine sehr einfache Lösung, mit der Sie alle Farben entfernen können.

Wenn Sie Folgendes eingeben, werden die Farben entfernt:

M-x global-font-lock-mode

Sie können dies auch als Zwischenschritt tun, damit Sie tatsächlich alles auf Ihrem Bildschirm sehen und eine der oben genannten Antworten ausprobieren können. In meinem Fall war dies sehr nützlich, da die Farbe bestimmter wichtiger Textteile, mit denen ich die Farben ändern konnte, selbst fast unsichtbar war - zum Beispiel die Eingabeaufforderung von M-x.

Wenn die Änderung dauerhaft sein soll, können Sie Folgendes zu Ihrer .emacs-Datei hinzufügen:

(setq-default global-font-lock-mode nil)

2
Michael