Как запретить маруку создавать идентификаторы самостоятельно

Я использую Maruku в качестве фильтра уценки в HAML, и он создает огромные бесполезные (для меня) идентификаторы для каждого отдельного заголовка.

Итак, если у меня есть что-то вроде этого

## This is a header

Это сделает

<h2 id="this_is_a_header">This is a header</h2>

Что в определенный момент начинает становиться нелепым и заполняет мой HTML кучей идентификаторов, которые мне не нужны и не нужны, поскольку Maruku предоставляет мне способ предоставить свои собственные идентификаторы,

## {#id} This is a header

Есть ли способ предотвратить его поведение?


person user137369    schedule 21.09.2012    source источник


Ответы (1)


Maruku устарел, и вместо этого вам следует рассмотреть возможность перехода на kramdown (теперь с лицензией MIT).

kramdown позволяет вам отключить автоматическое создание идентификаторов заголовков, например < /а>:

puts Kramdown::Document.new("# Header with spaces #", :auto_ids => false).to_html

Также в kramdown, если вы хотите установить свой собственный идентификатор атрибут в заголовке, вы можете сделать следующее:

raw_text = "# Header with spaces #
  {: #pumice-stone}"

puts Kramdown::Document.new(raw_text, :auto_ids => false).to_html

Выход:

<h1 id="pumice-stone">Header with spaces</h1>

Имейте в виду, что настраиваемый атрибут ({: #pumice-stone}) следует в строке непосредственно под элементом уровня блока, к которому вы хотите его применить.

person random    schedule 24.10.2013