The problem isn't the symbol itself, it's the implementation of the
outer-whitespace-chomping behavior. There's not really a way to do it
without having access to the compilation context.
Miha Filej wrote:
> The short-form syntax looks much nicer! What is the problem with :>?
>
> Irb seems to be okay with it:
>
>>> :>.to_s
>>>
> => ">"
>
>
>
> On Fri, Jun 6, 2008 at 3:33 AM, Nathan Weizenbaum <[EMAIL PROTECTED]> wrote:
>
>> I've implemented this with short-form attributes (:/ etc.). However, it
>> looks like it may not be possible to implement :>.
>>
>> Nathan Weizenbaum wrote:
>>
>>> I just realized I put the wrong method signatures here. I meant
>>>
>>> haml_tag(name, *haml_attributes, html_attributes = {}) {...}
>>> haml_tag(name, text, *haml_attributes, html_attributes = {}) {...}
>>>
>>> We could also use less-verbose attribute names, e.g. haml_tag(:p, :>,
>>> :<) { stuff }. Thoughts?
>>>
>>> Nathan Weizenbaum wrote:
>>>
>>>> Rymaï's solution would work. The problem with multiple methods is
>>>> that we probably also want to add support for self-closing tags,
>>>> which makes for way too many methods. Maybe something like
>>>>
>>>> haml_tag(name, html_attributes = {}, haml_attributes = {}) {...}
>>>> haml_tag(name, text, html_attributes = {}, haml_attributes = {}) {...}
>>>>
>>>> So you could call it as haml_tag(:p, :chomp_outer_whitespace) { stuff }.
>>>>
>>>> On Tue, Jun 3, 2008 at 8:37 AM, [EMAIL PROTECTED]
>>>> <mailto:[EMAIL PROTECTED]> <[EMAIL PROTECTED]
>>>> <mailto:[EMAIL PROTECTED]>> wrote:
>>>>
>>>>
>>>> I think its easier if we separate in 3 diferent methods:
>>>> haml_tag, haml_tag_inside and haml_tag_outside. This can be
>>>> metaprogrammed easily (I think) and is compatible with older
>>>> versions.
>>>>
>>>>
>>>> On 2 jun, 15:18, Rymaï <[EMAIL PROTECTED]
>>>> <mailto:[EMAIL PROTECTED]>> wrote:
>>>> > I don't really understand, do you mean that automatically
>>>> > ":chomp_whitespace => :all" is transformed to
>>>> > "chomp_whitespace='all'" ?
>>>> >
>>>> > In this case, maybe you should add an argument to the #haml_tag
>>>> > method:
>>>> >
>>>> > haml_tag(name, html_attributes = {}, haml_attributes = {}) {...}
>>>> > haml_tag(name, text, html_attributes = {}, haml_attributes = {})
>>>> {...}
>>>> >
>>>> > Just a though...
>>>> >
>>>> > On Jun 2, 11:53 am, Nathan Weizenbaum <[EMAIL PROTECTED]
>>>> <mailto:[EMAIL PROTECTED]>> wrote:
>>>> >
>>>> > > The problem with this is that it makes it impossible to
>>>> generate <img
>>>> > > chomp_whitespace='all' /> and the like. While this probably
>>>> won't come
>>>> > > up in practice, the inconsistency worries me.
>>>> >
>>>> > > Rymaï wrote:
>>>> > > > Something like:
>>>> >
>>>> > > > haml_tag(:blockquote, :chomp_whitespace => :outside) do
>>>> > > > haml_tag(:p, :chomp_whitespace => :inside) do
>>>> > > > Foo
>>>> > > > Bar
>>>> > > > end
>>>> > > > haml_tag(:img, :chomp_whitespace => :all)
>>>> > > > end
>>>> >
>>>> > > > Would be cool, though, maybe a more concise way would be
>>>> better... :)
>>>> >
>>>> > > > On Jun 1, 6:25 pm, Nathan Weizenbaum <[EMAIL PROTECTED]
>>>> <mailto:[EMAIL PROTECTED]>> wrote:
>>>> >
>>>> > > >> Yeah, that would be good. I'd also like some way to create
>>>> self-closing
>>>> > > >> tags. I'm not sure what the syntax would be, though... any
>>>> suggestions?
>>>> >
>>>> > > >> Rymaï wrote:
>>>> >
>>>> > > >>> Hi,
>>>> >
>>>> > > >>> Can we emulate '<' and '>' for #haml_tag method ?
>>>> >
>>>> > > >>> Thanks,
>>>> >
>>>> > > >>> Rémy.
>>>> >
>>>> > > >>> On May 10, 11:18 pm, Nathan Weizenbaum <[EMAIL PROTECTED]
>>>> <mailto:[EMAIL PROTECTED]>> wrote:
>>>> >
>>>> > > >>>> Hi folks,
>>>> >
>>>> > > >>>> The single longest-standing and most egregious lack of
>>>> functionality in
>>>> > > >>>> Haml, as detailed
>>>> inhttp://nex-3.com/posts/75-haml-whitespace-handling-sucks-too
>>>> <http://nex-3.com/posts/75-haml-whitespace-handling-sucks-too>, has
>>>> > > >>>> finally been fixed. It's now possible to get Haml *not*
>>>> to insertwhitespaceeither around or within tags.
>>>> >
>>>> > > >>>> The syntax for this is angle brackets, > or <, placed at
>>>> the end of a
>>>> > > >>>> tag (after the attributes but before = or / if you have
>>>> them). You can
>>>> > > >>>> think of them as alligators, chomping onwhitespace. > is
>>>> chomping thewhitespaceon the outside:
>>>> >
>>>> > > >>>> %blockquote
>>>> > > >>>> %p>
>>>> > > >>>> Foo
>>>> > > >>>> Bar
>>>> >
>>>> > > >>>> =>
>>>> >
>>>> > > >>>> <blockquote><p>
>>>> > > >>>> Foo
>>>> > > >>>> Bar
>>>> > > >>>> </p></blockquote>
>>>> >
>>>> > > >>>> And < is chomping thewhitespaceon the inside:
>>>> >
>>>> > > >>>> %blockquote
>>>> > > >>>> %p<
>>>> > > >>>> Foo
>>>> > > >>>> Bar
>>>> >
>>>> > > >>>> =>
>>>> >
>>>> > > >>>> <blockquote>
>>>> > > >>>> <p>Foo
>>>> > > >>>> Bar</p>
>>>> > > >>>> </blockquote>
>>>> >
>>>> > > >>>> These aren't the best examples, because they're not
>>>> terribly useful. But
>>>> > > >>>> you can also do stuff like
>>>> >
>>>> > > >>>> %img
>>>> > > >>>> %img>
>>>> > > >>>> %img
>>>> >
>>>> > > >>>> =>
>>>> >
>>>> > > >>>> <img /><img /><img />
>>>> >
>>>> > > >>>> Or
>>>> >
>>>> > > >>>> %pre<
>>>> > > >>>> :preserve
>>>> > > >>>> Foo
>>>> > > >>>> Bar
>>>> > > >>>> Baz
>>>> >
>>>> > > >>>> =>
>>>> >
>>>> > > >>>> <pre>Foo
 Bar
 Baz
</pre>
>>>> >
>>>> > > >>>> You can use this right now by getting Haml from
>>>> > > >>>> git://github.com/nex3/haml.git
>>>> <http://github.com/nex3/haml.git> and running "rake install" to
>>>> install it
>>>> > > >>>> as a gem.
>>>> >
>>>> > > >>>> Many thanks to everyone who helped out with brainstorming
>>>> how this
>>>> > > >>>> feature should work, including Evgeny Zislis and Sunny
>>>> Ripert on my
>>>> > > >>>> blog, Nathan Sutton and Dustin Sallings on #haml on
>>>> freenode, and many
>>>> > > >>>> people in various conversations on this mailing list.
>>>> >
>>>> > > >>>> - Nathan
>>>> >>
>>>>
>>>>
>>>
>>
>
> >
>
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---