js-beautifyで、HTML、CSS、JavaScriptの整形(cliとEmacs)

js-beautifyのインストール

js-beautifyは、HTML、CSS、JavaScriptの整形機能を提供してくれます。

node.jsのパッケージ管理仕組み(npm)でインストールするので、node.jsをインストールする必要があります。

僕はMacportでインストールしました。

sudo port install nodejs

あたりでいけると思います。nodejsいれたら、自動的にnpmも入るみたいなので、

 npm --version

で、インストールできているか確認します。できているようだったら、

sudo npm -g install js-beautify

で、js-beautifyがインストールされます。インストールできたら、

js-beautify -html foo.html

で、標準出力に帰ってきます。クリップボードに返したかったら(Mac OS Xだったら)、

js-beautify -html foo.html | pbcopy

というやり方もあります。

インデントスタイルを変更したい

js-beautifyのオプションで指定できます。オプション類は、beautify-web/js-beautifyで確認できます。

以下の例は、タブでのインデントです(デフォルトはスペースでのインデント)。

js-beautify -html --indent-size 2 --indent_with_tabs foo.html | pbcopy

Emacsで使う

web-beautify Packageを入手して、

(require 'web-beautify)

としたら、

M-x web-beautify-html

というような感じで使えます。

やっぱりEmacsでもタブでインデント整形して欲しいので、僕は、以下のように設定しています。

(setq-default web-beautify-args
       '("-f"
        "-"
        "--indent_with_tabs"
        "--indent-size 2"
        "--end-with-newline"))

ジャンル: EmacsMacWeb