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 -~----------~----~----~----~------~----~------~--~---
