我目前有一个巨大的 HTML 文件,它没有换行符,只出现在一行中。
我想在 vim 中格式化它(尤其是 macvim)。我尝试了以下选项,但没有一个对我有用。
有没有办法使用插件或其他方式做到这一点?
谢谢!
最佳答案
启动它的一种方法是将所有标签拆分到自己的行中。
:s/<[^>]*>/\r&\r/g
:g/^$/d
如果您有 float <
或 >
符号(例如无效的 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>
https://stackoverflow.com/questions/9987743/