# This file is part of NIT ( http://www.nitlanguage.org ).
+#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
redef fun add_headline(v, block) do
# save headline
- var txt = block.block.first_line.value
+ var txt = block.block.first_line.as(not null).value
var id = strip_id(txt)
var lvl = block.depth
headlines[id] = new HeadLine(id, txt, lvl)
redef fun add_code(v, block) do
if block isa BlockFence and block.meta != null then
- v.add "~~~{block.meta.to_s}"
+ v.add "~~~{block.meta.as(not null).to_s}"
else
v.add "~~~"
end
in_orderedlist = true
current_li = 0
v.emit_in block
- in_unorderedlist = false
+ in_orderedlist = false
end
private var in_orderedlist = false
private var current_li = 0
private var allowed_id_chars: Array[Char] = ['-', '_', ':', '.']
end
+
+# Decorator for span elements.
+#
+# InlineDecorator does not decorate things like paragraphs or headers.
+class InlineDecorator
+ super HTMLDecorator
+
+ redef fun add_paragraph(v, block) do v.emit_in block
+ redef fun add_headline(v, block) do v.emit_in block
+
+ redef fun add_code(v, block) do
+ v.add "<code>"
+ v.emit_in block
+ v.add "</code>"
+ end
+end