oh sweet. thanks for the tip!

Nathan Weizenbaum wrote:
> This functionality isn't really something I want to maintain... I think
> it belongs as a separate project. And, in fact, it already is one ;).
> Check out StaticMatic
> (http://www.stephenbartholomew.co.uk/2007/5/24/staticmatic-new-release-now-on-rubyforge).
>
> - Nathan
>
> Ryan T Mulligan wrote:
> > So maybe Rails is a little to big for some static project you are
> > working on. If this is the case you should still use haml! Why?
> > Because haml is great and saves tons of time. Here is the code I've
> > written to help me out with this.
> >
> > Maybe someone will include something like haml_partial into the repos?
> > Any thoughts?
> >
> > -Ryan Mulligan
> >
> > #RAKEFILE
> > #Basically just put it in your static .haml directory then it will
> > generate .html and .css files alongside these files in the same exact
> > directory.
> > require 'haml/engine'
> > require 'sass/engine'
> >
> > task :default => [:web]
> > task :web => [:haml,:sass]
> >
> > desc 'Compile haml templates to html'
> > task :haml do
> >   dirs =  Dir['**/*.haml']
> >   dirs.each do |f|
> >     File.open(f, 'r') do |fi|
> >       File.open(f.gsub('haml','html'),'w') do |d|
> >         d << Haml::Engine.new(fi.read).to_html
> >       end
> >     end
> >   end
> > end
> >
> > desc 'Compile sass templates to css'
> > task :sass do
> >   dirs =  Dir['**/*.sass']
> >   dirs.each do |f|
> >     File.open(f, 'r') do |fi|
> >       File.open(f.gsub('sass','css'),'w') do |d|
> >         d << Sass::Engine.new(fi.read).to_css
> >       end
> >     end
> >   end
> > end
> >
> >
> > Here is a patch to the haml helpers to create haml_partial which lets
> > you use other haml files as mini-partials. It doesn't support moving
> > variables between them or anything. It's really just to dry up really
> > static stuff.
> >
> > ===================================================================
> > --- haml/helpers.rb     (revision 518)
> > +++ haml/helpers.rb     (working copy)
> > @@ -306,6 +306,20 @@
> >        result.to_s
> >      end
> >
> > +    # Takes in a path to a .haml file which is then parsed inline for
> > the current
> > +    # file.
> > +    #
> > +    #  #Both of these yield same result
> > +    #  =haml_partial('footer')
> > +    #  =haml_partial('footer.haml')
> > +    def haml_partial(path)
> > +      # if we don't have the extension assume it is .haml
> > +      if File.extname(path).empty?
> > +        path += '.haml'
> > +      end
> > +      Haml::Engine.new(File.read(path)).to_html # I doubt this is the
> > most efficient way to do this.
> > +    end
> > +
> >      # Returns whether or not the current template is a Haml template.
> >      #
> >      # This function, unlike other Haml::Helpers functions,
> >
> >
> > >
> >
> >


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Haml" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/haml?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to