我想在我的 scss 文件中按字母顺序排列 css 选择器(和属性)。我确信 vim 可以做到这一点(即使我需要使用一些外部工具)。您将如何对以下内容进行排序?
h2 {
color:red;
background-color:green;
}
h1 {
font-size:12px;
}
对此:
h1 {
font-size:12px;
}
h2 {
background-color:green;
color:red;
}
对于您的简单示例,以下两个片段似乎有效,但我担心它们可能会因更大、更复杂的 css 而失败。
要订购我使用宏**的属性:
:let @q = "/{^Mvi{:sort^M"|%norm! @q
** 注意这里的 ^M 是用 . 输入的Ctrl-vCtrl-m。
解释:
要订购我使用替代和排序的选择器:
:%s/\v([^}])\n/\1/g|%sort|%s/\v[;{]/&\r/g
解释:
尾随空格会稍微消除这一点,但您没有任何这些,对吧?:)