我有一些css代码在这个格式:
a { color: #333; background-color: #fff; }
a:visited { color: #aaa; background-color: #555; }
我想以这种格式得到它:
a {
color: #333;
background-color: #fff;
}
a:visited {
color: #aaa;
background-color: #555;
}
有简单的方法吗?我知道我可以写一个宏来做这个,但是我希望有更好/更简单的解决方案。理想的情况下,我希望能够选择行并做一些类似gq
的事情。
5条答案
按热度按时间qxsslcnc1#
如果文件类型已设置为
CSS
,则可以尝试:至少它对你的例子有效:
0x6upsns2#
您可以使用cssbeautify:
kfgdxczn3#
不是一个确定的答案,但可能会帮助你在正确的方向。我使用了很多vim文件来检测我的代码(不同的语言),我发现我可以用插件复制我的代码,并在运行中将其格式化(例如,PEP-8在做python等)。希望这将对你有一些用处:http://www.vim.org/scripts/script.php?script_id=2981
TotalOpinion-(抱歉!)-祝贺您选择了所有编辑之王!
clj7thdc4#
我已经研究这个问题有一段时间了。但是在我的例子中,我想逐行重新格式化单行css文件,受到肯特的启发,我最终得到了这个:
1.使用可视模式选择要重新格式化的一行或几行
1.类型
'<,'>s/[{;}]/&\r/g|norm! v'<=
处理完重新格式化的css块后,在可视模式下只选择一个css块并按J(大写的j),它将变成一行代码。
PS.抱歉我的英语不好
ee7vknir5#
肯特的回复不能很好地处理更复杂的文件,如this:(W3C参考CSS)
我用另一种方式:
1.将大行拆分为每行一条规则:
1.重新格式化:第一步。对于每个规则,将所有属性放在一行中:
1.重新格式化:第二步。将属性拆分为每行一个:
也许你可以在更少的步骤,但这工程罚款。