使用 vimscript (vimrc) 自动编译 Sass\Scss
Autocompiling Sass\Scss using vimscript (vimrc)
我想要:在保存时自动将 sass/scss 个文件自动编译为 .css。
我做了什么:
init.vim (vimrc):
autocmd bufwritepost *.sass,*.scss silent exec "!sass %:p %:r.css"
它工作正常,但是当我想更改一些模块时:_module.sass,显然,命令执行并且我有不必要的编译 _module.css 在我的项目文件夹中(不需要,因为我已经将它包含在 main.sass 中,我不需要它单独编译)。
可能的解决方案是添加一些 if 语句,该语句将使用正则表达式检查文件名是否以“_”符号开头,但我不知道如何实现这个逻辑。
如果您只希望 autocmd
在文件名不以下划线开头时触发,您可以使用
autocmd bufwritepost [^_]*.sass,[^_]*.scss silent exec "!sass %:p %:r.css"
您可以使用 vim 的内置帮助阅读 autocmd
模式的所有规则:
:h autocmd-pattern
我想要:在保存时自动将 sass/scss 个文件自动编译为 .css。
我做了什么:
init.vim (vimrc):
autocmd bufwritepost *.sass,*.scss silent exec "!sass %:p %:r.css"
它工作正常,但是当我想更改一些模块时:_module.sass,显然,命令执行并且我有不必要的编译 _module.css 在我的项目文件夹中(不需要,因为我已经将它包含在 main.sass 中,我不需要它单独编译)。
可能的解决方案是添加一些 if 语句,该语句将使用正则表达式检查文件名是否以“_”符号开头,但我不知道如何实现这个逻辑。
如果您只希望 autocmd
在文件名不以下划线开头时触发,您可以使用
autocmd bufwritepost [^_]*.sass,[^_]*.scss silent exec "!sass %:p %:r.css"
您可以使用 vim 的内置帮助阅读 autocmd
模式的所有规则:
:h autocmd-pattern