現在、改行がなく、1行で表示される巨大なHTMLファイルがあります。
Vim(特にmacvim)でフォーマットしたいです。次のオプションを試しましたが、どれもうまくいきませんでした。
プラグインまたはその他の方法でこれを行う方法はありますか?
ありがとう!
それを開始する1つの方法は、すべてのタグを独自の行に分割することです。
:s/<[^>]*>/\r&\r/g
:g/^$/d
フローティングがある場合<
または>
シンボル(例:無効なHTML、JavaScript比較演算子、CSS直接子孫セレクター部分)、これは正しく機能せず、終了タグを実行するようなものに切り替えることができます-<\/[^>]*>
。とにかく、それは確実なスタートを提供します。
デモンストレーション:
このような理想化されたドキュメントで、
<!DOCTYPE html><html><head><title>hello</title></head><body>world</body></html>
これはこれを生成します:
<!DOCTYPE html>
<html>
<head>
<title>
hello
</title>
</head>
<body>
world
</body>
</html>
次に、=
あなたが望むものを生み出します:
<!DOCTYPE html>
<html>
<head>
<title>
hello
</title>
</head>
<body>
world
</body>
</html>
より良い結果を得るには、専用の外部フォーマットプログラムを使用する必要があります。
プラグイン vim-autoformat をインストールすることで、 tidy と html-beautify の両方を自動的に統合できます。その後、1回のキーストロークでインストールされているフォーマッタを実行できます。
整頓されたユーティリティを使用する方が良いでしょう この回答で説明されているように 。
この仕事のために良いツールがすでに書かれています