本文へ移動
QKQuickKitEN
HTTP・WebLOCALブラウザ内で処理

HTML フォーマッター

限定された HTML を 2 スペースのネストで整形します。<pre>・<textarea>・<script>・<style> の内容はそのまま保持します。

入力と主要な処理をブラウザ内で行い、その入力内容をQuickKitサーバーへ送信しない設計です。

整形結果

仕組みと使い方

これは構造的な整形ツールで、parser・sanitizer・validator ではありません。script を実行せず、エンティティを展開せず、リソースを取得せず、属性値も変更しません。タグ scanner は引用符を認識し、引用符付き属性値の中の「>」でタグを終了せず、引用符付き属性値(内部の空白を含む)はそのまま出力します。空白を畳むのは属性と属性の「間」だけです。タグ・コメント・doctype・raw text 要素・テキストを分割し、2 スペースのインデントで再出力します。void 要素(HTML 仕様の一覧: area, base, br, col, embed, hr, img, input, link, meta, param, source, track, wbr)と自己終了タグはネストを増やしません。リスト・テーブル項目については optional end tag 規則の一部を適用します。テキストノードの空白は 1 つのスペースに畳んで trim するため、空白に依存するインライン配置には安全ではありません。<pre>・<textarea>・<script>・<style> は 1 つの単位として出力し、開始タグはインデントしますが、本文は code unit 単位でそのままコピーします(CR/LF 変換なし、空行削除なし、再インデントなし、終了タグ前への改行追加なし)。そのため出力を再解析すると同じ raw text になります。コメント本文と doctype(引用符付きの PUBLIC/SYSTEM 識別子を含む)も原文どおり保持します。閉じタグの不一致・欠落は寛容に扱い、拒否せず「バランスが取れていない」と表示します。入力は 256 KiB までです。