maruku 0.6.1 → 0.7.0.beta1
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 +7 -0
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/MIT-LICENSE.txt +20 -0
- data/bin/maruku +153 -152
- data/bin/marutex +2 -29
- data/data/entities.xml +261 -0
- data/docs/math.md +14 -18
- data/lib/maruku.rb +65 -77
- data/lib/maruku/attributes.rb +109 -214
- data/lib/maruku/defaults.rb +45 -67
- data/lib/maruku/document.rb +43 -0
- data/lib/maruku/element.rb +112 -0
- data/lib/maruku/errors.rb +71 -0
- data/lib/maruku/ext/div.rb +105 -113
- data/lib/maruku/ext/fenced_code.rb +97 -0
- data/lib/maruku/ext/math.rb +22 -26
- data/lib/maruku/ext/math/elements.rb +20 -26
- data/lib/maruku/ext/math/mathml_engines/blahtex.rb +92 -104
- data/lib/maruku/ext/math/mathml_engines/itex2mml.rb +33 -26
- data/lib/maruku/ext/math/mathml_engines/none.rb +11 -19
- data/lib/maruku/ext/math/mathml_engines/ritex.rb +2 -4
- data/lib/maruku/ext/math/parsing.rb +107 -113
- data/lib/maruku/ext/math/to_html.rb +184 -187
- data/lib/maruku/ext/math/to_latex.rb +30 -21
- data/lib/maruku/helpers.rb +158 -257
- data/lib/maruku/html.rb +254 -0
- data/lib/maruku/input/charsource.rb +272 -319
- data/lib/maruku/input/extensions.rb +62 -63
- data/lib/maruku/input/html_helper.rb +220 -189
- data/lib/maruku/input/linesource.rb +90 -110
- data/lib/maruku/input/mdline.rb +129 -0
- data/lib/maruku/input/parse_block.rb +618 -612
- data/lib/maruku/input/parse_doc.rb +145 -215
- data/lib/maruku/input/parse_span.rb +658 -0
- data/lib/maruku/input/rubypants.rb +200 -128
- data/lib/maruku/inspect_element.rb +60 -0
- data/lib/maruku/maruku.rb +10 -31
- data/lib/maruku/output/entity_table.rb +33 -0
- data/lib/maruku/output/s5/fancy.rb +462 -462
- data/lib/maruku/output/s5/to_s5.rb +115 -135
- data/lib/maruku/output/to_html.rb +898 -983
- data/lib/maruku/output/to_latex.rb +561 -560
- data/lib/maruku/output/to_markdown.rb +207 -162
- data/lib/maruku/output/to_s.rb +11 -52
- data/lib/maruku/string_utils.rb +129 -179
- data/lib/maruku/toc.rb +185 -196
- data/lib/maruku/version.rb +33 -38
- data/spec/block_docs/abbrev.md +776 -0
- data/{tests/unittest → spec/block_docs}/abbreviations.md +11 -20
- data/{tests/unittest → spec/block_docs}/alt.md +2 -14
- data/{tests/unittest/pending → spec/block_docs}/amps.md +1 -13
- data/{tests/unittest → spec/block_docs}/attributes/att2.md +0 -12
- data/{tests/unittest → spec/block_docs}/attributes/att3.md +2 -14
- data/{tests/unittest → spec/block_docs}/attributes/attributes.md +12 -16
- data/{tests/unittest → spec/block_docs}/attributes/circular.md +0 -12
- data/{tests/unittest → spec/block_docs}/attributes/default.md +1 -13
- data/{tests/unittest → spec/block_docs}/blank.md +0 -12
- data/{tests/unittest → spec/block_docs}/blanks_in_code.md +16 -15
- data/{tests/unittest/loss.md → spec/block_docs/bug_def.md} +6 -18
- data/{tests/unittest → spec/block_docs}/bug_table.md +3 -15
- data/{tests/unittest → spec/block_docs}/code.md +7 -14
- data/{tests/unittest → spec/block_docs}/code2.md +4 -14
- data/{tests/unittest → spec/block_docs}/code3.md +12 -16
- data/{tests/unittest → spec/block_docs}/data_loss.md +2 -14
- data/{tests/unittest → spec/block_docs}/divs/div1.md +0 -12
- data/{tests/unittest → spec/block_docs}/divs/div2.md +0 -12
- data/{tests/unittest → spec/block_docs}/divs/div3_nest.md +3 -15
- data/{tests/unittest → spec/block_docs}/easy.md +1 -13
- data/spec/block_docs/email.md +29 -0
- data/{tests/unittest/pending → spec/block_docs}/empty_cells.md +3 -15
- data/{tests/unittest → spec/block_docs}/encoding/iso-8859-1.md +1 -14
- data/{tests/unittest → spec/block_docs}/encoding/utf-8.md +0 -12
- data/{tests/unittest → spec/block_docs}/entities.md +27 -29
- data/{tests/unittest/notyet → spec/block_docs}/escape.md +2 -14
- data/{tests/unittest → spec/block_docs}/escaping.md +11 -22
- data/{tests/unittest → spec/block_docs}/extra_dl.md +2 -13
- data/{tests/unittest → spec/block_docs}/extra_header_id.md +14 -20
- data/{tests/unittest → spec/block_docs}/extra_table1.md +3 -15
- data/spec/block_docs/fenced_code_blocks.md +66 -0
- data/spec/block_docs/fenced_code_blocks_highlighted.md +18 -0
- data/{tests/unittest → spec/block_docs}/footnotes.md +12 -24
- data/spec/block_docs/footnotes2.md +78 -0
- data/spec/block_docs/hard.md +25 -0
- data/spec/block_docs/header_after_par.md +62 -0
- data/{tests/unittest → spec/block_docs}/headers.md +10 -18
- data/{tests/unittest → spec/block_docs}/hex_entities.md +7 -18
- data/{tests/unittest → spec/block_docs}/hrule.md +5 -12
- data/{tests/unittest → spec/block_docs}/html3.md +1 -13
- data/{tests/unittest → spec/block_docs}/html4.md +2 -14
- data/{tests/unittest → spec/block_docs}/html5.md +2 -14
- data/spec/block_docs/html_block_in_para.md +22 -0
- data/spec/block_docs/html_inline.md +25 -0
- data/spec/block_docs/html_trailing.md +31 -0
- data/spec/block_docs/ie.md +62 -0
- data/spec/block_docs/iframe.md +29 -0
- data/{tests/unittest → spec/block_docs}/images.md +22 -28
- data/{tests/unittest → spec/block_docs}/images2.md +7 -17
- data/{tests/unittest → spec/block_docs}/inline_html.md +37 -67
- data/{tests/unittest → spec/block_docs}/inline_html2.md +1 -13
- data/spec/block_docs/inline_html_beginning.md +10 -0
- data/spec/block_docs/issue20.md +9 -0
- data/spec/block_docs/issue26.md +22 -0
- data/spec/block_docs/issue29.md +9 -0
- data/spec/block_docs/issue30.md +30 -0
- data/spec/block_docs/issue31.md +25 -0
- data/spec/block_docs/issue40.md +40 -0
- data/spec/block_docs/issue64.md +55 -0
- data/spec/block_docs/issue67.md +19 -0
- data/spec/block_docs/issue70.md +11 -0
- data/spec/block_docs/issue72.md +17 -0
- data/spec/block_docs/issue74.md +38 -0
- data/spec/block_docs/issue79.md +15 -0
- data/spec/block_docs/issue83.md +13 -0
- data/spec/block_docs/issue85.md +25 -0
- data/spec/block_docs/issue88.md +19 -0
- data/spec/block_docs/issue89.md +12 -0
- data/spec/block_docs/issue90.md +38 -0
- data/{tests/unittest/pending → spec/block_docs}/link.md +21 -18
- data/{tests/unittest → spec/block_docs}/links.md +33 -32
- data/spec/block_docs/links2.md +21 -0
- data/{tests/unittest → spec/block_docs}/list1.md +0 -12
- data/{tests/unittest → spec/block_docs}/list12.md +2 -14
- data/{tests/unittest → spec/block_docs}/list2.md +2 -14
- data/spec/block_docs/list_multipara.md +42 -0
- data/{tests/unittest → spec/block_docs}/lists.md +28 -29
- data/{tests/unittest → spec/block_docs}/lists10.md +2 -14
- data/spec/block_docs/lists11.md +23 -0
- data/spec/block_docs/lists12.md +43 -0
- data/spec/block_docs/lists13.md +55 -0
- data/spec/block_docs/lists14.md +61 -0
- data/spec/block_docs/lists15.md +36 -0
- data/spec/block_docs/lists6.md +88 -0
- data/spec/block_docs/lists7b.md +58 -0
- data/spec/block_docs/lists9.md +53 -0
- data/{tests/unittest → spec/block_docs}/lists_after_paragraph.md +19 -25
- data/spec/block_docs/lists_blank.md +35 -0
- data/{tests/unittest/list3.md → spec/block_docs/lists_blockquote_code.md} +2 -14
- data/{tests/unittest/list4.md → spec/block_docs/lists_need_blank_line.md} +50 -21
- data/spec/block_docs/lists_nested.md +44 -0
- data/spec/block_docs/lists_nested_blankline.md +28 -0
- data/spec/block_docs/lists_nested_deep.md +43 -0
- data/{tests/unittest → spec/block_docs}/lists_ol.md +37 -54
- data/spec/block_docs/lists_paraindent.md +47 -0
- data/spec/block_docs/lists_tab.md +54 -0
- data/spec/block_docs/loss.md +17 -0
- data/spec/block_docs/math-blahtex/equations.md +30 -0
- data/spec/block_docs/math-blahtex/inline.md +48 -0
- data/spec/block_docs/math-blahtex/math2.md +45 -0
- data/spec/block_docs/math-blahtex/table.md +25 -0
- data/spec/block_docs/math/embedded_invalid_svg.md +79 -0
- data/spec/block_docs/math/embedded_svg.md +97 -0
- data/spec/block_docs/math/equations.md +44 -0
- data/{tests/unittest → spec/block_docs}/math/inline.md +7 -19
- data/spec/block_docs/math/math2.md +45 -0
- data/{tests/unittest → spec/block_docs}/math/notmath.md +0 -12
- data/spec/block_docs/math/raw_mathml.md +87 -0
- data/spec/block_docs/math/table.md +25 -0
- data/{tests/unittest → spec/block_docs}/math/table2.md +5 -17
- data/{tests/unittest → spec/block_docs}/misc_sw.md +181 -118
- data/{tests/unittest → spec/block_docs}/olist.md +6 -18
- data/{tests/unittest → spec/block_docs}/one.md +0 -12
- data/{tests/unittest → spec/block_docs}/paragraph.md +0 -12
- data/{tests/unittest → spec/block_docs}/paragraph_rules/dont_merge_ref.md +4 -12
- data/{tests/unittest → spec/block_docs}/paragraph_rules/tab_is_blank.md +0 -12
- data/{tests/unittest → spec/block_docs}/paragraphs.md +1 -13
- data/{tests/unittest → spec/block_docs}/recover/recover_links.md +4 -16
- data/{tests/unittest/pending/ref.md → spec/block_docs/ref_with_period.md} +7 -16
- data/spec/block_docs/ref_with_title.md +22 -0
- data/{tests/unittest → spec/block_docs}/references/long_example.md +16 -23
- data/{tests/unittest → spec/block_docs}/references/spaces_and_numbers.md +0 -12
- data/{tests/unittest → spec/block_docs}/smartypants.md +24 -31
- data/{tests/unittest → spec/block_docs}/syntax_hl.md +13 -17
- data/{tests/unittest → spec/block_docs}/table_attributes.md +2 -14
- data/spec/block_docs/tables.md +58 -0
- data/{tests/unittest → spec/block_docs}/test.md +1 -13
- data/{tests/unittest/notyet → spec/block_docs}/ticks.md +1 -13
- data/spec/block_docs/toc.md +87 -0
- data/{tests/unittest/notyet → spec/block_docs}/triggering.md +14 -25
- data/{tests/unittest → spec/block_docs}/underscore_in_words.md +0 -12
- data/{tests/unittest → spec/block_docs}/wrapping.md +4 -16
- data/spec/block_docs/xml.md +33 -0
- data/{tests/unittest → spec/block_docs}/xml2.md +0 -12
- data/spec/block_docs/xml3.md +24 -0
- data/{tests/unittest → spec/block_docs}/xml_instruction.md +9 -20
- data/spec/block_spec.rb +110 -0
- data/spec/cli_spec.rb +8 -0
- data/spec/span_spec.rb +256 -0
- data/spec/spec_helper.rb +2 -0
- data/spec/to_html_utf8_spec.rb +13 -0
- metadata +205 -243
- metadata.gz.sig +3 -0
- data/Rakefile +0 -48
- data/bin/marudown +0 -29
- data/bin/marutest +0 -345
- data/docs/changelog.md +0 -334
- data/lib/maruku/errors_management.rb +0 -92
- data/lib/maruku/ext/math/latex_fix.rb +0 -12
- data/lib/maruku/input/parse_span_better.rb +0 -746
- data/lib/maruku/input/type_detection.rb +0 -147
- data/lib/maruku/output/to_latex_entities.rb +0 -367
- data/lib/maruku/output/to_latex_strings.rb +0 -64
- data/lib/maruku/structures.rb +0 -167
- data/lib/maruku/structures_inspect.rb +0 -87
- data/lib/maruku/structures_iterators.rb +0 -61
- data/lib/maruku/tests/benchmark.rb +0 -82
- data/lib/maruku/tests/new_parser.rb +0 -373
- data/lib/maruku/tests/tests.rb +0 -136
- data/lib/maruku/usage/example1.rb +0 -33
- data/tests/bugs/code_in_links.md +0 -101
- data/tests/bugs/complex_escaping.md +0 -38
- data/tests/math/syntax.md +0 -46
- data/tests/math_usage/document.md +0 -13
- data/tests/others/abbreviations.md +0 -11
- data/tests/others/blank.md +0 -4
- data/tests/others/code.md +0 -5
- data/tests/others/code2.md +0 -8
- data/tests/others/code3.md +0 -16
- data/tests/others/email.md +0 -4
- data/tests/others/entities.md +0 -19
- data/tests/others/escaping.md +0 -16
- data/tests/others/extra_dl.md +0 -101
- data/tests/others/extra_header_id.md +0 -13
- data/tests/others/extra_table1.md +0 -40
- data/tests/others/footnotes.md +0 -17
- data/tests/others/headers.md +0 -10
- data/tests/others/hrule.md +0 -10
- data/tests/others/images.md +0 -20
- data/tests/others/inline_html.md +0 -42
- data/tests/others/links.md +0 -38
- data/tests/others/list1.md +0 -4
- data/tests/others/list2.md +0 -5
- data/tests/others/list3.md +0 -8
- data/tests/others/lists.md +0 -32
- data/tests/others/lists_after_paragraph.md +0 -44
- data/tests/others/lists_ol.md +0 -39
- data/tests/others/misc_sw.md +0 -105
- data/tests/others/one.md +0 -1
- data/tests/others/paragraphs.md +0 -13
- data/tests/others/sss06.md +0 -352
- data/tests/others/test.md +0 -4
- data/tests/s5/s5profiling.md +0 -48
- data/tests/unittest/bug_def.md +0 -28
- data/tests/unittest/email.md +0 -32
- data/tests/unittest/html2.md +0 -34
- data/tests/unittest/ie.md +0 -61
- data/tests/unittest/links2.md +0 -34
- data/tests/unittest/lists11.md +0 -28
- data/tests/unittest/lists6.md +0 -53
- data/tests/unittest/lists9.md +0 -76
- data/tests/unittest/math/equations.md +0 -86
- data/tests/unittest/math/math2.md +0 -57
- data/tests/unittest/math/table.md +0 -37
- data/tests/unittest/notyet/header_after_par.md +0 -70
- data/tests/unittest/red_tests/abbrev.md +0 -1388
- data/tests/unittest/red_tests/lists7.md +0 -68
- data/tests/unittest/red_tests/lists7b.md +0 -128
- data/tests/unittest/red_tests/lists8.md +0 -76
- data/tests/unittest/red_tests/xml.md +0 -70
- data/tests/unittest/xml3.md +0 -38
- data/tests/utf8-files/simple.md +0 -1
- data/unit_test_block.sh +0 -5
- data/unit_test_span.sh +0 -3
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 69805284ca3b020f9b1dff4680f6ebf38cbbcd7c
|
4
|
+
data.tar.gz: 14dc0bd07d4e031246b6ff4219dd4ccb62f1a3af
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 0a4a5f800ea24f4c687f07dba356871f4ba7bdd830f046ab789f67a9d17b10e29bbda8de68a0e9dc52c78f9012d638c37fa377e5da081d0b7d80cf7e3d9db9f5
|
7
|
+
data.tar.gz: ba9bccdda762cf555d320b26e89c6b3cf234d340c5265d4b60dd37192c58f582723bbb79ebb8df77fac7bd8a6a037305bb6eb19f6f941d700140c2581024ad47
|
checksums.yaml.gz.sig
ADDED
Binary file
|
data.tar.gz.sig
ADDED
Binary file
|
data/MIT-LICENSE.txt
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright (c) 2006 Andrea Censi
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/bin/maruku
CHANGED
@@ -1,13 +1,22 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
+
dir = File.join(File.dirname(__FILE__), '..', 'lib')
|
4
|
+
$LOAD_PATH.unshift dir unless $LOAD_PATH.include?(dir)
|
5
|
+
|
3
6
|
require 'maruku'
|
4
7
|
require 'optparse'
|
5
8
|
|
6
9
|
|
7
10
|
def cli_puts(s)
|
8
|
-
|
11
|
+
$stderr.puts(s) if MaRuKu::Globals[:verbose]
|
9
12
|
end
|
10
13
|
|
14
|
+
def benchmark(section)
|
15
|
+
t = Time.now
|
16
|
+
res = yield
|
17
|
+
cli_puts("%s finished in %.2f seconds." % [section, Time.now - t])
|
18
|
+
res
|
19
|
+
end
|
11
20
|
|
12
21
|
export = :html
|
13
22
|
break_on_error = false
|
@@ -16,166 +25,158 @@ using_mathml = false
|
|
16
25
|
output_file = nil
|
17
26
|
|
18
27
|
opt = OptionParser.new do |opts|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
28
|
+
opts.banner = "Usage: #{File.basename($0)} [options] [file1.md] [file2.md] ..."
|
29
|
+
|
30
|
+
opts.on("-v", "--[no-]verbose", "Run verbosely") do |v|
|
31
|
+
MaRuKu::Globals[:verbose] = v
|
32
|
+
end
|
33
|
+
|
34
|
+
opts.on("-u", "--[no-]unsafe", "Use unsafe features") do |v|
|
35
|
+
MaRuKu::Globals[:unsafe_features] = v
|
36
|
+
end
|
37
|
+
|
38
|
+
opts.on("-b", "--[no-]break", "Break on error") do |v|
|
39
|
+
break_on_error = v
|
40
|
+
end
|
41
|
+
|
42
|
+
|
43
|
+
opts.on("-i", "--math-images ENGINE", "Use ENGINE to render TeX to PNG") do |s|
|
44
|
+
using_math = true
|
45
|
+
MaRuKu::Globals[:html_math_output_png] = true
|
46
|
+
MaRuKu::Globals[:html_math_output_mathml] = false
|
47
|
+
MaRuKu::Globals[:html_png_engine] = s
|
48
|
+
cli_puts "Using png engine #{s}."
|
49
|
+
end
|
50
|
+
|
51
|
+
opts.on("-m", "--math-engine ENGINE", "Use ENGINE to render MathML") do |s|
|
52
|
+
MaRuKu::Globals[:html_math_output_png] = false
|
53
|
+
MaRuKu::Globals[:html_math_output_mathml] = true
|
54
|
+
using_math = true
|
55
|
+
using_mathml = true
|
56
|
+
MaRuKu::Globals[:html_math_engine] = s
|
57
|
+
end
|
58
|
+
|
59
|
+
opts.on("-o", "--output FILE", "Output filename (`-o -' writes to stdout)") {|s| output_file = s}
|
60
|
+
|
61
|
+
opts.on_tail("--pdf", "Output PDF;", "first writes LaTeX, then calls pdflatex") {export = :pdf}
|
62
|
+
opts.on_tail("--s5", "Output S5 slideshow") {export = :s5}
|
63
|
+
opts.on_tail("--html", "Output HTML") {export = :html}
|
64
|
+
opts.on_tail("--html-frag", "Output the contents of the <body> tag") {export = :html_frag}
|
65
|
+
opts.on_tail("--tex", "Output LaTeX" ) {export = :tex}
|
66
|
+
opts.on_tail("--markdown", "Output Markdown" ) {export = :markdown}
|
67
|
+
opts.on_tail("--inspect", "Output the parse tree") {export = :inspect}
|
68
|
+
|
69
|
+
opts.on_tail("--ext EXTENSIONS", "Use Maruku extensions (comma separated)") do |s|
|
70
|
+
s.split(",").each {|e| require "maruku/ext/#{e}"}
|
71
|
+
end
|
72
|
+
|
73
|
+
opts.on_tail("-h", "--help", "Show this help message") do
|
74
|
+
puts opts
|
75
|
+
exit
|
76
|
+
end
|
77
|
+
|
78
|
+
opts.on_tail("--version", "Show version") do
|
79
|
+
puts "Maruku #{MaRuKu::Version}"
|
80
|
+
exit
|
81
|
+
end
|
70
82
|
end
|
71
83
|
|
72
|
-
begin
|
73
|
-
opt.parse!
|
74
|
-
rescue OptionParser::InvalidOption=>e
|
75
|
-
|
76
|
-
|
77
|
-
|
84
|
+
begin
|
85
|
+
opt.parse!
|
86
|
+
rescue OptionParser::InvalidOption => e
|
87
|
+
$stderr.puts e
|
88
|
+
$stderr.puts opt
|
89
|
+
exit 1
|
78
90
|
end
|
79
91
|
|
80
92
|
|
81
93
|
if using_math
|
82
|
-
|
83
|
-
|
94
|
+
cli_puts "Using Math extensions."
|
95
|
+
require 'maruku/ext/math'
|
84
96
|
end
|
85
97
|
|
86
|
-
#p ARGV
|
87
|
-
#p MaRuKu::Globals
|
88
98
|
|
99
|
+
unless ARGV.empty?
|
100
|
+
if ARGV.size > 1 && output_file
|
101
|
+
$stderr.puts "Can't write #{ARGV.map {|f| f.inspect}.join(' and ')} to #{output_file.inspect}"
|
102
|
+
exit 1
|
103
|
+
end
|
89
104
|
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
[f, File.open(f,'r').read]
|
97
|
-
end
|
105
|
+
# If we are given filenames, convert each file
|
106
|
+
ARGV.map do |f|
|
107
|
+
# read file content
|
108
|
+
cli_puts "Reading from file #{f.inspect}."
|
109
|
+
[f, File.read(f)]
|
110
|
+
end
|
98
111
|
else
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
112
|
+
export = :html_frag if export == :html
|
113
|
+
export = :tex_frag if export == :tex
|
114
|
+
|
115
|
+
cli_puts "Reading from standard input."
|
116
|
+
[[nil, $stdin.read]]
|
117
|
+
end.each do |filename, input|
|
118
|
+
doc = benchmark("Parsing") {Maruku.new(input, :on_error => (break_on_error ? :raise : :warning))}
|
119
|
+
|
120
|
+
out = ""
|
121
|
+
suffix = "?"
|
122
|
+
benchmark("Rendering") do
|
123
|
+
case export
|
124
|
+
when :html
|
125
|
+
suffix = using_mathml ? '.xhtml' : '.html'
|
126
|
+
out = doc.to_html_document
|
127
|
+
when :html_frag
|
128
|
+
suffix = '.html_frag'
|
129
|
+
out = doc.to_html
|
130
|
+
when :pdf, :tex
|
131
|
+
suffix = '.tex'
|
132
|
+
out = doc.to_latex_document
|
133
|
+
when :tex_frag
|
134
|
+
suffix = '.tex_frag'
|
135
|
+
out = doc.to_latex
|
136
|
+
when :inspect
|
137
|
+
suffix = '.txt'
|
138
|
+
out = doc.inspect
|
139
|
+
when :markdown
|
140
|
+
suffix = '.md'
|
141
|
+
out = doc.to_md
|
142
|
+
when :s5
|
143
|
+
suffix = '_s5slides.html'
|
144
|
+
out = doc.to_s5(:content_only => false, :print_slides => true)
|
145
|
+
end
|
146
|
+
end
|
147
|
+
|
148
|
+
if (output_file.nil? && filename.nil?) || output_file == "-"
|
149
|
+
if export == :pdf
|
150
|
+
$stderr.puts "Can't write PDF to stdout"
|
151
|
+
exit 1
|
152
|
+
end
|
153
|
+
|
154
|
+
cli_puts "Writing to standard output"
|
155
|
+
$stdout.puts out
|
156
|
+
next
|
157
|
+
end
|
158
|
+
|
159
|
+
if output_file
|
160
|
+
job = File.basename(output_file, File.extname(output_file))
|
161
|
+
else
|
162
|
+
dir = File.dirname(filename)
|
163
|
+
job = File.join(dir, File.basename(filename, File.extname(filename)))
|
164
|
+
output_file = job + suffix
|
165
|
+
end
|
166
|
+
|
167
|
+
if export == :pdf
|
168
|
+
cli_puts "Writing to #{job}.tex"
|
169
|
+
File.open("#{job}.tex", 'w') {|f| f.puts out}
|
170
|
+
cmd = ["pdflatex", "#{job}.tex", "-interaction=nonstopmode"]
|
171
|
+
cmd << "-output-directory=#{dir}" if dir
|
172
|
+
cli_puts "maruku: executing $ #{cmd.join(' ')}"
|
173
|
+
|
174
|
+
# run twice for cross references
|
175
|
+
system *cmd
|
176
|
+
system *cmd
|
177
|
+
next
|
178
|
+
end
|
179
|
+
|
180
|
+
cli_puts "Writing to #{output_file.inspect}"
|
181
|
+
File.open(output_file, 'w') {|f| f.puts out}
|
104
182
|
end
|
105
|
-
|
106
|
-
inputs.each do |f, input|
|
107
|
-
|
108
|
-
# create Maruku
|
109
|
-
params = {}
|
110
|
-
params[:on_error] = break_on_error ? :raise : :warning
|
111
|
-
|
112
|
-
t = Time.now
|
113
|
-
doc = Maruku.new(input, params)
|
114
|
-
|
115
|
-
cli_puts ("Parsing in %.2f seconds." % (Time.now-t))
|
116
|
-
|
117
|
-
out=""; suffix = "?"
|
118
|
-
t = Time.now
|
119
|
-
case export
|
120
|
-
when :html
|
121
|
-
suffix = using_mathml ? '.xhtml' : '.html'
|
122
|
-
out = doc.to_html_document( {:indent => -1})
|
123
|
-
when :html_frag
|
124
|
-
suffix='.html_frag'
|
125
|
-
out = doc.to_html( {:indent => -1})
|
126
|
-
when :pdf, :tex
|
127
|
-
suffix='.tex'
|
128
|
-
out = doc.to_latex_document
|
129
|
-
when :tex_frag
|
130
|
-
suffix='.tex_frag'
|
131
|
-
out = doc.to_latex
|
132
|
-
when :inspect
|
133
|
-
suffix='.txt'
|
134
|
-
out = doc.inspect
|
135
|
-
when :markdown
|
136
|
-
suffix='.pretty_md'
|
137
|
-
out = doc.to_markdown
|
138
|
-
when :s5
|
139
|
-
suffix='_s5slides.html'
|
140
|
-
out = doc.to_s5({:content_only => false})
|
141
|
-
end
|
142
|
-
|
143
|
-
cli_puts("Rendering in %.2f seconds." % (Time.now-t))
|
144
|
-
|
145
|
-
# write to file or stdout
|
146
|
-
if f
|
147
|
-
|
148
|
-
if not output_file
|
149
|
-
dir = File.dirname(f)
|
150
|
-
job = File.join(dir, File.basename(f, File.extname(f)))
|
151
|
-
output_file = job + suffix
|
152
|
-
else
|
153
|
-
job = File.basename(output_file, File.extname(output_file))
|
154
|
-
end
|
155
|
-
|
156
|
-
if output_file == "-"
|
157
|
-
cli_puts "Writing to standard output"
|
158
|
-
$stdout.puts out
|
159
|
-
else
|
160
|
-
|
161
|
-
if not (export == :pdf)
|
162
|
-
cli_puts "Writing to #{output_file}"
|
163
|
-
File.open(output_file,'w') do |f| f.puts out end
|
164
|
-
else
|
165
|
-
cli_puts "Writing to #{job}.tex"
|
166
|
-
File.open("#{job}.tex",'w') do |f| f.puts out end
|
167
|
-
cmd = "pdflatex '#{job}.tex' -interaction=nonstopmode "+
|
168
|
-
"'-output-directory=#{dir}' "
|
169
|
-
cli_puts "maruku: executing $ #{cmd}"
|
170
|
-
# run twice for cross references
|
171
|
-
system cmd
|
172
|
-
system cmd
|
173
|
-
end
|
174
|
-
|
175
|
-
end
|
176
|
-
else # write to stdout
|
177
|
-
cli_puts "Writing to standard output"
|
178
|
-
$stdout.puts out
|
179
|
-
end
|
180
|
-
end
|
181
|
-
|
data/bin/marutex
CHANGED
@@ -1,31 +1,4 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
if File.basename($0) =~ /^marutex/
|
6
|
-
# Convert each file
|
7
|
-
ARGV.each do |f|
|
8
|
-
puts "Opening #{f}"
|
9
|
-
|
10
|
-
# read file content
|
11
|
-
input = File.open(f,'r').read
|
12
|
-
|
13
|
-
# create Maruku
|
14
|
-
doc = Maruku.new(input)
|
15
|
-
# convert to a complete html document
|
16
|
-
latex = doc.to_latex_document
|
17
|
-
|
18
|
-
# write to file
|
19
|
-
dir = File.dirname(f)
|
20
|
-
job = File.join(dir, File.basename(f, File.extname(f)))
|
21
|
-
filename = job + ".tex"
|
22
|
-
|
23
|
-
File.open(filename,'w') do |f| f.puts latex end
|
24
|
-
|
25
|
-
# run twice for cross references
|
26
|
-
system "pdflatex '#{job}' '-output-directory=#{dir}' "
|
27
|
-
system "pdflatex '#{job}' '-output-directory=#{dir}' "
|
28
|
-
|
29
|
-
# system "open #{job}.pdf"
|
30
|
-
end
|
31
|
-
end
|
3
|
+
ARGV.unshift "--pdf"
|
4
|
+
load File.join(File.dirname(__FILE__), "maruku")
|
data/data/entities.xml
ADDED
@@ -0,0 +1,261 @@
|
|
1
|
+
<!-- A conversion chart for html elements, courtesy of text2html -->
|
2
|
+
<chars>
|
3
|
+
<char num='913' name='Alpha' convertTo='$A$' />
|
4
|
+
<char num='914' name='Beta' convertTo='$B$' />
|
5
|
+
<char num='915' name='Gamma' convertTo='$\Gamma$' />
|
6
|
+
<char num='916' name='Delta' convertTo='$\Delta$' />
|
7
|
+
<char num='917' name='Epsilon' convertTo='$E$' />
|
8
|
+
<char num='918' name='Zeta' convertTo='$Z$' />
|
9
|
+
<char num='919' name='Eta' convertTo='$H$' />
|
10
|
+
<char num='920' name='Theta' convertTo='$\Theta$' />
|
11
|
+
<char num='921' name='Iota' convertTo='$I$' />
|
12
|
+
<char num='922' name='Kappa' convertTo='$K$' />
|
13
|
+
<char num='923' name='Lambda' convertTo='$\Lambda$' />
|
14
|
+
<char num='924' name='Mu' convertTo='$M$' />
|
15
|
+
<char num='925' name='Nu' convertTo='$N$' />
|
16
|
+
<char num='926' name='Xi' convertTo='$\Xi$' />
|
17
|
+
<char num='927' name='Omicron' convertTo='$O$' />
|
18
|
+
<char num='928' name='Pi' convertTo='$\Pi$' />
|
19
|
+
<char num='929' name='Rho' convertTo='$P$' />
|
20
|
+
<char num='931' name='Sigma' convertTo='$\Sigma$' />
|
21
|
+
<char num='932' name='Tau' convertTo='$T$' />
|
22
|
+
<char num='933' name='Upsilon' convertTo='$Y$' />
|
23
|
+
<char num='934' name='Phi' convertTo='$\Phi$' />
|
24
|
+
<char num='935' name='Chi' convertTo='$X$' />
|
25
|
+
<char num='936' name='Psi' convertTo='$\Psi$' />
|
26
|
+
<char num='937' name='Omega' convertTo='$\Omega$' />
|
27
|
+
<char num='945' name='alpha' convertTo='$\alpha$' />
|
28
|
+
<char num='946' name='beta' convertTo='$\beta$' />
|
29
|
+
<char num='947' name='gamma' convertTo='$\gamma$' />
|
30
|
+
<char num='948' name='delta' convertTo='$\delta$' />
|
31
|
+
<char num='949' name='epsilon' convertTo='$\epsilon$' />
|
32
|
+
<char num='950' name='zeta' convertTo='$\zeta$' />
|
33
|
+
<char num='951' name='eta' convertTo='$\eta$' />
|
34
|
+
<char num='952' name='theta' convertTo='$\theta$' />
|
35
|
+
<char num='953' name='iota' convertTo='$\iota$' />
|
36
|
+
<char num='954' name='kappa' convertTo='$\kappa$' />
|
37
|
+
<char num='955' name='lambda' convertTo='$\lambda$' />
|
38
|
+
<char num='956' name='mu' convertTo='$\mu$' />
|
39
|
+
|
40
|
+
<char num='957' name='nu' convertTo='$\nu$' />
|
41
|
+
<char num='958' name='xi' convertTo='$\xi$' />
|
42
|
+
<char num='959' name='omicron' convertTo='$o$' />
|
43
|
+
<char num='960' name='pi' convertTo='$\pi$' />
|
44
|
+
<char num='961' name='rho' convertTo='$\rho$' />
|
45
|
+
<char num='963' name='sigma' convertTo='$\sigma$' />
|
46
|
+
<char num='964' name='tau' convertTo='$\tau$' />
|
47
|
+
<char num='965' name='upsilon' convertTo='$\upsilon$' />
|
48
|
+
<char num='966' name='phi' convertTo='$\phi$' />
|
49
|
+
|
50
|
+
<char num='967' name='chi' convertTo='$\chi$' />
|
51
|
+
<char num='968' name='psi' convertTo='$\psi$' />
|
52
|
+
<char num='969' name='omega' convertTo='$\omega$' />
|
53
|
+
<char num='962' name='sigmaf' convertTo='$\varsigma$' />
|
54
|
+
<char num='977' name='thetasym' convertTo='$\vartheta$' />
|
55
|
+
<char num='982' name='piv' convertTo='$\varpi$' />
|
56
|
+
<char num='8230' name='hellip' convertTo='\ldots' />
|
57
|
+
<char num='8242' name='prime' convertTo='$\prime$' />
|
58
|
+
<char num='8254' name='oline' convertTo='-' />
|
59
|
+
|
60
|
+
<char num='8260' name='frasl' convertTo='/' />
|
61
|
+
<char num='8472' name='weierp' convertTo='$\wp$' />
|
62
|
+
<char num='8465' name='image' convertTo='$\Im$' />
|
63
|
+
<char num='8476' name='real' convertTo='$\Re$' />
|
64
|
+
<char num='8501' name='alefsym' convertTo='$\aleph$' />
|
65
|
+
<char num='8226' name='bull' convertTo='$\bullet$' />
|
66
|
+
<char num='8482' name='trade' convertTo='$^{\rm TM}$' /> <!-- exttrademark -->
|
67
|
+
<char num='8592' name='larr' convertTo='$\leftarrow$' />
|
68
|
+
|
69
|
+
<char num='8594' name='rarr' convertTo='$\rightarrow$' />
|
70
|
+
<char num='8593' name='uarr' convertTo='$\uparrow$' />
|
71
|
+
<char num='8595' name='darr' convertTo='$\downarrow$' />
|
72
|
+
<char num='8596' name='harr' convertTo='$\leftrightarrow$' />
|
73
|
+
<char num='8629' name='crarr' convertTo='$\hookleftarrow$' />
|
74
|
+
<char num='8657' name='uArr' convertTo='$\Uparrow$' />
|
75
|
+
<char num='8659' name='dArr' convertTo='$\Downarrow$' />
|
76
|
+
<char num='8656' name='lArr' convertTo='$\Leftarrow$' />
|
77
|
+
<char num='8658' name='rArr' convertTo='$\Rightarrow$' />
|
78
|
+
|
79
|
+
<char num='8660' name='hArr' convertTo='$\Leftrightarrow$' />
|
80
|
+
<char num='8704' name='forall' convertTo='$\forall$' />
|
81
|
+
<char num='8706' name='part' convertTo='$\partial$' />
|
82
|
+
<char num='8707' name='exist' convertTo='$\exists$' />
|
83
|
+
<char num='8709' name='empty' convertTo='$\emptyset$' />
|
84
|
+
<char num='8711' name='nabla' convertTo='$\nabla$' />
|
85
|
+
<char num='8712' name='isin' convertTo='$\in$' />
|
86
|
+
<char num='8715' name='ni' convertTo='$\ni$' />
|
87
|
+
<char num='8713' name='notin' convertTo='$\notin$' />
|
88
|
+
|
89
|
+
<char num='8721' name='sum' convertTo='$\sum$' />
|
90
|
+
<char num='8719' name='prod' convertTo='$\prod$' />
|
91
|
+
<char num='8722' name='minus' convertTo='$-$' />
|
92
|
+
<char num='8727' name='lowast' convertTo='$\ast$' />
|
93
|
+
<char num='8730' name='radic' convertTo='$\surd$' />
|
94
|
+
<char num='8733' name='prop' convertTo='$\propto$' />
|
95
|
+
<char num='8734' name='infin' convertTo='$\infty$' />
|
96
|
+
<char num='8736' name='ang' convertTo='$\angle$' />
|
97
|
+
<char num='8743' name='and' convertTo='$\wedge$' />
|
98
|
+
|
99
|
+
<char num='8744' name='or' convertTo='$\vee$' />
|
100
|
+
<char num='8745' name='cup' convertTo='$\cup$' />
|
101
|
+
<char num='8746' name='cap' convertTo='$\cap$' />
|
102
|
+
<char num='8747' name='int' convertTo='$\int$' />
|
103
|
+
<char num='8756' name='there4' convertTo='$\therefore$' package='amssymb' /> <!-- only AMS -->
|
104
|
+
<char num='8764' name='sim' convertTo='$\sim$' />
|
105
|
+
<char num='8776' name='asymp' convertTo='$\approx$' />
|
106
|
+
<char num='8773' name='cong' convertTo='$\cong$' />
|
107
|
+
|
108
|
+
<char num='8800' name='ne' convertTo='$\neq$' />
|
109
|
+
<char num='8801' name='equiv' convertTo='$\equiv$' />
|
110
|
+
<char num='8804' name='le' convertTo='$\leq$' />
|
111
|
+
<char num='8805' name='ge' convertTo='$\geq$' />
|
112
|
+
<char num='8834' name='sub' convertTo='$\subset$' />
|
113
|
+
<char num='8835' name='sup' convertTo='$\supset$' />
|
114
|
+
<!-- <char num='8838' name='sube' convertTo='$\subseteq$' />-->
|
115
|
+
<char num='8839' name='supe' convertTo='$\supseteq$' />
|
116
|
+
<!-- <char num='8836' name='nsub' convertTo='$\nsubset$' /> only AMS -->
|
117
|
+
|
118
|
+
<char num='8853' name='oplus' convertTo='$\oplus$' />
|
119
|
+
<char num='8855' name='otimes' convertTo='$\otimes$' />
|
120
|
+
<char num='8869' name='perp' convertTo='$\perp$' />
|
121
|
+
<char num='8901' name='sdot' convertTo='$\cdot$' />
|
122
|
+
<char num='8968' name='rceil' convertTo='$\rceil$' />
|
123
|
+
<char num='8969' name='lceil' convertTo='$\lceil$' />
|
124
|
+
<char num='8970' name='lfloor' convertTo='$\lfloor$' />
|
125
|
+
<char num='8971' name='rfloor' convertTo='$\rfloor$' />
|
126
|
+
<char num='9001' name='rang' convertTo='$\rangle$' />
|
127
|
+
|
128
|
+
<char num='9002' name='lang' convertTo='$\langle$' />
|
129
|
+
<char num='9674' name='loz' convertTo='$\lozenge$' package='amssymb' /> <!-- only AMS -->
|
130
|
+
<char num='9824' name='spades' convertTo='$\spadesuit$' />
|
131
|
+
<char num='9827' name='clubs' convertTo='$\clubsuit$' />
|
132
|
+
<char num='9829' name='hearts' convertTo='$\heartsuit$' />
|
133
|
+
<char num='9830' name='diams' convertTo='$\diamondsuit$' />
|
134
|
+
<char num='38' name='amp' convertTo='\&' />
|
135
|
+
<!-- <char num='34' name='quot' convertTo='\"' /> XXX -->
|
136
|
+
<char num='34' name='quot' convertTo='"' />
|
137
|
+
<char num='39' name='apos' convertTo="'" />
|
138
|
+
<char num='169' name='copy' convertTo='\copyright' />
|
139
|
+
|
140
|
+
<char num='60' name='lt' convertTo='$<$' />
|
141
|
+
<char num='62' name='gt' convertTo='$>$' />
|
142
|
+
<char num='338' name='OElig' convertTo='\OE' />
|
143
|
+
<char num='339' name='oelig' convertTo='\oe' />
|
144
|
+
<char num='352' name='Scaron' convertTo='\v{S}' />
|
145
|
+
<char num='353' name='scaron' convertTo='\v{s}' />
|
146
|
+
<char num='376' name='Yuml' convertTo='\"Y' />
|
147
|
+
<char num='710' name='circ' convertTo='\textasciicircum' />
|
148
|
+
<char num='732' name='tilde' convertTo='\textasciitilde' />
|
149
|
+
|
150
|
+
<char num='8211' name='ndash' convertTo='--' />
|
151
|
+
<char num='8212' name='mdash' convertTo='---' />
|
152
|
+
<char num='8216' name='lsquo' convertTo='`' />
|
153
|
+
<char num='8217' name='rsquo' convertTo="'" /> <!-- XXXX -->
|
154
|
+
<char num='8220' name='ldquo' convertTo='``' />
|
155
|
+
<char num='8221' name='rdquo' convertTo="''" /> <!-- XXXX -->
|
156
|
+
<char num='8224' name='dagger' convertTo='\dag' />
|
157
|
+
<char num='8225' name='Dagger' convertTo='\ddag' />
|
158
|
+
<char num='8240' name='permil' convertTo='\permil' package='wasysym' /> <!-- wasysym package -->
|
159
|
+
|
160
|
+
<char num='8364' name='euro' convertTo='\euro' package='eurosym' /> <!-- eurosym package -->
|
161
|
+
<char num='8249' name='lsaquo' convertTo='\guilsinglleft' package='aeguill'/>
|
162
|
+
<char num='8250' name='rsaquo' convertTo='\guilsinglright' package='aeguill' />
|
163
|
+
<!-- <char num='160' name='nbsp' convertTo='\nolinebreak' />-->
|
164
|
+
<char num='160' name='nbsp' convertTo='~' />
|
165
|
+
<char num='161' name='iexcl' convertTo='\textexclamdown' />
|
166
|
+
<char num='163' name='pound' convertTo='\pounds' />
|
167
|
+
<char num='164' name='curren' convertTo='\currency' package='wasysym' /> <!-- wasysym package -->
|
168
|
+
<char num='165' name='yen' convertTo='\textyen' package='textcomp'/> <!-- textcomp -->
|
169
|
+
|
170
|
+
<char num='166' name='brvbar' convertTo='\brokenvert' /> <!-- wasysym -->
|
171
|
+
<char num='167' name='sect' convertTo='\S' />
|
172
|
+
<char num='171' name='laquo' convertTo='\guillemotleft' package='aeguill'/>
|
173
|
+
<char num='187' name='raquo' convertTo='\guillemotright' package='aeguill'/>
|
174
|
+
<char num='174' name='reg' convertTo='\textregistered' />
|
175
|
+
<char num='170' name='ordf' convertTo='\textordfeminine' />
|
176
|
+
<char num='172' name='not' convertTo='$\neg$' />
|
177
|
+
<!-- <char num='176' name='deg' convertTo='$\degree$' /> mathabx -->
|
178
|
+
<char num='176' name='deg' convertTo='\textdegree' package='textcomp'/>
|
179
|
+
|
180
|
+
<char num='177' name='plusmn' convertTo='$\pm$' />
|
181
|
+
<char num='180' name='acute' convertTo=''' />
|
182
|
+
<char num='181' name='micro' convertTo='$\mu$' />
|
183
|
+
<char num='182' name='para' convertTo='\P' />
|
184
|
+
<char num='183' name='middot' convertTo='$\cdot$' />
|
185
|
+
<char num='186' name='ordm' convertTo='\textordmasculine' />
|
186
|
+
<char num='162' name='cent' convertTo='\cent' package='wasysym' />
|
187
|
+
<char num='185' name='sup1' convertTo='$^1$' />
|
188
|
+
|
189
|
+
<char num='178' name='sup2' convertTo='$^2$' />
|
190
|
+
<char num='179' name='sup3' convertTo='$^3$' />
|
191
|
+
<char num='189' name='frac12' convertTo='$\frac{1}{2}$' />
|
192
|
+
<char num='188' name='frac14' convertTo='$\frac{1}{4}$' />
|
193
|
+
<char num='190' name='frac34' convertTo='$\frac{3}{4}$' />
|
194
|
+
<char num='192' name='Agrave' convertTo='\`A' />
|
195
|
+
<char num='193' name='Aacute' convertTo='\'A' />
|
196
|
+
<char num='194' name='Acirc' convertTo='\^A' />
|
197
|
+
<char num='195' name='Atilde' convertTo='\~A' />
|
198
|
+
|
199
|
+
<char num='196' name='Auml' convertTo='\"A' />
|
200
|
+
<char num='197' name='Aring' convertTo='\AA' />
|
201
|
+
<char num='198' name='AElig' convertTo='\AE' />
|
202
|
+
<char num='199' name='Ccedil' convertTo='\c{C}' />
|
203
|
+
<char num='200' name='Egrave' convertTo='\`E' />
|
204
|
+
<char num='201' name='Eacute' convertTo='\'E' />
|
205
|
+
<char num='202' name='Ecirc' convertTo='\^E' />
|
206
|
+
<char num='203' name='Euml' convertTo='\"E' />
|
207
|
+
<char num='204' name='Igrave' convertTo='\`I' />
|
208
|
+
<char num='205' name='Iacute' convertTo='\'I' />
|
209
|
+
<char num='206' name='Icirc' convertTo='\^I' />
|
210
|
+
<char num='207' name='Iuml' convertTo='\"I' />
|
211
|
+
<char num='208' name='ETH' convertTo='$\eth$' /> <!-- AMS -->
|
212
|
+
<char num='209' name='Ntilde' convertTo='\~N' />
|
213
|
+
<char num='210' name='Ograve' convertTo='\`O' />
|
214
|
+
<char num='211' name='Oacute' convertTo='\'O' />
|
215
|
+
<char num='212' name='Ocirc' convertTo='\^O' />
|
216
|
+
<char num='213' name='Otilde' convertTo='\~O' />
|
217
|
+
<char num='214' name='Ouml' convertTo='\"O' />
|
218
|
+
<char num='215' name='times' convertTo='$\times$' />
|
219
|
+
<char num='216' name='Oslash' convertTo='\O' />
|
220
|
+
<char num='217' name='Ugrave' convertTo='\`U' />
|
221
|
+
<char num='218' name='Uacute' convertTo='\'U' />
|
222
|
+
<char num='219' name='Ucirc' convertTo='\^U' />
|
223
|
+
<char num='220' name='Uuml' convertTo='\"U' />
|
224
|
+
<char num='221' name='Yacute' convertTo='\'Y' />
|
225
|
+
<char num='223' name='szlig' convertTo='\ss' />
|
226
|
+
<char num='224' name='agrave' convertTo='\`a' />
|
227
|
+
<char num='225' name='aacute' convertTo='\'a' />
|
228
|
+
<char num='226' name='acirc' convertTo='\^a' />
|
229
|
+
<char num='227' name='atilde' convertTo='\~a' />
|
230
|
+
<char num='228' name='auml' convertTo='\"a' />
|
231
|
+
<char num='229' name='aring' convertTo='\aa' />
|
232
|
+
<char num='230' name='aelig' convertTo='\ae' />
|
233
|
+
<char num='231' name='ccedil' convertTo='\c{c}' />
|
234
|
+
<char num='232' name='egrave' convertTo='\`e' />
|
235
|
+
<char num='233' name='eacute' convertTo='\'e' />
|
236
|
+
<char num='234' name='ecirc' convertTo='\^e' />
|
237
|
+
<char num='235' name='euml' convertTo='\"e' />
|
238
|
+
<char num='236' name='igrave' convertTo='\`i' />
|
239
|
+
<char num='237' name='iacute' convertTo='\'i' />
|
240
|
+
<char num='238' name='icirc' convertTo='\^i' />
|
241
|
+
<char num='239' name='iuml' convertTo='\"i' />
|
242
|
+
<char num='240' name='eth' convertTo='$\eth$' package='amssymb'/> <!-- -->
|
243
|
+
<char num='241' name='ntilde' convertTo='\~n' />
|
244
|
+
<char num='242' name='ograve' convertTo='\`o' />
|
245
|
+
<char num='243' name='oacute' convertTo='\'o' />
|
246
|
+
<char num='244' name='ocirc' convertTo='\^o' />
|
247
|
+
<char num='245' name='otilde' convertTo='\~o' />
|
248
|
+
<char num='246' name='ouml' convertTo='\"o' />
|
249
|
+
<!-- <char num='247' name='divide' convertTo='$\divide$' /> -->
|
250
|
+
<char num='248' name='oslash' convertTo='\o' />
|
251
|
+
<char num='249' name='ugrave' convertTo='\`u' />
|
252
|
+
<char num='250' name='uacute' convertTo='\'u' />
|
253
|
+
<char num='251' name='ucirc' convertTo='\^u' />
|
254
|
+
<char num='252' name='uuml' convertTo='\"u' />
|
255
|
+
<char num='253' name='yacute' convertTo='\'y' />
|
256
|
+
|
257
|
+
<char num='255' name='yuml' convertTo='\"y' />
|
258
|
+
|
259
|
+
<char num='222' name='THORN' convertTo='\Thorn' package='wasysym' />
|
260
|
+
<char num='254' name='thorn' convertTo='\thorn' package='wasysym' />
|
261
|
+
</chars>
|