kramdown 2.4.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CONTRIBUTERS +10 -1
- data/VERSION +1 -1
- data/bin/kramdown +15 -12
- data/lib/kramdown/converter/base.rb +2 -2
- data/lib/kramdown/converter/html.rb +22 -14
- data/lib/kramdown/converter/kramdown.rb +25 -20
- data/lib/kramdown/converter/latex.rb +11 -10
- data/lib/kramdown/converter/man.rb +3 -3
- data/lib/kramdown/converter/math_engine/mathjax.rb +1 -1
- data/lib/kramdown/converter/remove_html_tags.rb +5 -4
- data/lib/kramdown/document.rb +1 -1
- data/lib/kramdown/element.rb +1 -1
- data/lib/kramdown/options.rb +43 -15
- data/lib/kramdown/parser/base.rb +6 -0
- data/lib/kramdown/parser/html.rb +24 -18
- data/lib/kramdown/parser/kramdown/abbreviation.rb +4 -2
- data/lib/kramdown/parser/kramdown/codespan.rb +1 -1
- data/lib/kramdown/parser/kramdown/emphasis.rb +6 -1
- data/lib/kramdown/parser/kramdown/escaped_chars.rb +1 -1
- data/lib/kramdown/parser/kramdown/extensions.rb +6 -6
- data/lib/kramdown/parser/kramdown/html.rb +26 -23
- data/lib/kramdown/parser/kramdown/html_entity.rb +1 -1
- data/lib/kramdown/parser/kramdown/link.rb +4 -4
- data/lib/kramdown/parser/kramdown/list.rb +19 -18
- data/lib/kramdown/parser/kramdown/smart_quotes.rb +1 -1
- data/lib/kramdown/parser/kramdown.rb +5 -4
- data/lib/kramdown/utils/entities.rb +661 -5
- data/lib/kramdown/utils/html.rb +1 -1
- data/lib/kramdown/utils/unidecoder.rb +9 -13
- data/lib/kramdown/version.rb +1 -1
- data/man/man1/kramdown.1 +18 -0
- data/test/test_files.rb +8 -0
- data/test/testcases/block/04_header/with_header_links.html +7 -0
- data/test/testcases/block/04_header/with_header_links.options +2 -0
- data/test/testcases/block/04_header/with_header_links.text +8 -0
- data/test/testcases/block/04_header/with_line_break.html +1 -0
- data/test/testcases/block/04_header/with_line_break.text +1 -0
- data/test/testcases/block/08_list/escaping.html +4 -0
- data/test/testcases/block/08_list/escaping.text +4 -0
- data/test/testcases/block/08_list/nested_compact.kramdown +7 -0
- data/test/testcases/block/08_list/nested_compact.text +6 -0
- data/test/testcases/block/08_list/special_cases.html +10 -0
- data/test/testcases/block/08_list/special_cases.text +9 -0
- data/test/testcases/block/09_html/cdata_section.html +10 -0
- data/test/testcases/block/09_html/cdata_section.text +10 -0
- data/test/testcases/block/09_html/html_to_native/table_simple.html +3 -0
- data/test/testcases/block/09_html/html_to_native/table_simple.text +3 -0
- data/test/testcases/block/12_extension/options.html +2 -2
- data/test/testcases/block/12_extension/options2.html +2 -2
- data/test/testcases/block/14_table/table_with_footnote.html +2 -2
- data/test/testcases/block/16_toc/toc_with_footnotes.html +2 -2
- data/test/testcases/span/02_emphasis/normal.html +6 -1
- data/test/testcases/span/02_emphasis/normal.text +5 -0
- data/test/testcases/span/04_footnote/backlink_inline.html +10 -10
- data/test/testcases/span/04_footnote/backlink_text.html +2 -2
- data/test/testcases/span/04_footnote/footnote_link_text.html +12 -0
- data/test/testcases/span/04_footnote/footnote_link_text.options +1 -0
- data/test/testcases/span/04_footnote/footnote_link_text.text +4 -0
- data/test/testcases/span/04_footnote/footnote_nr.html +3 -3
- data/test/testcases/span/04_footnote/footnote_prefix.html +3 -3
- data/test/testcases/span/04_footnote/inside_footnote.html +6 -6
- data/test/testcases/span/04_footnote/markers.html +10 -10
- data/test/testcases/span/04_footnote/placement.html +2 -2
- data/test/testcases/span/04_footnote/regexp_problem.html +2 -2
- data/test/testcases/span/04_footnote/without_backlink.html +2 -2
- data/test/testcases/span/abbreviations/abbrev.html +4 -0
- data/test/testcases/span/abbreviations/abbrev.text +7 -0
- data/test/testcases/span/abbreviations/in_footnote.html +2 -2
- metadata +21 -9
@@ -20,12 +20,7 @@ module Kramdown
|
|
20
20
|
File.directory?(File.join(File.expand_path(dir), "stringex", "unidecoder_data"))
|
21
21
|
end
|
22
22
|
|
23
|
-
if
|
24
|
-
def self.decode(string)
|
25
|
-
string
|
26
|
-
end
|
27
|
-
else
|
28
|
-
|
23
|
+
if path
|
29
24
|
CODEPOINTS = Hash.new do |h, k|
|
30
25
|
h[k] = YAML.load_file(File.join(path, "stringex", "unidecoder_data", "#{k}.yml"))
|
31
26
|
end
|
@@ -33,15 +28,16 @@ module Kramdown
|
|
33
28
|
# Transliterate string from Unicode into ASCII.
|
34
29
|
def self.decode(string)
|
35
30
|
string.gsub(/[^\x00-\x7f]/u) do |codepoint|
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
"?"
|
41
|
-
end
|
31
|
+
unpacked = codepoint.unpack1("U")
|
32
|
+
CODEPOINTS[sprintf("x%02x", unpacked >> 8)][unpacked & 255]
|
33
|
+
rescue StandardError
|
34
|
+
"?"
|
42
35
|
end
|
43
36
|
end
|
44
|
-
|
37
|
+
else
|
38
|
+
def self.decode(string)
|
39
|
+
string
|
40
|
+
end
|
45
41
|
end
|
46
42
|
|
47
43
|
end
|
data/lib/kramdown/version.rb
CHANGED
data/man/man1/kramdown.1
CHANGED
@@ -100,6 +100,15 @@ Setting this option to true tries to place the footnote backlink in the last, po
|
|
100
100
|
Default: false Used by: HTML converter
|
101
101
|
.RE
|
102
102
|
.TP
|
103
|
+
\fB\-\-footnote\-link\-text\fP \fIARG\fP
|
104
|
+
The text used for the footnote number in a footnote link
|
105
|
+
.RS
|
106
|
+
.P
|
107
|
+
This option can be used to add additional text to the footnote link\. It should be a format string, and is passed the footnote number as the only argument to the format string\. e\.g\. \[u201c][footnote %s]\[u201d] would display as \[u201c][footnote 1]\[u201d]\&\.
|
108
|
+
.P
|
109
|
+
Default: \[u2018]%s\[u2019] Used by: HTML
|
110
|
+
.RE
|
111
|
+
.TP
|
103
112
|
\fB\-\-footnote\-nr\fP \fIARG\fP
|
104
113
|
The number of the first footnote
|
105
114
|
.RS
|
@@ -127,6 +136,15 @@ The value needs to be an array of option names\.
|
|
127
136
|
Default: [template] Used by: HTML converter
|
128
137
|
.RE
|
129
138
|
.TP
|
139
|
+
\fB\-\-[no\-]header\-links\fP
|
140
|
+
Adds anchor tags within headers that can be used to generate permalinks when not using a table of contents\.
|
141
|
+
.RS
|
142
|
+
.P
|
143
|
+
The anchor tags are empty, but can be styled to your liking\.
|
144
|
+
.P
|
145
|
+
Default: false
|
146
|
+
.RE
|
147
|
+
.TP
|
130
148
|
\fB\-\-header\-offset\fP \fIARG\fP
|
131
149
|
Sets the output offset for headers
|
132
150
|
.RS
|
data/test/test_files.rb
CHANGED
@@ -86,6 +86,7 @@ class TestFiles < Minitest::Test
|
|
86
86
|
'test/testcases/span/05_html/mark_element.html', # bc of tidy
|
87
87
|
'test/testcases/block/09_html/xml.html', # bc of tidy
|
88
88
|
'test/testcases/span/05_html/xml.html', # bc of tidy
|
89
|
+
'test/testcases/block/04_header/with_header_links.html', # because of header_links option
|
89
90
|
].compact
|
90
91
|
EXCLUDE_HTML_TEXT_FILES = [
|
91
92
|
'test/testcases/block/09_html/parse_as_span.htmlinput',
|
@@ -138,6 +139,7 @@ class TestFiles < Minitest::Test
|
|
138
139
|
'test/testcases/block/06_codeblock/with_lang_in_fenced_block_any_char.text',
|
139
140
|
'test/testcases/block/03_paragraph/standalone_image.text', # bc of standalone image
|
140
141
|
'test/testcases/cjk-line-break.text', # latex unicode support
|
142
|
+
'test/testcases/block/04_header/with_auto_ids.text', # bc of Unicode characters
|
141
143
|
].compact
|
142
144
|
Dir[File.dirname(__FILE__) + '/testcases/**/*.text'].each do |text_file|
|
143
145
|
next if EXCLUDE_LATEX_FILES.any? {|f| text_file =~ /#{f}$/ }
|
@@ -240,6 +242,7 @@ class TestFiles < Minitest::Test
|
|
240
242
|
'test/testcases/span/04_footnote/backlink_inline.html', # bc of mathjax
|
241
243
|
'test/testcases/block/09_html/standalone_image_in_div.html', # bc of standalone image
|
242
244
|
'test/testcases/block/09_html/processing_instruction.html', # bc of PI
|
245
|
+
'test/testcases/block/04_header/with_header_links.html', # bc of header_links option
|
243
246
|
].compact
|
244
247
|
Dir[File.dirname(__FILE__) + '/testcases/**/*.html'].each do |html_file|
|
245
248
|
next if EXCLUDE_HTML_KD_FILES.any? {|f| html_file =~ /#{f}$/ }
|
@@ -266,6 +269,7 @@ class TestFiles < Minitest::Test
|
|
266
269
|
|
267
270
|
EXCLUDE_MODIFY = [
|
268
271
|
'test/testcases/block/06_codeblock/rouge/multiple.text', # bc of HTMLFormater in options
|
272
|
+
'test/testcases/block/04_header/with_header_links.text', # bc of header_links option
|
269
273
|
].compact
|
270
274
|
|
271
275
|
# Generate test methods for asserting that converters don't modify the document tree.
|
@@ -278,7 +282,11 @@ class TestFiles < Minitest::Test
|
|
278
282
|
define_method("test_whether_#{conv_class}_modifies_tree_with_file_#{text_file.tr('.', '_')}") do
|
279
283
|
doc = Kramdown::Document.new(File.read(text_file), options)
|
280
284
|
options_before = Marshal.load(Marshal.dump(doc.options))
|
285
|
+
abbrev_proc = doc.root.options[:abbrev_defs].default_proc
|
286
|
+
doc.root.options[:abbrev_defs].default_proc = doc.root.options[:abbrev_attr].default_proc = nil
|
281
287
|
tree_before = Marshal.load(Marshal.dump(doc.root))
|
288
|
+
doc.root.options[:abbrev_defs].default_proc = doc.root.options[:abbrev_attr].default_proc =
|
289
|
+
abbrev_proc
|
282
290
|
Kramdown::Converter.const_get(conv_class).convert(doc.root, doc.options)
|
283
291
|
assert_equal(options_before, doc.options)
|
284
292
|
assert_tree_not_changed(tree_before, doc.root)
|
@@ -0,0 +1 @@
|
|
1
|
+
<h1>foo<br />bar</h1>
|
@@ -0,0 +1 @@
|
|
1
|
+
# foo<br />bar
|
@@ -10,11 +10,11 @@ some <span>*para*</span>
|
|
10
10
|
<p>some <span><em>para</em></span></p>
|
11
11
|
</div>
|
12
12
|
|
13
|
-
<p>Some text<sup id="fnref:ab"
|
13
|
+
<p>Some text<sup id="fnref:ab"><a href="#fn:ab" class="footnote" rel="footnote" role="doc-noteref">10</a></sup>.</p>
|
14
14
|
|
15
15
|
<div class="footnotes" role="doc-endnotes">
|
16
16
|
<ol start="10">
|
17
|
-
<li id="fn:ab"
|
17
|
+
<li id="fn:ab">
|
18
18
|
<p>Some text. <a href="#fnref:ab" class="reversefootnote" role="doc-backlink">↩</a></p>
|
19
19
|
</li>
|
20
20
|
</ol>
|
@@ -1,9 +1,9 @@
|
|
1
1
|
|
2
|
-
<p>Some text<sup id="fnref:ab"
|
2
|
+
<p>Some text<sup id="fnref:ab"><a href="#fn:ab" class="footnote" rel="footnote" role="doc-noteref">1</a></sup>.</p>
|
3
3
|
|
4
4
|
<div class="footnotes" role="doc-endnotes">
|
5
5
|
<ol>
|
6
|
-
<li id="fn:ab"
|
6
|
+
<li id="fn:ab">
|
7
7
|
<p>Some text. <a href="#fnref:ab" class="reversefootnote" role="doc-backlink">↩</a></p>
|
8
8
|
</li>
|
9
9
|
</ol>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<table>
|
2
2
|
<tbody>
|
3
3
|
<tr>
|
4
|
-
<td>this is <sup id="fnref:1"
|
4
|
+
<td>this is <sup id="fnref:1"><a href="#fn:1" class="footnote" rel="footnote" role="doc-noteref">1</a></sup></td>
|
5
5
|
<td>a table</td>
|
6
6
|
</tr>
|
7
7
|
<tr>
|
@@ -13,7 +13,7 @@
|
|
13
13
|
|
14
14
|
<div class="footnotes" role="doc-endnotes">
|
15
15
|
<ol>
|
16
|
-
<li id="fn:1"
|
16
|
+
<li id="fn:1">
|
17
17
|
<p>Something</p>
|
18
18
|
|
19
19
|
<blockquote>
|
@@ -2,11 +2,11 @@
|
|
2
2
|
<li><a href="#header1-level-1" id="markdown-toc-header1-level-1">Header level 1</a></li>
|
3
3
|
</ul>
|
4
4
|
|
5
|
-
<h1 id="header1-level-1">Header<sup id="fnref:1"
|
5
|
+
<h1 id="header1-level-1">Header<sup id="fnref:1"><a href="#fn:1" class="footnote" rel="footnote" role="doc-noteref">1</a></sup> level 1</h1>
|
6
6
|
|
7
7
|
<div class="footnotes" role="doc-endnotes">
|
8
8
|
<ol>
|
9
|
-
<li id="fn:1"
|
9
|
+
<li id="fn:1">
|
10
10
|
<p>Some footnote content here <a href="#fnref:1" class="reversefootnote" role="doc-backlink">↩</a></p>
|
11
11
|
</li>
|
12
12
|
</ol>
|
@@ -45,7 +45,12 @@ Or this *<em>this</em>* way
|
|
45
45
|
Or that <em>*that</em>* way
|
46
46
|
Or that *<em>that*</em> way</p>
|
47
47
|
|
48
|
-
<p><a href="http://blah.com/blah_%28">http://blah.com/blah_%28</a
|
48
|
+
<p><a href="http://blah.com/blah_%28">http://blah.com/blah_%28</a>
|
49
|
+
<a href="http://blah.com/blah__%28">http://blah.com/blah__%28</a>
|
50
|
+
<a href="http://blah.com/blah___%28">http://blah.com/blah___%28</a>
|
51
|
+
<a href="http://blah.com/blah____%28">http://blah.com/blah____%28</a>
|
52
|
+
<a href="http://blah.com/blah_____%28">http://blah.com/blah_____%28</a>
|
53
|
+
<a href="http://blah.com/blah______%28">http://blah.com/blah______%28</a></p>
|
49
54
|
|
50
55
|
<p><a href="A_-B">A-_B</a></p>
|
51
56
|
|
@@ -46,6 +46,11 @@ Or that *\*that*\* way
|
|
46
46
|
Or that \**that\** way
|
47
47
|
|
48
48
|
[http://blah.com/blah_%28](http://blah.com/blah_%28)
|
49
|
+
[http://blah.com/blah__%28](http://blah.com/blah__%28)
|
50
|
+
[http://blah.com/blah___%28](http://blah.com/blah___%28)
|
51
|
+
[http://blah.com/blah____%28](http://blah.com/blah____%28)
|
52
|
+
[http://blah.com/blah_____%28](http://blah.com/blah_____%28)
|
53
|
+
[http://blah.com/blah______%28](http://blah.com/blah______%28)
|
49
54
|
|
50
55
|
[A-_B](A_-B)
|
51
56
|
|
@@ -1,16 +1,16 @@
|
|
1
|
-
<p>This is <sup id="fnref:paragraph"
|
1
|
+
<p>This is <sup id="fnref:paragraph"><a href="#fn:paragraph" class="footnote" rel="footnote" role="doc-noteref">1</a></sup><sup id="fnref:header"><a href="#fn:header" class="footnote" rel="footnote" role="doc-noteref">2</a></sup><sup id="fnref:blockquote"><a href="#fn:blockquote" class="footnote" rel="footnote" role="doc-noteref">3</a></sup><sup id="fnref:codeblock"><a href="#fn:codeblock" class="footnote" rel="footnote" role="doc-noteref">4</a></sup><sup id="fnref:list"><a href="#fn:list" class="footnote" rel="footnote" role="doc-noteref">5</a></sup><sup id="fnref:table"><a href="#fn:table" class="footnote" rel="footnote" role="doc-noteref">6</a></sup><sup id="fnref:hrule"><a href="#fn:hrule" class="footnote" rel="footnote" role="doc-noteref">7</a></sup><sup id="fnref:mathblock"><a href="#fn:mathblock" class="footnote" rel="footnote" role="doc-noteref">8</a></sup><sup id="fnref:html"><a href="#fn:html" class="footnote" rel="footnote" role="doc-noteref">9</a></sup></p>
|
2
2
|
|
3
3
|
<div class="footnotes" role="doc-endnotes">
|
4
4
|
<ol>
|
5
|
-
<li id="fn:paragraph"
|
5
|
+
<li id="fn:paragraph">
|
6
6
|
|
7
7
|
<p>A paragraph <a href="#fnref:paragraph" class="reversefootnote" role="doc-backlink">↩</a></p>
|
8
8
|
</li>
|
9
|
-
<li id="fn:header"
|
9
|
+
<li id="fn:header">
|
10
10
|
|
11
11
|
<h1 id="a-header">A header <a href="#fnref:header" class="reversefootnote" role="doc-backlink">↩</a></h1>
|
12
12
|
</li>
|
13
|
-
<li id="fn:blockquote"
|
13
|
+
<li id="fn:blockquote">
|
14
14
|
|
15
15
|
<blockquote>
|
16
16
|
<p>blockquote</p>
|
@@ -18,13 +18,13 @@
|
|
18
18
|
<p>paragraph <a href="#fnref:blockquote" class="reversefootnote" role="doc-backlink">↩</a></p>
|
19
19
|
</blockquote>
|
20
20
|
</li>
|
21
|
-
<li id="fn:codeblock"
|
21
|
+
<li id="fn:codeblock">
|
22
22
|
|
23
23
|
<pre><code>codeblock
|
24
24
|
</code></pre>
|
25
25
|
<p><a href="#fnref:codeblock" class="reversefootnote" role="doc-backlink">↩</a></p>
|
26
26
|
</li>
|
27
|
-
<li id="fn:list"
|
27
|
+
<li id="fn:list">
|
28
28
|
|
29
29
|
<ul>
|
30
30
|
<li>item 1</li>
|
@@ -43,7 +43,7 @@
|
|
43
43
|
</li>
|
44
44
|
</ul>
|
45
45
|
</li>
|
46
|
-
<li id="fn:table"
|
46
|
+
<li id="fn:table">
|
47
47
|
|
48
48
|
<table>
|
49
49
|
<tbody>
|
@@ -59,17 +59,17 @@
|
|
59
59
|
</table>
|
60
60
|
<p><a href="#fnref:table" class="reversefootnote" role="doc-backlink">↩</a></p>
|
61
61
|
</li>
|
62
|
-
<li id="fn:hrule"
|
62
|
+
<li id="fn:hrule">
|
63
63
|
|
64
64
|
<hr />
|
65
65
|
<p><a href="#fnref:hrule" class="reversefootnote" role="doc-backlink">↩</a></p>
|
66
66
|
</li>
|
67
|
-
<li id="fn:mathblock"
|
67
|
+
<li id="fn:mathblock">
|
68
68
|
|
69
69
|
\[x + 2\]
|
70
70
|
<p><a href="#fnref:mathblock" class="reversefootnote" role="doc-backlink">↩</a></p>
|
71
71
|
</li>
|
72
|
-
<li id="fn:html"
|
72
|
+
<li id="fn:html">
|
73
73
|
|
74
74
|
<div>test
|
75
75
|
</div>
|
@@ -1,8 +1,8 @@
|
|
1
|
-
<p>Some footnote here<sup id="fnref:fn"
|
1
|
+
<p>Some footnote here<sup id="fnref:fn"><a href="#fn:fn" class="footnote" rel="footnote" role="doc-noteref">1</a></sup></p>
|
2
2
|
|
3
3
|
<div class="footnotes" role="doc-endnotes">
|
4
4
|
<ol>
|
5
|
-
<li id="fn:fn"
|
5
|
+
<li id="fn:fn">
|
6
6
|
<p>Some text here <a href="#fnref:fn" class="reversefootnote" role="doc-backlink">text &8617; <img /></a></p>
|
7
7
|
</li>
|
8
8
|
</ol>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
<p>This is a<sup id="fnref:ab"><a href="#fn:ab" class="footnote" rel="footnote" role="doc-noteref">[footnote 1]</a></sup> footnote<sup id="fnref:ab:1"><a href="#fn:ab" class="footnote" rel="footnote" role="doc-noteref">[footnote 1]</a></sup>. And another<sup id="fnref:bc"><a href="#fn:bc" class="footnote" rel="footnote" role="doc-noteref">[footnote 2]</a></sup>.</p>
|
2
|
+
|
3
|
+
<div class="footnotes" role="doc-endnotes">
|
4
|
+
<ol>
|
5
|
+
<li id="fn:ab">
|
6
|
+
<p>Some text. <a href="#fnref:ab" class="reversefootnote" role="doc-backlink">↩</a> <a href="#fnref:ab:1" class="reversefootnote" role="doc-backlink">↩<sup>2</sup></a></p>
|
7
|
+
</li>
|
8
|
+
<li id="fn:bc">
|
9
|
+
<p>Some other text. <a href="#fnref:bc" class="reversefootnote" role="doc-backlink">↩</a></p>
|
10
|
+
</li>
|
11
|
+
</ol>
|
12
|
+
</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
:footnote_link_text: "[footnote %s]"
|
@@ -1,11 +1,11 @@
|
|
1
|
-
<p>This is a footnote<sup id="fnref:ab"
|
1
|
+
<p>This is a footnote<sup id="fnref:ab"><a href="#fn:ab" class="footnote" rel="footnote" role="doc-noteref">35</a></sup>. And another<sup id="fnref:bc"><a href="#fn:bc" class="footnote" rel="footnote" role="doc-noteref">36</a></sup>.</p>
|
2
2
|
|
3
3
|
<div class="footnotes" role="doc-endnotes">
|
4
4
|
<ol start="35">
|
5
|
-
<li id="fn:ab"
|
5
|
+
<li id="fn:ab">
|
6
6
|
<p>Some text. <a href="#fnref:ab" class="reversefootnote" role="doc-backlink">↩</a></p>
|
7
7
|
</li>
|
8
|
-
<li id="fn:bc"
|
8
|
+
<li id="fn:bc">
|
9
9
|
<p>Some other text. <a href="#fnref:bc" class="reversefootnote" role="doc-backlink">↩</a></p>
|
10
10
|
</li>
|
11
11
|
</ol>
|
@@ -1,11 +1,11 @@
|
|
1
|
-
<p>This is a<sup id="fnref:adf123-ab"
|
1
|
+
<p>This is a<sup id="fnref:adf123-ab"><a href="#fn:adf123-ab" class="footnote" rel="footnote" role="doc-noteref">1</a></sup> footnote<sup id="fnref:adf123-ab:1"><a href="#fn:adf123-ab" class="footnote" rel="footnote" role="doc-noteref">1</a></sup>. And another<sup id="fnref:adf123-bc"><a href="#fn:adf123-bc" class="footnote" rel="footnote" role="doc-noteref">2</a></sup>.</p>
|
2
2
|
|
3
3
|
<div class="footnotes" role="doc-endnotes">
|
4
4
|
<ol>
|
5
|
-
<li id="fn:adf123-ab"
|
5
|
+
<li id="fn:adf123-ab">
|
6
6
|
<p>Some text. <a href="#fnref:adf123-ab" class="reversefootnote" role="doc-backlink">↩</a> <a href="#fnref:adf123-ab:1" class="reversefootnote" role="doc-backlink">↩<sup>2</sup></a></p>
|
7
7
|
</li>
|
8
|
-
<li id="fn:adf123-bc"
|
8
|
+
<li id="fn:adf123-bc">
|
9
9
|
<p>Some other text. <a href="#fnref:adf123-bc" class="reversefootnote" role="doc-backlink">↩</a></p>
|
10
10
|
</li>
|
11
11
|
</ol>
|
@@ -1,16 +1,16 @@
|
|
1
|
-
<p>Lorem ipsum<sup id="fnref:first"
|
1
|
+
<p>Lorem ipsum<sup id="fnref:first"><a href="#fn:first" class="footnote" rel="footnote" role="doc-noteref">1</a></sup> dolor sit amet.</p>
|
2
2
|
|
3
|
-
<p>Lorem ipsum<sup id="fnref:second"
|
3
|
+
<p>Lorem ipsum<sup id="fnref:second"><a href="#fn:second" class="footnote" rel="footnote" role="doc-noteref">2</a></sup> dolor sit amet.</p>
|
4
4
|
|
5
5
|
<div class="footnotes" role="doc-endnotes">
|
6
6
|
<ol>
|
7
|
-
<li id="fn:first"
|
8
|
-
<p>Consecutur adisping.<sup id="fnref:third"
|
7
|
+
<li id="fn:first">
|
8
|
+
<p>Consecutur adisping.<sup id="fnref:third"><a href="#fn:third" class="footnote" rel="footnote" role="doc-noteref">3</a></sup> <a href="#fnref:first" class="reversefootnote" role="doc-backlink">↩</a></p>
|
9
9
|
</li>
|
10
|
-
<li id="fn:second"
|
10
|
+
<li id="fn:second">
|
11
11
|
<p>Sed ut perspiciatis unde omnis. <a href="#fnref:second" class="reversefootnote" role="doc-backlink">↩</a></p>
|
12
12
|
</li>
|
13
|
-
<li id="fn:third"
|
13
|
+
<li id="fn:third">
|
14
14
|
<p>Sed ut. <a href="#fnref:third" class="reversefootnote" role="doc-backlink">↩</a></p>
|
15
15
|
</li>
|
16
16
|
</ol>
|
@@ -1,25 +1,25 @@
|
|
1
|
-
<p>This is some *ref.<sup id="fnref:fn"
|
1
|
+
<p>This is some *ref.<sup id="fnref:fn"><a href="#fn:fn" class="footnote" rel="footnote" role="doc-noteref">1</a></sup></p>
|
2
2
|
|
3
3
|
<blockquote>
|
4
|
-
<p>a blockquote <sup id="fnref:3"
|
4
|
+
<p>a blockquote <sup id="fnref:3"><a href="#fn:3" class="footnote" rel="footnote" role="doc-noteref">2</a></sup></p>
|
5
5
|
</blockquote>
|
6
6
|
|
7
7
|
<ul>
|
8
|
-
<li>and a list item <sup id="fnref:1"
|
8
|
+
<li>and a list item <sup id="fnref:1"><a href="#fn:1" class="footnote" rel="footnote" role="doc-noteref">3</a></sup></li>
|
9
9
|
</ul>
|
10
10
|
|
11
|
-
<h1>And a header<sup id="fnref:now"
|
11
|
+
<h1>And a header<sup id="fnref:now"><a href="#fn:now" class="footnote" rel="footnote" role="doc-noteref">4</a></sup></h1>
|
12
12
|
|
13
13
|
<p>A marker without a definition [^without].</p>
|
14
14
|
|
15
|
-
<p>A marker <sup id="fnref:empty"
|
15
|
+
<p>A marker <sup id="fnref:empty"><a href="#fn:empty" class="footnote" rel="footnote" role="doc-noteref">5</a></sup> used twice<sup id="fnref:fn:1"><a href="#fn:fn" class="footnote" rel="footnote" role="doc-noteref">1</a></sup> and thrice<sup id="fnref:fn:2"><a href="#fn:fn" class="footnote" rel="footnote" role="doc-noteref">1</a></sup>.</p>
|
16
16
|
|
17
17
|
<div class="footnotes" role="doc-endnotes">
|
18
18
|
<ol>
|
19
|
-
<li id="fn:fn"
|
19
|
+
<li id="fn:fn">
|
20
20
|
<p>Some foot note text <a href="#fnref:fn" class="reversefootnote" role="doc-backlink">↩</a> <a href="#fnref:fn:1" class="reversefootnote" role="doc-backlink">↩<sup>2</sup></a> <a href="#fnref:fn:2" class="reversefootnote" role="doc-backlink">↩<sup>3</sup></a></p>
|
21
21
|
</li>
|
22
|
-
<li id="fn:3"
|
22
|
+
<li id="fn:3">
|
23
23
|
<p>other text
|
24
24
|
with more lines</p>
|
25
25
|
|
@@ -28,17 +28,17 @@ with more lines</p>
|
|
28
28
|
</blockquote>
|
29
29
|
<p><a href="#fnref:3" class="reversefootnote" role="doc-backlink">↩</a></p>
|
30
30
|
</li>
|
31
|
-
<li id="fn:1"
|
31
|
+
<li id="fn:1">
|
32
32
|
<p>some <em>text</em> <a href="#fnref:1" class="reversefootnote" role="doc-backlink">↩</a></p>
|
33
33
|
</li>
|
34
|
-
<li id="fn:now"
|
34
|
+
<li id="fn:now">
|
35
35
|
|
36
36
|
<pre><code>code block
|
37
37
|
continued here
|
38
38
|
</code></pre>
|
39
39
|
<p><a href="#fnref:now" class="reversefootnote" role="doc-backlink">↩</a></p>
|
40
40
|
</li>
|
41
|
-
<li id="fn:empty"
|
41
|
+
<li id="fn:empty">
|
42
42
|
|
43
43
|
<p><a href="#fnref:empty" class="reversefootnote" role="doc-backlink">↩</a></p>
|
44
44
|
</li>
|
@@ -1,11 +1,11 @@
|
|
1
1
|
<div class="footnotes" role="doc-endnotes">
|
2
2
|
<ol>
|
3
|
-
<li id="fn:1"
|
3
|
+
<li id="fn:1">
|
4
4
|
<p>Footnote \` text <a href="#fnref:1" class="reversefootnote" role="doc-backlink">↩</a></p>
|
5
5
|
</li>
|
6
6
|
</ol>
|
7
7
|
</div>
|
8
8
|
|
9
|
-
<p>Some para with a<sup id="fnref:1"
|
9
|
+
<p>Some para with a<sup id="fnref:1"><a href="#fn:1" class="footnote" rel="footnote" role="doc-noteref">1</a></sup> footnote.</p>
|
10
10
|
|
11
11
|
<p>And another para.</p>
|
@@ -1,12 +1,12 @@
|
|
1
1
|
<h1>Something</h1>
|
2
|
-
<p>something<sup id="fnref:note1"
|
2
|
+
<p>something<sup id="fnref:note1"><a href="#fn:note1" class="footnote" rel="footnote" role="doc-noteref">1</a></sup>.</p>
|
3
3
|
|
4
4
|
<h1>Footnotes</h1>
|
5
5
|
|
6
6
|
<h1>Test</h1>
|
7
7
|
<div class="footnotes" role="doc-endnotes">
|
8
8
|
<ol>
|
9
|
-
<li id="fn:note1"
|
9
|
+
<li id="fn:note1">
|
10
10
|
|
11
11
|
<p>A note <a href="#fnref:note1" class="reversefootnote" role="doc-backlink">↩</a></p>
|
12
12
|
</li>
|
@@ -1,8 +1,8 @@
|
|
1
|
-
<p>Some footnote here<sup id="fnref:fn"
|
1
|
+
<p>Some footnote here<sup id="fnref:fn"><a href="#fn:fn" class="footnote" rel="footnote" role="doc-noteref">1</a></sup></p>
|
2
2
|
|
3
3
|
<div class="footnotes" role="doc-endnotes">
|
4
4
|
<ol>
|
5
|
-
<li id="fn:fn"
|
5
|
+
<li id="fn:fn">
|
6
6
|
<p>Some text here</p>
|
7
7
|
</li>
|
8
8
|
</ol>
|