shrink-whitespace 20150916.1215(in MELPA)
Whitespace removal DWIM key

概要

shrink-whitespace.el は、カーソル周りのホワイトスペースを調節してくれるコマンド群です。

元々EmacsにはM-SPC(just-one-space)というカーソル周りのスペースを1つにするコマンドとM-\(delete-horizontal-space)というスペースを除去するコマンドが用意されています。
M-x shrink-whitespace はこれらを統合します。
最初に実行するとM-SPC同様スペースを1つにし、再実行でスペースを除去します。
このコマンドはスペースに限らず改行についても働き、空行で実行すると複数の改行を1つにし、再実行で改行を取り除きます。
M-SPCの自然な拡張なのでM-SPCに割り当てるとよいでしょう。
好みによってはM-\でもいいでしょう。

M-x shrink-whitespace-grow-whitespace-around は、実行のたびにカーソル行前後に空行を設置します。
これはsmart-newline.el(レビュー) と働きがかぶるのでわざわざ新設コマンドにするまでもないでしょう。

M-x shrink-whitespace-shrink-whitespace-around は、実行のたびにカーソル行周りの空行を減らします。
これも利用価値はよくわかりません。

20151018100808.png
Fig1: この状態でM-SPCすると

20151018100814.png
Fig2: 標準同様スペースが1つに。さらにM-SPCで

20151018100818.png
Fig3: M-\同様スペースがなくなる。

20151018100824.png
Fig4: この状態でM-SPCすると

20151018100830.png
Fig5: 改行が1つになり、さらにM-SPCすると

20151018100835.png
Fig6: 改行がなくなる

インストール

パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。

(package-initialize)
(setq package-archives
      '(("gnu" . "http://elpa.gnu.org/packages/")
        ("melpa" . "http://melpa.org/packages/")
        ("org" . "http://orgmode.org/elpa/")))

初めてshrink-whitespaceを使う方は
以下のコマンドを実行します。

M-x package-install shrink-whitespace

アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。

M-x package-install package-utils (初めてアップグレードする場合のみ)
M-x package-utils-upgrade-by-name shrink-whitespace

設定 151018100726.shrink-whitespace.el(以下のコードと同一)

(global-set-key (kbd "M-SPC") 'shrink-whitespace)

実行方法

$ wget http://rubikitch.com/f/151018100726.shrink-whitespace.el
$ emacs -Q -f package-initialize -l 151018100726.shrink-whitespace.el

本サイト内の関連パッケージ


本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。