91303246ecb4f103a1a3e21dfd9bcb65d1d5e832
- Author
- mikka <miklos.martin@gmail.com>
- Committer
- mikka <miklos.martin@gmail.com>
- Date
Message
added lesscss plugin
Diff
1diff --git a/plugins/lesscss/lesscss.plugin.zsh b/plugins/lesscss/lesscss.plugin.zsh
2new file mode 100644
3index 0000000000000000000000000000000000000000..6c666adb20eb038ec4457c8a4d7f343726b98276
4--- /dev/null
5+++ b/plugins/lesscss/lesscss.plugin.zsh
6@@ -0,0 +1,46 @@
7+# basics taken from here:
8+# http://www.ravelrumba.com/blog/watch-compile-less-command-line/comment-page-1/#comment-2464
9+# Requires watchr: https://github.com/mynyml/watchr
10+
11+watchless () {
12+ compressed=0
13+ compile=""
14+
15+ while getopts ":xc:h" option
16+ do
17+ case $option in
18+ x ) compressed=1 ;;
19+ c ) compile=$OPTARG ;;
20+ h ) _watchless_usage; return ;;
21+ esac
22+ done
23+
24+ if [ $compressed -eq 1 ]; then
25+ x=' -x'
26+ else
27+ x=''
28+ fi
29+
30+ if [ -n "$compile" ]; then
31+ if [ ! -e $compile ]; then
32+ echo "\033[337;41m\n$compile doesn't exist!\n\033[0m"
33+ return
34+ fi
35+
36+ name=$(echo $compile | cut -d . -f 1)
37+
38+ watchr -e 'watch(".*\.less$") { |f| system("lessc '$name'.less > '$name'.css'$x' && echo \"'$name'.less > '$name'.css\" ") }'
39+ else
40+ watchr -e 'watch(".*\.less$") { |f| system("lessc #{f[0]} > $(echo #{f[0]} | cut -d\. -f1).css'$x' && echo \"#{f[0]} > $(echo #{f[0]} | cut -d\. -f1).css\" ") }'
41+ fi
42+}
43+
44+_watchless_usage () {
45+ echo "Usage: watchless [options]"
46+ echo
47+ echo "Options"
48+ echo " -x Compiles less files into minified css files"
49+ echo " -c Watch all files but compile only the one given here"
50+ echo " -h Get this help message"
51+ return
52+}