在mac os x中自动编译较少的css文件

时间:2011-11-10 21:44:32

标签: css automation less

我开始使用较少的CSS。

我编写了一个小的bash脚本,它使用我的目标文件调用“lessc”命令,然后将其传送到我已完成的css文件中。它看起来像这样:

#!/bin/bash
lessc ~/Documents/Development/Projects/blog/static/css/global.less --watch > ~/Documents/Development/Projects/blog/static/css/styles.css -x

这个-x标志压缩CSS。

正如你所看到的,我已经尝试使用--watch标志,根据我的理解,这意味着每次你对较少的文件进行更改时它会自动重新编译CSS。但这似乎不起作用。

我意识到我可以使用某人写的“少app”,但我很好奇自己如何做到这一点,因为它显然是可能的。

1 个答案:

答案 0 :(得分:2)

由于不常使用@imports,因此它是一种过度设计的解决方案,可以观看所涉及的所有文件。您可以使用一个简单的循环来经常编译,例如:

while true; do lessc bootstrap.less > bootstrap.css 2> /dev/null; sleep 5; done

如果这太简单了,那么你可以尝试在Bash中使用-nt测试,例如测试一个文件的mtime是否比另一个更新(假设bootstrap.less包含一个@inmport for custom.less):

while true
do
    if [ bootstrap.less -nt bootstrap.css ] || [ custom.less -nt bootstrap.css ]; then
        echo "Change detected, regenerating @ $(date)"
        lessc bootstrap.less > bootstrap.css
    fi
    sleep 5
done