69

Emacs に空白 (スペース、タブ、改行など) を表示させるにはどうすればよいですか。Kate や Eclipse などの他の多くのエディターにはこの機能があり、スペースとタブ (特に Python) が混在しているためにコードがいつインデントで壊れているかを確認するのに非常に便利です。

4

3 に答える 3

70

WhiteSpaceモードは、現在のバッファー内のすべての空白文字を視覚化するための Emacs のマイナー モードです。で有効化できますM-x whitespace-mode

これは、Emacs wiki から直接取得した動作中の WhiteSpace のスクリーンショットです。

空白モードの動作

注: WhiteSpaceMode は BlankMode に取って代わりました

于 2008-11-16T11:30:16.403 に答える
5

それを行うためのすべての可能な設定は、ここ(空白モード)とこことここ(ShowWhiteSpace)にまとめられているようです

また:

(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)
  )
)
于 2008-11-16T10:30:28.693 に答える
4

インデントが壊れていますか?- コードでタブを使用しないでください - 最近のディスク容量は安価です。

.emacs(setq-default indent-tabs-mode nil)ファイルに入れます。C-x h M-x untabifyバッファ全体を非タブ化するために入力することに慣れてください。タブを検索するには、C-s C-i. バッファにあいまいな制御文字がある場合は、 で見ることができますM-x hexl-mode

またC-x h M-x indent-region、バッファ全体をインデントします。vhdl-mode などの一部のモードには、beautify region コマンドがあります。

于 2008-11-16T22:20:07.807 に答える