add little ruby helper to convert uris to NMTOKEN, for XHTML compliant fragment identifiers. is there any browser that still relies on the <a name="foo"/> attribute? if so, it can be added back.
This commit is contained in:
parent
42cb77a1a7
commit
02d432c2ef
@ -165,6 +165,10 @@ module Manual
|
|||||||
position ? [current, position, level + 1] : [current]
|
position ? [current, position, level + 1] : [current]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def sanitize_NMTOKEN(s)
|
||||||
|
'ID'+s.gsub(/[^0-9A-z:_.-]/, '_')
|
||||||
|
end
|
||||||
|
|
||||||
def render(context)
|
def render(context)
|
||||||
|
|
||||||
@source = '_manual' #context.registers[:site].source
|
@source = '_manual' #context.registers[:site].source
|
||||||
@ -201,7 +205,7 @@ module Manual
|
|||||||
|
|
||||||
erb = ::ERB.new <<-HTML
|
erb = ::ERB.new <<-HTML
|
||||||
<dt class="<%= css_classes %>">
|
<dt class="<%= css_classes %>">
|
||||||
<a name="<%= entry[:url] %>" href="<%= entry[:url] %>"><%= entry[:menu_title] %></a>
|
<a id="<%= sanitize_NMTOKEN(entry[:url]) %>" href="<%= entry[:url] %>"><%= entry[:menu_title] %></a>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="<%= css_classes %>">
|
<dd class="<%= css_classes %>">
|
||||||
<% if entry[:children].any? %>
|
<% if entry[:children].any? %>
|
||||||
@ -221,7 +225,7 @@ module Manual
|
|||||||
|
|
||||||
erb = ::ERB.new <<-HTML
|
erb = ::ERB.new <<-HTML
|
||||||
<dt class="<%= css_classes %>">
|
<dt class="<%= css_classes %>">
|
||||||
<a name="<%= entry[:url] %>" href="<%= entry[:url] %>"><%= entry[:menu_title] %></a>
|
<a id="<%= sanitize_NMTOKEN(entry[:url]) %>" href="<%= entry[:url] %>"><%= entry[:menu_title] %></a>
|
||||||
</dt>
|
</dt>
|
||||||
<dd class="<%= css_classes %>">
|
<dd class="<%= css_classes %>">
|
||||||
</dd>
|
</dd>
|
||||||
|
Loading…
Reference in New Issue
Block a user