Я хочу смочь иметь два элемента Haml на той же строке. Например:
%h1 %a{:href => '/'} Professio.
Это не работает. Как я заставил бы что-то вроде этого работать без посредничества?
К сожалению, вы не можете поместить два элемента haml на одной строке.
Вы можете достичь чего-то подобного, используя встроенные html-элементы:
%h1 <a href='/'>Lorem ipsum</a>
Почему вам не нравится этот формат?
%h1
%a{:href => '/'} Professio.
Другой вариант - написать специальный метод 'helper' (который генерирует html-ссылку). Например, link_to в Rails:
%h1= link_to 'Professio', root_url
Если вы хотите сохранить HTML-код в той же строке, вы можете попробовать что-то вроде этого:
irb> print Haml::Engine.new("%h1<\n %a{:href => '/'} Profession.").render()
<h1><b href='/'>Profession.</a></h1>
Здесь найдено: Удаление пробелов HAML
[Edit: я знаю, что выше написано b href ...]