So I've got this chunk of HAML... and it sucks.

%p An error has occurred while processing the request:
%p= error.message
- if error.respond_to?(:backtrace) && error.backtrace != nil
  %p
    ~ "<pre><code>" + error.backtrace.join("\\n") + "</code></pre>"
- else
  %p Backtrace is unavailable.

I'd really prefer not to have to resort to Ruby evaluation to get this
to work.  It seems to me that this should really Just Work.  If I was
working within Rails, I might clean this up with a pre_code_tag helper
or something, but this is in an application that is independent of
ActionView, Rails helper classes, etc., and I don't want to clutter up
my execution context with a pre_code_tag method.

This is really what I'd like to write instead (or something akin to
it):

%p An error has occurred while processing the request:
%p= error.message
- if error.respond_to?(:backtrace) && error.backtrace != nil
  %p
    :noautoindent
      %pre
        %code
          = preserve(error.backtrace.join("\\n"))
- else
  %p Backtrace is unavailable.

This is the output I need to be getting:

<p>
  An error has occurred while processing the request:
</p>
<p>
  Unable to service request, no route found matching '/foo/bar/?
query=baz'.
</p>
<p>
  <pre><code>(irb):2:in `irb_binding'&#x000A;/usr/local/lib/ruby/1.8/
irb/workspace.rb:52:in `irb_binding'&#x000A;/usr/local/lib/ruby/1.8/
irb/workspace.rb:52</code></pre>
</p>

Thoughts?


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