2008-11-16 5 views
64

Wie kann ich Emacs Leerzeichen (wie ein Leerzeichen, eine Registerkarte, ein Zeilensprung, etc.) anzeigen lassen. Viele andere Editoren wie Kate und Eclipse haben diese Funktion und ich finde es sehr nützlich zu sehen, wenn Code durch Leerzeichen und Tabs (insbesondere Python) eingerückt ist.Wie mache ich Emacs Leerzeichen anzeigen?

Antwort

5

Alle möglichen Einstellungen zu tun, die scheinen summarized here (blank-mode) und hier and here (ShowWhiteSpace)

auch zu sein:

zur Visualisierung alle Leerzeichen in den aktuellen Puffer
(if (>= emacs-major-version 22) 
    (progn 
    ;; Mode to use with Emacs 22 
    ;; http://emacswiki.org/cgi-bin/wiki/BlankMode 
    (require 'blank-mode) 
    ;; Mode not active by default: let's activate it 
    (global-blank-mode t) 
    ;; ... activate it when text mode where color syntax is not active by default 
    (add-hook 'text-mode-hook 'blank-mode-on) 
    ;; All invisible chars are shown, except newline char. 
    (setq blank-chars '(tabs spaces trailing lines space-before-tab)) 
    ;; Show only for one color, no mark inserted 
    (setq blank-style '(color)) 
    ;; Use for normal space (not shown) 
    (set-face-background 'blank-space-face nil) 
    (set-face-foreground 'blank-space-face "black") 
    ;; used for non breakable space 
    (set-face-background 'blank-hspace-face "PaleGreen") 
    (set-face-foreground 'blank-hspace-face "black") 
    ;; Used for spaces left of a tab 
    (set-face-background 'blank-space-before-tab-face "orange") 
    (set-face-foreground 'blank-space-before-tab-face "black") 
    ;; Used for tab 
    (set-face-background 'blank-tab-face "lemonchiffon") 
    (set-face-foreground 'blank-tab-face "black") 
    ;; used for extra space at the end of a line 
    (set-face-background 'blank-trailing-face "gold") 
    (set-face-foreground 'blank-trailing-face "black") 
    ;; Used for line too long 
    (set-face-background 'blank-line-face "snow2") 
    (set-face-foreground 'blank-line-face "black") 
) 
    (progn 
    ;; For older Emacs prior to version 22. 
    ;; http://www.emacswiki.org/cgi-bin/wiki/show-wspace.el 
    (require 'show-wspace) 
    (add-hook 'font-lock-mode-hook 'show-ws-highlight-tabs) 
    (add-hook 'font-lock-mode-hook 'show-ws-highlight-hard-spaces) 
    (add-hook 'font-lock-mode-hook 'show-ws-highlight-trailing-whitespace) 
) 
) 
4

indent-gebrochen? - Verwenden Sie niemals Tabs in Ihrem Code - Speicherplatz ist heutzutage billig.

Setzen Sie (setq-default indent-tabs-mode nil) in Ihre .emacs-Datei. Gewöhnen Sie sich daran, C-x h M-x untabify einzugeben, um den gesamten Puffer zu entabatten. Um nach Tabs zu suchen, geben Sie C-s C-i ein. Wenn Sie unbekannte Steuerzeichen in Ihren Puffern haben, können Sie sie unter M-x hexl-mode sehen.

Auch C-x h M-x indent-region wird den gesamten Puffer einrücken. Einige Modi wie der vhdl-Modus haben einen Befehl zum Verschönern der Region.

+8

Verschiedene Entwickler in meinem Team haben unterschiedliche Einstellungen für Tabwidth. Alles auf den Platz zu setzen vermasselt den Rest des Teams. Danke für das Spielen, obwohl. – warfangle

+0

Nur für das Protokoll: sollte es 'C-h f unababify' sein anstelle von ' C-x h M-x unababify' – To1ne

+2

Emacs ist gut für andere Arten von Dateien (wie, Tab-begrenzte Datendateien), nicht nur Code! Ordentlich, nicht wahr? – Anne

Verwandte Themen