Comment puis-je faire en sorte qu'Emacs affiche des espaces vides (comme un espace, une tabulation, un saut de ligne, etc.)? De nombreux autres éditeurs, tels que Kate et Eclipse, possèdent cette fonctionnalité et je trouve très utile de voir quand le code est indenté en raison de la combinaison d'espaces et de tabulations (notamment Python).
Réponses
Trop de publicités?Le mode WhiteSpace est un mode mineur Emacs permettant de visualiser tous les caractères d’espace blanc du tampon actuel.
http://www.emacswiki.org/emacs/WhiteSpace
Voici une capture d'écran de WhiteSpace en action prise directement à partir du wiki d'Emacs,
Note: WhiteSpace a maintenant remplacé BlankMode
Tous les réglages possibles semblent être résumés ici
également:
(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-on)
;; ... 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)
)
)
indent-cassé? - n'utilisez jamais d'onglets dans votre code - l'espace disque est bon marché de nos jours.
Mettez (setq-default indent-tabs-mode nil)
dans votre fichier .emacs. Habituez-vous à taper C-x h M-x untabify
pour libérer le tampon tout entier. Pour rechercher des onglets, tapez C-s C-i
. Si vous avez des caractères de contrôle obscurs dans vos tampons, vous pouvez les voir avec M-x hexl-mode
.
De plus, C-x h M-x indent-region
indente la totalité du tampon. Certains modes comme vhdl-mode ont une commande embellir la région.