batファイルでjavascriptコード圧縮

Posted on 8月 30, 2006
Filed Under javascript |

javascriptを書いてると、圧縮してあげたくなります。

Makeを利用したJavaScriptファイルの結合・圧縮
がとってもスマートなのだけれど、Windows環境だしMakefile手書きしたこと無いので、
bat(バッチ)ファイルで。

CODE:
  1. set u=union.js
  2. set c=comp.js
  3. del %u%
  4. del %c%
  5. copy *.js %u% /B
  6. java -jar custom_rhino.jar -c %u%> %c% 2>&1

1. これをjsファイルのあるフォルダに保存して compressjs.bat とかって名前付けて保存

2. custom_rhino.jarをダウンロードして同じフォルダに保存(JavaRuntimeは入れておく)

3. batファイルをダブルクリック

4. フォルダ内の.jsファイルを union.js にまとめた後、圧縮してできた comp.js が最終的なコード。

jsファイルのあるフォルダがちらばってる場合には、こんな感じ('+'区切りでパスをつなぐ)。

CODE:
  1. copy *.js %u% /B
  2. copy js1\\myjs.js+js2\\myjs2.js %u% /B

さらに、CSSファイルを保存すると同時にブラウザをリロード にならって秀丸の保存にフック(?)できると快適!

javascript圧縮エンジンは Dojo’s Compressor

日本語について。
Makeを利用したJavaScriptファイルの結合・圧縮 では

Dojo's Compressorでは日本語文字列はうまく扱えないようなので、日本語文字列は別ファイルに記述する必要がある。

って書いてあるけれど改善されたのか、問題無し(圧縮前はUTF-8で保存した状態で確認)。
ただし、「\u7e3a\uff7e\u7e3a\ufffd」になって日本語は逆に容量増えちゃいますが。

いまいちコード削減量が大した事無かったのと、
使わせてもらっているjavascriptライブラリの権利周りをそのままにしておきたいので、
とりあえず未採用...

それより、ライブラリのうち未使用の関数を省くようなの、欲しいな。

Comments

One Response to “batファイルでjavascriptコード圧縮”

  1. blog@slightlyblue on 9月 1st, 2006 23:07

    Javascript Linker - Janitorで未使用関数を除去する

    batファイルでjavascriptコード圧縮 で それより、ライブラリのうち未…

Leave a Reply