【问题标题】:libsass-python compile a filelibsass-python 编译文件
【发布时间】:2014-09-15 19:32:25
【问题描述】:

我最近发现了一个非常棒的 Python 库,它可以非常快地编译 SASS! libsass-python 好像非常好,非常快

如何使用它来监视 sass 文件夹或文件中的任何更改并在 CSS 中编译它? 我不明白如何传递文件以及如何使用 --watch 选项

谢谢!

【问题讨论】:

  • 使用 libsass-python 无法监视文件夹。
  • 像@sveetch 提到的那样使用 Boussole!

标签: python css compilation sass


【解决方案1】:

您可以尝试Boussole,它在每个项目配置的 libsass-python 之上运行,并带有“监视”命令(使用 watchdog)。

在你的 scss 源目录的顶级父目录上,使用:

boussole startproject

如果需要,您可以更改设置选项(从生成的settings.json)然后输入:

boussole watch

【讨论】:

  • 谢谢!这有效,接受的答案无效!
【解决方案2】:

此处描述的解决方案(--watch 选项)自 2017 年发布的版本 0.13.0 (release notes) 以来已从 libsaas-python 中删除。

因此,此解决方案将不再有效。 作为替代,您可以使用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,当监视的文件被保存时会触发编译。为此,您可以使用另一个库,例如 watchdogpyinotify

这似乎是一种更好的处理方式。

希望这有帮助,祝你好运!

【讨论】:

  • 这是我在使用之前的想法,但是没有watch选项在命令行中试试sassc -h
  • 很奇怪。我自己也试过--watch 选项。使用与pip 一起安装的 0.5.0 版本。你呢?
  • 我确实在 OSX 上使用pip install libsass 进行了安装然后,这是sassc: unrecognized option --watch 的结果我还尝试在 py 代码中找到任何字符串“watch”,但根本没有匹配项。跨度>
  • 对不起。我发现了问题,你是对的。我之前安装了一个 C++ 版本,我在 /usr/bin 中有一个符号链接;所以当我尝试调用sassc 时,我实际上使用的是 C++ 版本。谢谢你的帮助!!
  • 感谢 Jacob 指出这一点。在发布答案几年后,该选项已从 libsass 中删除。我在顶部添加了一个小注释,以反映此方法已过时。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多