70 votes

Comment faire en sorte que Emacs affiche des espaces vides?

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).

71voto

Justin Tanner Points 5437

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,

texte alternatif

Note: WhiteSpace a maintenant remplacé BlankMode

7voto

Pafjo Points 2636

5voto

VonC Points 414372

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)
  )
)
 

4voto

user37248 Points 183

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.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X