libsass-python 编译文件

2 投票
2 回答
2549 浏览
提问于 2025-04-18 14:35

我最近发现了一个很棒的Python库,可以非常快速地编译SASS!libsass-python看起来非常不错,而且速度真的很快。

我该如何使用它来监视SASS文件夹或文件的任何变化,并将其编译成CSS呢?我不太明白如何传递文件,以及如何使用--watch选项。

谢谢!

2 个回答

1

你可以试试 Boussole,它是基于 libsass-python 的,可以为每个项目单独配置,并且有一个“监视”命令(使用 watchdog)。

在你的 scss 源文件夹的上层目录,使用:

boussole startproject

如果需要的话,你可以修改设置选项(从生成的 settings.json 文件中),然后输入:

boussole watch
0

这里提到的解决方案(--watch 选项)在 libsaas-python 的 0.13.0 版本中被移除了,这个版本是在 2017 年发布的,具体可以查看发布说明

所以这个解决方案现在已经不再有效了。作为替代,你可以使用boussole,这个在后面的回答中有提到。

如果你使用的版本低于 0.13.0,下面的内容可以参考,否则可以忽略。


根据帮助说明(http://hongminhee.org/libsass-python/sassc.html),你可以通过以下方式监视文件的修改:

$ sassc --watch source.scss target.css

我知道你想监视一个文件夹中的所有文件,但看起来命令行工具并不支持这个功能。

根据我的了解,有两个可能的解决办法。

1:启动多个 sassc 实例,每个文件一个。这种方法虽然有点“脏”,但不需要太多努力,如果文件不多的话也还可以。记得要结束所有的进程(比如用 killall)。

$ sassc --watch a.scss a.css & sassc --watch b.scss b.css # etc.

这确实不是处理事情的好方法,但如果你很着急,可以暂时用一下。

2:在一个 Python 程序中使用 libsass,当监视的文件被保存时触发编译。为此,你可以使用其他库,比如watchdog 或者 pyinotify

这似乎是处理事情的更好方法。

希望这些信息对你有帮助,祝好运!

撰写回答