Haml::More and Sass::More
June 9, 2010 ยท View on GitHub
Adds more functionality to Haml and Sass. Haml helpers detect if called from another context, so they are usable with Erb and friends.
BigBand
Haml::More and Sass::More are part of the BigBand stack. Check it out if you are looking for fancy Sinatra extensions.
Haml extensions
-
content_forandyield_content(like in Rails, you know?)// some_file.haml = yield_content(:foo) .content = haml :another_file // another_file.haml - content_for(:foo) %b bar .something %h1 cool, huh? -
adds
:coffee_scriptfor inline CoffeeScript%head %title CoffeScript example :coffee_script if happy and knows_it claps_hands() cha_cha_cha() %body content
SassScript extensions
-
minandmax.someClass width = max(100px, !someSize * 3) height = min(!a, !b, 20%)
Usage with Sinatra
Classic style:
require "sinatra"
require "haml/more"
Modular:
require "sinatra/base"
require "haml/more"
class Foo < Sinatra::Base
helpers Haml::More
end
Usage without Sinatra
Using just Sass::More (if you're in Merb or Rails):
# in some initializer or something
require "sass/more"
Without anything:
require "haml/more"
scope = Object.new
scope.extend Haml::More
puts Haml::Engine.new("%p some haml code").render(scope)