Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/less/more

less on rails — the official LESS plugin for Ruby on Rails
https://github.com/less/more

Last synced: about 6 hours ago
JSON representation

less on rails — the official LESS plugin for Ruby on Rails

Awesome Lists containing this project

README

        

### This repo is DEPRECATED and is only here for historical reasons.

More
====

*LESS on Rails.*

More is a plugin for Ruby on Rails applications. It automatically parses your applications `.less` files through LESS and outputs CSS files.

In details, More does the following:

* Recursively looks for LESS (`.less`) files in `app/stylesheets`
* Ignores partials (prefixed with underscore: `_partial.less`) - these can be included with `@import` in your LESS files
* Saves the resulting CSS files to `public/stylesheets` using the same directory structure as `app/stylesheets`

LESS
----

LESS extends CSS with: variables, mixins, operations and nested rules. For more information, see [http://lesscss.org](http://lesscss.org).

Upgrading from less-for-rails
=======================================

The old `less-for-rails` plugin looked for `.less` files in `public/stylesheets`. This plugin looks in `app/stylesheets`.

To migrate, you can either set `Less::More.source_path = Rails.root + "/public/stylesheets"`, or move your `.less` files to `app/stylesheets`.

Installation
============

More depends on the LESS gem. Please install LESS first:

$ gem install less

Rails Plugin
------------

Use this to install as a plugin in a Ruby on Rails app:

$ script/plugin install git://github.com/cloudhead/more.git

Rails Plugin (using git submodules)
-----------------------------------

Use this if you prefer to use git submodules for plugins:

$ git submodule add git://github.com/cloudhead/more.git vendor/plugins/more
$ script/runner vendor/plugins/more/install.rb

Usage
=====

Upon installation, a new directory will be created in `app/stylesheets`. Any LESS file placed in this directory, including subdirectories, will
automatically be parsed through LESS and saved as a corresponding CSS file in `public/stylesheets`. Example:

app/stylesheets/clients/screen.less => public/stylesheets/clients/screen.css

If you prefix a file with an underscore, it is considered to be a partial, and will not be parsed unless included in another file. Example:


@text_dark: #222;


@import "partials/_form";

input { color: @text_dark; }

The example above will result in a single CSS file in `public/stylesheets/clients/screen.css`.

Any `.css` file placed in `app/stylesheets` will be copied into `public/stylesheets` without being parsed through LESS.

Configuration
=============

Source path: the location of your LESS files (default: app/stylesheets)

Less::More.source_path = "public/stylesheets/less"

Destination Path: where the css goes (public/destination_path) (default: stylesheets)

Less::More.destination_path = "css"

More can compress your files by removing extra line breaks (default: true)

Less::More.compression = false

More inserts headers in the generated CSS files, letting people know that the file is in fact generated and shouldn't be edited directly. (default: true)

Less::More.header = false

To configure More for a specific environment, add configuration options into the environment file, such as `config/environments/development.rb`.

If you wish to apply the configuration to all environments, place them in `config/environment.rb`.

Tasks
=====

More provides a set of Rake tasks to help manage your CSS files.

To parse all LESS files and save the resulting CSS files to the destination path, run:

$ rake more:generate

To delete all generated CSS files, run:

$ rake more:clean

This task will not delete any CSS files from the destination path, that does not have a corresponding LESS file in the source path.

Git / SVN
=========

Check in all the generated css(destination path), they are only generated in development

Documentation
=============

To view the full RDoc documentation, go to [http://rdoc.info/projects/cloudhead/more](http://rdoc.info/projects/cloudhead/more)

Contributors
============
* August Lilleaas ([http://github.com/augustl](http://github.com/augustl))
* Logan Raarup ([http://github.com/logandk](http://github.com/logandk))
* Michael Grosser ([http://github.com/grosser](http://github.com/grosser))

LESS is maintained by Alexis Sellier [http://github.com/cloudhead](http://github.com/cloudhead)