I thought :ugly was documented with the other options, but apparently 
it's not. I'll fix this as soon as I can. I'll update the options docs 
while I'm at it.

In the meantime, :ugly makes Haml forego pretty-printing the resulting 
HTML, which makes it nasty to read but somewhat faster (in the master 
branch, kind of a lot faster) to produce.

Bradley Grzesiak wrote:
> A small request:
>
> First off, I cannot find any reference to :ugly in the haml or sass 
> rdocs. What does it do? Also, perhaps this solution could be included 
> into the official docs? If I had not seen this thread, I'm sure I 
> would have come across this "bug"/change-in-how-rails-handles-things 
> at some point. Something to the effect of "As of Rails 2.2, setting 
> options in environment.rb no longer works. Instead, you must make the 
> change in an initializers file."
>
> And maybe it's a good idea to have `haml --rails project_name` create 
> an initializers file with a quick comment as an example?
>
> Thanks, and keep up the great work. I would have forked and made a 
> pull request with this, but, as stated above, I know nothing about :ugly.
>
> :brad
>
> On Tue, Jan 6, 2009 at 8:36 AM, Wincent Colaiuta <[email protected] 
> <mailto:[email protected]>> wrote:
>
>
>     On 6 ene, 06:43, "Nathan Weizenbaum" <[email protected]
>     <mailto:[email protected]>> wrote:
>     > A few possibilities spring to my mind. Rails has some weird
>     plugin-loading
>     > corner cases, so it's possible that there's a different (older)
>     version of
>     > Haml installed there that's getting loaded instead of the one
>     you expect.
>     > You might try checking out Haml::VERSION. It could also be that
>     your options
>     > aren't getting loaded properly; try printing _hamlout.options
>     within a
>     > template and seeing what's there.
>
>     Thanks very much Nathan. Emitting Haml::VERSION in a template yields:
>
>     2.0.6
>
>     And _hamlout.options yields:
>
>     {:preserve=>["textarea", "pre"], :attr_wrapper=>"'", :autoclose=>
>     ["meta", "img", "link", "br", "hr", "input", "area", "param", "col",
>     "base"], :ugly=>false, :format=>:xhtml}
>
>     So that narrows things down quite a bit. I had actually already
>     inspected Haml::Template::options[:ugly] and that returns true. As
>     soon as I saw the discrepancy I knew what the problem would be because
>     I'd seen it before in other areas.
>
>     Turns out to be a another load-ordering issue, the first of quite a
>     few I've run into with the latest rails.
>
>     Basically, there are three places you can have
>     "Haml::Template::options
>     [:ugly] = true" during application startup.
>
>     1. in environment.rb, _inside_ the Rails::Initializer.run block, after
>     your "config.gem 'haml'" declaration
>
>     2. in environment.rb, _after_ the Rails::Initializer.run block
>
>     3. in an initializer in config/initializers
>
>     Option "1" won't work because Haml hasn't been loaded yet.
>
>     Option "2" used to work but doesn't any more because as of Rails 2.2
>     it seems, Haml is already loaded at that point, set up, and presumably
>     the templates are precompiled (my understanding of exactly what has
>     happened by that point is a bit fuzzy, but that's the basic gist of
>     it). Whatever the exact mechanics of it, but the time you set "ugly"
>     to true it's already too late.
>
>     Option "3" is the right one and fixes the problem. These initializers
>     are evaluated at the end of the initializer block, before returning
>     control to the rest of the environment.rb file, but presumably _after_
>     loading Haml and _before_ doing some other initialization.
>
>     The reason I saw it on my development machine is because locally I
>     have class caching (config.cache_classes) turned off in the
>     development environment, and the sensitivity to load ordering only
>     manifests itself when class caching is turned on, as is the case on
>     the production machine.
>
>     Should have realized this of course seeing as it's actually about the
>     fourth time I've been bitten by this change in the move to Rails 2.2,
>     but like I said, it was 5 AM and I was running out of ideas...
>
>     So that's very much for your help Nathan. Hopefully my comments here
>     may be of use to anybody else who runs into the problem.
>
>     Cheers,
>     Wincent
>
>
>
>
>
>
> -- 
> Bradley Grzesiak
> [email protected] <mailto:[email protected]>
> http://toleoandbeyond.blogspot.com
>
> * You have received an email from my personal account. Please do not 
> divulge this address to any website (eg: evite, shutterfly, etc). I 
> have another address for such uses; please ask me for it.
>
> >


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