本文へスキップ
FileSlimmer
ツール
ガイド

コードツール

この3つのツールは、ソースを解析し、書き換え、そのまま出力し直します。決してしないのは、それを実行することです。この違いがここでの安全性の考え方そのもので、文章で約束するのではなくコードで担保しています。

コードは解析するだけで、実行しません

最小化ツールはソースを理解する必要があり、そのためにソースを構文木へ解析し、その木を出力し直します。何かを評価する必要はなく、このツールも評価しません。evalもなければ、動的なFunctionもなく、スクリプトを走らせるプレビューもありません。

これがもっとも効いてくるのがSVGです。SVGは実行可能な文書で、スクリプト、イベントハンドラー、javascript: で始まるURLを含められます。そのいずれもが二度取り除かれます。一度は最適化処理そのものの規則で、もう一度はその後に走る独立した処理で。フィルターが1つだけでは、そこにバグが1つあった時点で安全性は成り立たないからです。

最小化で実際に減るもの

空白の削除とローカルな名前の短縮で、生のソースはおおむね3分の1ほど減ります。そこから先の効果の大半は最小化ツールではなくサーバー側の圧縮によるものなので、現実的な比較対象は、最小化したうえでgzip圧縮したファイルであって、生のバイト数ではありません。

@importはそのままにします

CSSの@importは、テキストとしてそのまま残すか、指定があれば削除します。参照先をたどることはありません。参照先を取得するということは、あなたが貼り付けたファイルのために、このページがあなたの代わりに通信を行うということであり、それはこのサイト全体が行わないように作られていることそのものだからです。

ガイド

ガイド