LESS.app like application?

Recently I found out about an OS X application called LESS.app. It’s basically an app to compile and minify *.less files into *.css files and does it in real-time. I want to know or I can archive the same thing in Ubuntu and how to go about it.


Bryan here. Developer of Less.app.

I highly recommend AGAINST using the older version of LESS (the Ruby-based one). Less.js isn't just a javascript port of LESS, it's a ground-up rewrite that improves a ton of stuff, adds support for things that the old Ruby version doesn't have, and increases compiler speed by about 84%.

Rather than install the Ruby gem, install Node.js and run Less.js through Node from the command line. You'll still have all the -watch functionality, but you'll be using Less.js to do it, which means your life will be much better.

Alternately, use Less.js as a script in the website you're creating. This will work for development. When you're done coding, simply copy the CSS that Less.js generates (from your browser's inspector) and place that into a file, add a .css extension, then remove the Less.js script tag from the HTML pages and substitute the CSS file you just created.

Either way, use Less.js.


Note

Read Bryan's answer. He knows what he's talking about. ;-)

You can just install less.

  1. Install rubygems and less

    sudo apt-get install rubygems
    sudo gem install less
    
  2. The official documentation remarks:

    To make gem work properly you should write gem's path to PATH add to ~/.bashrc:

     export PATH=/var/lib/gems/1.8/bin:$PATH
    
  3. You can then use the less compiler by doing

    lessc style.less
    

I don't think there's a GUI like the one you've linked to. But since it only seems to be a very shallow gui on top of the real less compiler, I don't think you'll have any problems using it directly. Type

lessc --help

to learn how to use it.

If you want your .less files to be automatically compiled every time you change them, you can use the -w option:

~$ lessc test.less -w
* Watching for changes in test.less... Ctrl-C to abort.
: Change detected... * Updated test.css
: Change detected... * Updated test.css

You can put this process in the background by pressing Ctrl+Z and typing bg, and start as many as you like. You can bring them back to the foreground by doing fg, or fg 3 for the third process, to get a list of all of the jobs and their numbers type jobs.


To my knowledge, ruby less isn't updated enough to even handle the concatenation operator.

For those interested in a solution that compiles .less upon save for non mac platforms using less.js, you can check out this installation guide*. Though the tutorial is geared towards Windows users, I imagine if you can get Node.js on your system, the script itself will function the same.

*Disclaimer: This tutorial is mine. Just thought people might want to see specifically what the poster above meant by "Use Node.js". I wasn't able to find any scripts online for using Node.js to compile LESS upon file save, so I cooked one up and thought I would share it.


Under Ubuntu 11.10, you can simply issue a

sudo apt-get install lessc

you can install it the command line compiler in Ubuntu 12.10 as well:

sudo apt-get install node-less