maruku 0.4.0 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/maruku +74 -22
- data/bin/marutest +15 -3
- data/docs/{changelog-0.3.md → changelog.md} +47 -18
- data/docs/entity_test.html +253 -0
- data/docs/entity_test.md +21 -0
- data/docs/index.html +124 -31
- data/docs/markdown_syntax.html +46 -46
- data/docs/maruku.html +124 -31
- data/docs/maruku.md +47 -9
- data/docs/proposal.html +4 -4
- data/lib/maruku.rb +1 -0
- data/lib/maruku/defaults.rb +1 -1
- data/lib/maruku/helpers.rb +4 -4
- data/lib/maruku/input/parse_block.rb +39 -33
- data/lib/maruku/input/parse_doc.rb +57 -3
- data/lib/maruku/input/parse_span_better.rb +28 -8
- data/lib/maruku/input/rubypants.rb +225 -0
- data/lib/maruku/input/type_detection.rb +1 -0
- data/lib/maruku/output/to_html.rb +46 -47
- data/lib/maruku/output/to_latex.rb +166 -45
- data/lib/maruku/output/to_latex_entities.rb +75 -43
- data/lib/maruku/string_utils.rb +21 -19
- data/lib/maruku/structures.rb +21 -12
- data/lib/maruku/structures_inspect.rb +12 -3
- data/lib/maruku/tests/new_parser.rb +2 -1
- data/lib/maruku/version.rb +1 -1
- data/tests/unittest/abbreviations.md +8 -8
- data/tests/unittest/attributes/attributes.md +10 -10
- data/tests/unittest/attributes/circular.md +4 -4
- data/tests/unittest/attributes/default.md +3 -3
- data/tests/unittest/blank.md +2 -2
- data/tests/unittest/blanks_in_code.md +12 -12
- data/tests/unittest/code.md +4 -4
- data/tests/unittest/code2.md +7 -6
- data/tests/unittest/code3.md +16 -16
- data/tests/unittest/easy.md +4 -4
- data/tests/unittest/email.md +4 -4
- data/tests/unittest/encoding/iso-8859-1.md +2 -2
- data/tests/unittest/encoding/utf-8.md +2 -2
- data/tests/unittest/entities.md +20 -20
- data/tests/unittest/escaping.md +16 -16
- data/tests/unittest/extra_dl.md +17 -7
- data/tests/unittest/extra_header_id.md +11 -11
- data/tests/unittest/extra_table1.md +4 -4
- data/tests/unittest/footnotes.md +38 -28
- data/tests/unittest/headers.md +6 -6
- data/tests/unittest/hrule.md +6 -6
- data/tests/unittest/images.md +18 -16
- data/tests/unittest/inline_html.md +7 -29
- data/tests/unittest/inline_html2.md +3 -3
- data/tests/unittest/links.md +7 -27
- data/tests/unittest/list1.md +9 -8
- data/tests/unittest/list2.md +15 -12
- data/tests/unittest/list3.md +16 -14
- data/tests/unittest/list4.md +4 -4
- data/tests/unittest/lists.md +33 -29
- data/tests/unittest/lists_after_paragraph.md +36 -36
- data/tests/unittest/lists_ol.md +43 -38
- data/tests/unittest/misc_sw.md +172 -156
- data/tests/unittest/notyet/escape.md +8 -8
- data/tests/unittest/notyet/header_after_par.md +6 -6
- data/tests/unittest/notyet/ticks.md +4 -4
- data/tests/unittest/notyet/triggering.md +21 -21
- data/tests/unittest/olist.md +5 -5
- data/tests/unittest/one.md +1 -1
- data/tests/unittest/paragraph.md +1 -1
- data/tests/unittest/paragraph_rules/dont_merge_ref.md +1 -1
- data/tests/unittest/paragraph_rules/tab_is_blank.md +2 -2
- data/tests/unittest/paragraphs.md +5 -5
- data/tests/unittest/recover/recover_links.md +2 -2
- data/tests/unittest/references/long_example.md +27 -19
- data/tests/unittest/smartypants.md +148 -0
- data/tests/unittest/syntax_hl.md +14 -14
- data/tests/unittest/test.md +2 -2
- data/tests/unittest/wrapping.md +8 -8
- data/tests/unittest/xml_instruction.md +82 -0
- metadata +149 -160
- data/docs/TOFIX.html +0 -22
- data/docs/TOFIX.md +0 -3
- data/docs/changelog-0.2.13.html +0 -30
- data/docs/changelog-0.2.13.md +0 -6
- data/docs/changelog-0.3.html +0 -113
- data/docs/faq.html +0 -57
- data/docs/faq.md +0 -32
- data/docs/hidden_o_n_squared.md +0 -10
- data/docs/todo.html +0 -40
- data/docs/todo.md +0 -9
@@ -18,12 +18,25 @@
|
|
18
18
|
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
19
19
|
#++
|
20
20
|
|
21
|
-
|
22
21
|
module MaRuKu
|
23
|
-
|
22
|
+
|
24
23
|
class MDDocument
|
25
24
|
|
26
|
-
|
25
|
+
Latex_preamble_enc_cjk =
|
26
|
+
"\\usepackage[C40]{fontenc}
|
27
|
+
\\usepackage[cjkjis]{ucs}
|
28
|
+
\\usepackage[utf8x]{inputenc}"
|
29
|
+
|
30
|
+
Latex_preamble_enc_utf8 =
|
31
|
+
"\\usepackage{ucs}
|
32
|
+
\\usepackage[utf8x]{inputenc}"
|
33
|
+
|
34
|
+
def latex_require_package(p)
|
35
|
+
if not self.latex_required_packages.include? p
|
36
|
+
self.latex_required_packages.push p
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
27
40
|
# Render as a LaTeX fragment
|
28
41
|
def to_latex
|
29
42
|
children_to_latex
|
@@ -31,25 +44,77 @@ class MDDocument
|
|
31
44
|
|
32
45
|
# Render as a complete LaTeX document
|
33
46
|
def to_latex_document
|
34
|
-
header = ""
|
35
|
-
|
36
|
-
if @doc.attributes[:latex_use_listings]
|
37
|
-
header += "\\usepackage{listings}\n"
|
38
|
-
end
|
39
|
-
|
40
47
|
body = to_latex
|
41
48
|
|
42
49
|
body += render_latex_signature
|
43
50
|
|
51
|
+
required =
|
52
|
+
self.latex_required_packages.map {|p|
|
53
|
+
"\\usepackage{#{p}}\n"
|
54
|
+
}.join
|
55
|
+
|
56
|
+
=begin maruku_doc
|
57
|
+
Attribute: latex_cjk
|
58
|
+
Scope: document
|
59
|
+
Output: latex
|
60
|
+
Summary: Support for CJK characters.
|
61
|
+
|
62
|
+
If the `latex_cjk` attribute is specified, then appropriate headers
|
63
|
+
are added to the LaTeX preamble to support Japanese fonts.
|
64
|
+
You have to have these fonts installed -- and this can be a pain.
|
65
|
+
|
66
|
+
If `latex_cjk` is specified, this is added to the preamble:
|
67
|
+
|
68
|
+
<?mrk md_code_block(Maruku::MDDocument::Latex_preamble_enc_cjk) ?>
|
69
|
+
|
70
|
+
while the default is to add this:
|
71
|
+
|
72
|
+
<?mrk md_code_block(Maruku::MDDocument::Latex_preamble_enc_utf8) ?>
|
73
|
+
|
74
|
+
=end
|
75
|
+
encoding = @doc.attributes[:latex_cjk] ?
|
76
|
+
Latex_preamble_enc_cjk : Latex_preamble_enc_utf8
|
77
|
+
|
78
|
+
=begin maruku_doc
|
79
|
+
Attribute: latex_preamble
|
80
|
+
Scope: document
|
81
|
+
Output: latex
|
82
|
+
Summary: User-defined preamble.
|
83
|
+
|
84
|
+
If the `latex_preamble` attribute is specified, then its value
|
85
|
+
will be used as a custom preamble.
|
86
|
+
|
87
|
+
For example:
|
88
|
+
|
89
|
+
Title: My document
|
90
|
+
Latex preamble: preamble.tex
|
91
|
+
|
92
|
+
will produce:
|
93
|
+
|
94
|
+
...
|
95
|
+
\input{preamble.tex}
|
96
|
+
...
|
97
|
+
|
98
|
+
=end
|
99
|
+
user_preamble = (file = @doc.attributes[:latex_preamble]) ?
|
100
|
+
"\\input{#{file}}\n" : ""
|
101
|
+
|
44
102
|
"\\documentclass{article}
|
45
|
-
|
103
|
+
|
104
|
+
% Packages required to support encoding
|
105
|
+
#{encoding}
|
106
|
+
|
107
|
+
% Packages required by code
|
108
|
+
#{required}
|
109
|
+
|
110
|
+
#{user_preamble}
|
111
|
+
|
46
112
|
\\usepackage{hyperref}
|
47
113
|
\\usepackage{xspace}
|
48
114
|
\\usepackage[usenames,dvipsnames]{color}
|
49
115
|
\\usepackage[margin=1in]{geometry}
|
50
116
|
\\hypersetup{colorlinks=true}
|
51
|
-
|
52
|
-
%\\usepackage[utf8x]{inputenc}
|
117
|
+
|
53
118
|
\\begin{document}
|
54
119
|
#{body}
|
55
120
|
\\end{document}
|
@@ -74,34 +139,82 @@ module MaRuKu; module Out; module Latex
|
|
74
139
|
def to_latex_hrule; "\n\\vspace{.5em} \\hrule \\vspace{.5em}\n" end
|
75
140
|
def to_latex_linebreak; "\\linebreak " end
|
76
141
|
|
77
|
-
def to_latex_paragraph
|
142
|
+
def to_latex_paragraph
|
78
143
|
children_to_latex+"\n\n"
|
79
144
|
end
|
80
145
|
|
81
146
|
def get_setting(name, default=nil)
|
82
147
|
self.attributes[name] || @doc.attributes[name] || default
|
83
148
|
end
|
84
|
-
|
149
|
+
=begin maruku_doc
|
150
|
+
Title: Input format for colors
|
151
|
+
Output: latex, html
|
152
|
+
Related: code_background_color
|
153
|
+
|
154
|
+
Admissible formats:
|
155
|
+
|
156
|
+
green
|
157
|
+
#abc
|
158
|
+
#aabbcc
|
159
|
+
=end
|
160
|
+
|
85
161
|
# \color[named]{name}
|
86
162
|
# \color[rgb]{1,0.2,0.3}
|
87
163
|
def latex_color(s, command='color')
|
88
164
|
if s =~ /^\#(\w\w)(\w\w)(\w\w)$/
|
89
|
-
r = $1.hex; g = $2.hex; b=$3.hex
|
165
|
+
r = $1.hex; g = $2.hex; b=$3.hex
|
90
166
|
# convert from 0-255 to 0.0-1.0
|
91
|
-
r = r / 255.0
|
92
|
-
g = g / 255.0
|
93
|
-
b = b / 255.0
|
94
|
-
|
167
|
+
r = r / 255.0; g = g / 255.0; b = b / 255.0;
|
95
168
|
"\\#{command}[rgb]{%0.2f,%0.2f,%0.2f}" % [r,g,b]
|
96
|
-
|
169
|
+
elsif s =~ /^\#(\w)(\w)(\w)$/
|
170
|
+
r = $1.hex; g = $2.hex; b=$3.hex
|
171
|
+
# convert from 0-15 to 0.0-1.0
|
172
|
+
r = r / 15.0; g = g / 15.0; b = b / 15.0;
|
173
|
+
"\\#{command}[rgb]{%0.2f,%0.2f,%0.2f}" % [r,g,b]
|
174
|
+
else
|
97
175
|
"\\#{command}{#{s}}"
|
98
176
|
end
|
99
177
|
end
|
100
178
|
|
101
179
|
def to_latex_code;
|
102
180
|
raw_code = self.raw_code
|
181
|
+
=begin maruku_doc
|
182
|
+
Attribute: latex_use_listings
|
183
|
+
Scope: document
|
184
|
+
Output: latex
|
185
|
+
Summary: Support for `listings` package.
|
186
|
+
Related: code_show_spaces, code_background_color, lang, code_lang
|
187
|
+
|
188
|
+
If the `latex_use_listings` attribute is specified, then
|
189
|
+
code block are rendered using the `listings` package.
|
190
|
+
Otherwise, a standard `verbatim` environment is used.
|
191
|
+
|
192
|
+
* If the `lang` attribute for the code block has been specified,
|
193
|
+
it gets passed to the `listings` package using the `lstset` macro.
|
194
|
+
The default lang for code blocks is specified through
|
195
|
+
the `code_lang` attribute.
|
196
|
+
|
197
|
+
\lstset{language=ruby}
|
198
|
+
|
199
|
+
Please refer to the documentation of the `listings` package for
|
200
|
+
supported languages.
|
201
|
+
|
202
|
+
If a language is not supported, the `listings` package will emit
|
203
|
+
a warning during the compilation. Just press enter and nothing
|
204
|
+
wrong will happen.
|
205
|
+
|
206
|
+
* If the `code_show_spaces` is specified, than spaces and tabs will
|
207
|
+
be shown using the macro:
|
208
|
+
|
209
|
+
\lstset{showspaces=true,showtabs=true}
|
210
|
+
|
211
|
+
* The background color is given by `code_background_color`.
|
212
|
+
|
213
|
+
=end
|
103
214
|
|
104
215
|
if @doc.attributes[:latex_use_listings]
|
216
|
+
@doc.latex_require_package('listings')
|
217
|
+
|
105
218
|
s = "\\lstset{columns=fixed,frame=shadowbox}"
|
106
219
|
|
107
220
|
show_spaces = get_setting(:code_show_spaces)
|
@@ -203,35 +316,31 @@ module MaRuKu; module Out; module Latex
|
|
203
316
|
"#{colorspec}{\\tt #{s}}"
|
204
317
|
end
|
205
318
|
|
206
|
-
def
|
319
|
+
def to_latex_im_link
|
207
320
|
url = self.url
|
208
|
-
|
321
|
+
|
322
|
+
if url[0,1] == '#'
|
323
|
+
url = url[1,url.size]
|
324
|
+
return "\\hyperlink{#{url}}{#{children_to_latex}}"
|
325
|
+
else
|
326
|
+
return "\\href{#{url}}{#{children_to_latex}}"
|
327
|
+
end
|
209
328
|
end
|
210
329
|
|
211
330
|
def to_latex_link
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
else
|
223
|
-
url = ref[:url]
|
224
|
-
#title = ref[:title] || 'no title'
|
225
|
-
|
226
|
-
if url[0,1] == '#'
|
227
|
-
url = url[1,url.size]
|
228
|
-
return "\\hyperlink{#{url}}{#{children_to_latex}}"
|
229
|
-
else
|
230
|
-
return "\\href{#{url}}{#{children_to_latex}}"
|
231
|
-
end
|
232
|
-
end
|
331
|
+
id = self.ref_id
|
332
|
+
# if empty, use text
|
333
|
+
if id.size == 0
|
334
|
+
id = children.to_s.downcase
|
335
|
+
end
|
336
|
+
|
337
|
+
ref = @doc.refs[id]
|
338
|
+
if not ref
|
339
|
+
$stderr.puts "Could not find id = '#{id}'"
|
340
|
+
return children_to_latex
|
233
341
|
else
|
234
|
-
url =
|
342
|
+
url = ref[:url]
|
343
|
+
#title = ref[:title] || 'no title'
|
235
344
|
|
236
345
|
if url[0,1] == '#'
|
237
346
|
url = url[1,url.size]
|
@@ -240,6 +349,7 @@ module MaRuKu; module Out; module Latex
|
|
240
349
|
return "\\href{#{url}}{#{children_to_latex}}"
|
241
350
|
end
|
242
351
|
end
|
352
|
+
|
243
353
|
end
|
244
354
|
|
245
355
|
def to_latex_email_address
|
@@ -297,7 +407,8 @@ module MaRuKu; module Out; module Latex
|
|
297
407
|
end
|
298
408
|
|
299
409
|
def to_latex_raw_html
|
300
|
-
'{\bf Raw HTML removed in latex version }'
|
410
|
+
#'{\bf Raw HTML removed in latex version }'
|
411
|
+
""
|
301
412
|
end
|
302
413
|
|
303
414
|
## Definition lists ###
|
@@ -371,6 +482,16 @@ module MaRuKu; module Out; module Latex
|
|
371
482
|
e << h
|
372
483
|
end
|
373
484
|
end
|
485
|
+
|
486
|
+
# puts a space after commands if needed
|
487
|
+
e.each_index do |i|
|
488
|
+
if e[i] =~ /\\\w+\s*$/ # command
|
489
|
+
if (s=e[i+1]) && s[0] == ?\ # space
|
490
|
+
e[i] = e[i] + "\\ "
|
491
|
+
end
|
492
|
+
end
|
493
|
+
end
|
494
|
+
|
374
495
|
e.join(join_char)
|
375
496
|
end
|
376
497
|
|
@@ -25,39 +25,64 @@ module MaRuKu; module Out; module Latex
|
|
25
25
|
|
26
26
|
include REXML
|
27
27
|
|
28
|
+
|
28
29
|
def to_latex_entity
|
29
30
|
entity_name = self.entity_name
|
31
|
+
|
32
|
+
entity = ENTITY_TABLE[entity_name]
|
33
|
+
replace = entity.latex_string
|
30
34
|
|
31
|
-
|
35
|
+
entity.latex_packages.each do |p|
|
36
|
+
@doc.latex_require_package p
|
37
|
+
end
|
38
|
+
|
39
|
+
if replace =~ /^\\/
|
40
|
+
replace = replace + " "
|
41
|
+
end
|
32
42
|
|
33
|
-
replace = @@entity_to_latex[entity_name]
|
34
43
|
if replace
|
35
|
-
# puts "#{entity_name} -> #{replace.inspect}"
|
36
44
|
return replace
|
37
45
|
else
|
38
|
-
|
46
|
+
tell_user "Cannot translate entity #{entity_name.inspect} to LaTeX."
|
39
47
|
return entity_name
|
40
48
|
end
|
41
49
|
end
|
42
50
|
|
51
|
+
class LatexEntity
|
52
|
+
safe_attr_accessor :html_num, Fixnum
|
53
|
+
safe_attr_accessor :html_entity, String
|
54
|
+
safe_attr_accessor :latex_string, String
|
55
|
+
safe_attr_accessor :latex_packages, Array
|
56
|
+
end
|
43
57
|
|
44
58
|
# create hash @@entity_to_latex
|
45
|
-
def
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
+
def Latex.init_entity_table
|
60
|
+
doc = Document.new XML_TABLE
|
61
|
+
doc.elements.each("//char") do |c|
|
62
|
+
num = c.attributes['num'].to_i
|
63
|
+
name = c.attributes['name']
|
64
|
+
package = c.attributes['package']
|
65
|
+
|
66
|
+
convert = c.attributes['convertTo']
|
67
|
+
convert.gsub!(/@DOUBLEQUOT/,'"')
|
68
|
+
convert.gsub!(/@QUOT/,"'")
|
69
|
+
convert.gsub!(/@GT/,">")
|
70
|
+
convert.gsub!(/@LT/,"<")
|
71
|
+
convert.gsub!(/@AMP/,"&")
|
72
|
+
convert.freeze
|
73
|
+
|
74
|
+
e = LatexEntity.new
|
75
|
+
e.html_num = num
|
76
|
+
e.html_entity = name
|
77
|
+
e.latex_string = convert
|
78
|
+
e.latex_packages = package ? package.split : []
|
79
|
+
|
80
|
+
ENTITY_TABLE[num] = e
|
81
|
+
ENTITY_TABLE[name] = e
|
59
82
|
end
|
60
83
|
end
|
84
|
+
|
85
|
+
ENTITY_TABLE = {}
|
61
86
|
|
62
87
|
# The following is a conversion chart for html elements, courtesy of
|
63
88
|
# text2html
|
@@ -164,7 +189,7 @@ module MaRuKu; module Out; module Latex
|
|
164
189
|
<char num='8745' name='cup' convertTo='$\\cup$' />
|
165
190
|
<char num='8746' name='cap' convertTo='$\\cap$' />
|
166
191
|
<char num='8747' name='int' convertTo='$\\int$' />
|
167
|
-
<char num='8756' name='there4' convertTo='$\\therefore$' /> <!-- only AMS -->
|
192
|
+
<char num='8756' name='there4' convertTo='$\\therefore$' package='amssymb' /> <!-- only AMS -->
|
168
193
|
<char num='8764' name='sim' convertTo='$\\sim$' />
|
169
194
|
<char num='8776' name='asymp' convertTo='$\\approx$' />
|
170
195
|
<char num='8773' name='cong' convertTo='$\\cong$' />
|
@@ -175,9 +200,9 @@ module MaRuKu; module Out; module Latex
|
|
175
200
|
<char num='8805' name='ge' convertTo='$\\geq$' />
|
176
201
|
<char num='8834' name='sub' convertTo='$\\subset$' />
|
177
202
|
<char num='8835' name='sup' convertTo='$\\supset$' />
|
178
|
-
<char num='8838' name='sube' convertTo='$\\subseteq$'
|
203
|
+
<!-- <char num='8838' name='sube' convertTo='$\\subseteq$' />-->
|
179
204
|
<char num='8839' name='supe' convertTo='$\\supseteq$' />
|
180
|
-
<char num='8836' name='nsub' convertTo='$\\nsubset$'
|
205
|
+
<!-- <char num='8836' name='nsub' convertTo='$\\nsubset$' /> <!-- only AMS -->
|
181
206
|
|
182
207
|
<char num='8853' name='oplus' convertTo='$\\oplus$' />
|
183
208
|
<char num='8855' name='otimes' convertTo='$\\otimes$' />
|
@@ -190,13 +215,15 @@ module MaRuKu; module Out; module Latex
|
|
190
215
|
<char num='9001' name='rang' convertTo='$\\rangle$' />
|
191
216
|
|
192
217
|
<char num='9002' name='lang' convertTo='$\\langle$' />
|
193
|
-
<char num='9674' name='loz' convertTo='$\\lozenge$' /> <!-- only AMS -->
|
218
|
+
<char num='9674' name='loz' convertTo='$\\lozenge$' package='amssymb' /> <!-- only AMS -->
|
194
219
|
<char num='9824' name='spades' convertTo='$\\spadesuit$' />
|
195
220
|
<char num='9827' name='clubs' convertTo='$\\clubsuit$' />
|
196
221
|
<char num='9829' name='hearts' convertTo='$\\heartsuit$' />
|
197
222
|
<char num='9830' name='diams' convertTo='$\\diamondsuit$' />
|
198
223
|
<char num='38' name='amp' convertTo='\\@AMP' />
|
199
|
-
<char num='34' name='quot' convertTo='
|
224
|
+
<!-- <char num='34' name='quot' convertTo='\\@DOUBLEQUOT' /> XXX -->
|
225
|
+
<char num='34' name='quot' convertTo='\"' />
|
226
|
+
<char num='39' name='apos' convertTo=\"'\" />
|
200
227
|
<char num='169' name='copy' convertTo='\\copyright' />
|
201
228
|
|
202
229
|
<char num='60' name='lt' convertTo='$@LT$' />
|
@@ -212,31 +239,32 @@ module MaRuKu; module Out; module Latex
|
|
212
239
|
<char num='8211' name='ndash' convertTo='--' />
|
213
240
|
<char num='8212' name='mdash' convertTo='---' />
|
214
241
|
<char num='8216' name='lsquo' convertTo='`' />
|
215
|
-
<char num='8217' name='rsquo' convertTo
|
242
|
+
<char num='8217' name='rsquo' convertTo=\"'\" /> <!-- XXXX -->
|
216
243
|
<char num='8220' name='ldquo' convertTo='``' />
|
217
|
-
<char num='8221' name='rdquo' convertTo
|
244
|
+
<char num='8221' name='rdquo' convertTo=\"''\" /> <!-- XXXX -->
|
218
245
|
<char num='8224' name='dagger' convertTo='\\dag' />
|
219
246
|
<char num='8225' name='Dagger' convertTo='\\ddag' />
|
220
|
-
<char num='8240' name='permil' convertTo='\\permil' /> <!-- wasysym package -->
|
247
|
+
<char num='8240' name='permil' convertTo='\\permil' package='wasysym' /> <!-- wasysym package -->
|
221
248
|
|
222
|
-
<char num='8364' name='euro' convertTo='\\euro' /> <!-- eurosym package -->
|
223
|
-
<char num='8249' name='lsaquo' convertTo='\\guilsinglleft' />
|
224
|
-
<char num='8250' name='rsaquo' convertTo='\\guilsinglright' />
|
249
|
+
<char num='8364' name='euro' convertTo='\\euro' package='eurosym' /> <!-- eurosym package -->
|
250
|
+
<char num='8249' name='lsaquo' convertTo='\\guilsinglleft' package='aeguill'/>
|
251
|
+
<char num='8250' name='rsaquo' convertTo='\\guilsinglright' package='aeguill' />
|
225
252
|
<!-- <char num='160' name='nbsp' convertTo='\\nolinebreak' />-->
|
226
253
|
<char num='160' name='nbsp' convertTo='~' />
|
227
254
|
<char num='161' name='iexcl' convertTo='\\textexclamdown' />
|
228
255
|
<char num='163' name='pound' convertTo='\\pounds' />
|
229
|
-
<char num='164' name='curren' convertTo='\\currency' /> <!-- wasysym package -->
|
230
|
-
<char num='165' name='yen' convertTo='\\textyen' /> <!-- textcomp -->
|
256
|
+
<char num='164' name='curren' convertTo='\\currency' package='wasysym' /> <!-- wasysym package -->
|
257
|
+
<char num='165' name='yen' convertTo='\\textyen' package='textcomp'/> <!-- textcomp -->
|
231
258
|
|
232
259
|
<char num='166' name='brvbar' convertTo='\\brokenvert' /> <!-- wasysym -->
|
233
260
|
<char num='167' name='sect' convertTo='\\S' />
|
234
|
-
<char num='171' name='laquo' convertTo='\\guillemotleft' />
|
235
|
-
<char num='187' name='raquo' convertTo='\\guillemotright' />
|
261
|
+
<char num='171' name='laquo' convertTo='\\guillemotleft' package='aeguill'/>
|
262
|
+
<char num='187' name='raquo' convertTo='\\guillemotright' package='aeguill'/>
|
236
263
|
<char num='174' name='reg' convertTo='\\textregistered' />
|
237
264
|
<char num='170' name='ordf' convertTo='\\textordfeminine' />
|
238
265
|
<char num='172' name='not' convertTo='$\\neg$' />
|
239
|
-
|
266
|
+
<!-- <char num='176' name='deg' convertTo='$\\degree$' /> <!-- mathabx -->
|
267
|
+
<char num='176' name='deg' convertTo='\\textdegree' package='textcomp'/>
|
240
268
|
|
241
269
|
<char num='177' name='plusmn' convertTo='$\\pm$' />
|
242
270
|
<char num='180' name='acute' convertTo='@QUOT' />
|
@@ -244,14 +272,14 @@ module MaRuKu; module Out; module Latex
|
|
244
272
|
<char num='182' name='para' convertTo='\\P' />
|
245
273
|
<char num='183' name='middot' convertTo='$\\cdot$' />
|
246
274
|
<char num='186' name='ordm' convertTo='\\textordmasculine' />
|
247
|
-
<char num='162' name='cent' convertTo='\\cent' />
|
275
|
+
<char num='162' name='cent' convertTo='\\cent' package='wasysym' />
|
248
276
|
<char num='185' name='sup1' convertTo='$^1$' />
|
249
277
|
|
250
278
|
<char num='178' name='sup2' convertTo='$^2$' />
|
251
279
|
<char num='179' name='sup3' convertTo='$^3$' />
|
252
280
|
<char num='189' name='frac12' convertTo='$\\frac{1}{2}$' />
|
253
281
|
<char num='188' name='frac14' convertTo='$\\frac{1}{4}$' />
|
254
|
-
<char num='190' name='frac34' convertTo='$\\frac{3}{4}' />
|
282
|
+
<char num='190' name='frac34' convertTo='$\\frac{3}{4}$' />
|
255
283
|
<char num='192' name='Agrave' convertTo='\\`A' />
|
256
284
|
<char num='193' name='Aacute' convertTo='\\@QUOTA' />
|
257
285
|
<char num='194' name='Acirc' convertTo='\\^A' />
|
@@ -260,7 +288,7 @@ module MaRuKu; module Out; module Latex
|
|
260
288
|
<char num='196' name='Auml' convertTo='\\@DOUBLEQUOTA' />
|
261
289
|
<char num='197' name='Aring' convertTo='\\AA' />
|
262
290
|
<char num='198' name='AElig' convertTo='\\AE' />
|
263
|
-
<char num='199' name='Ccedil' convertTo='\\
|
291
|
+
<char num='199' name='Ccedil' convertTo='\\c{C}' />
|
264
292
|
<char num='200' name='Egrave' convertTo='\\`E' />
|
265
293
|
<char num='201' name='Eacute' convertTo='\\@QUOTE' />
|
266
294
|
<char num='202' name='Ecirc' convertTo='\\^E' />
|
@@ -272,7 +300,7 @@ module MaRuKu; module Out; module Latex
|
|
272
300
|
<char num='208' name='ETH' convertTo='$\\eth$' /> <!-- AMS -->
|
273
301
|
<char num='209' name='Ntilde' convertTo='\\~N' />
|
274
302
|
<char num='210' name='Ograve' convertTo='\\`O' />
|
275
|
-
<char num='211' name='Oacute' convertTo='\\@
|
303
|
+
<char num='211' name='Oacute' convertTo='\\@QUOT O' />
|
276
304
|
<char num='212' name='Ocirc' convertTo='\\^O' />
|
277
305
|
<char num='213' name='Otilde' convertTo='\\~O' />
|
278
306
|
<char num='214' name='Ouml' convertTo='\\@DOUBLEQUOTO' />
|
@@ -283,7 +311,6 @@ module MaRuKu; module Out; module Latex
|
|
283
311
|
<char num='219' name='Ucirc' convertTo='\\^U' />
|
284
312
|
<char num='220' name='Uuml' convertTo='\\@DOUBLEQUOTU' />
|
285
313
|
<char num='221' name='Yacute' convertTo='\\@QUOTY' />
|
286
|
-
<char num='222' name='THORN' convertTo='\\Thorn' /> <!-- wasysym -->
|
287
314
|
<char num='223' name='szlig' convertTo='\\ss' />
|
288
315
|
<char num='224' name='agrave' convertTo='\\`a' />
|
289
316
|
<char num='225' name='aacute' convertTo='\\@QUOTa' />
|
@@ -292,7 +319,7 @@ module MaRuKu; module Out; module Latex
|
|
292
319
|
<char num='228' name='auml' convertTo='\\@DOUBLEQUOTa' />
|
293
320
|
<char num='229' name='aring' convertTo='\\aa' />
|
294
321
|
<char num='230' name='aelig' convertTo='\\ae' />
|
295
|
-
<char num='231' name='ccedil' convertTo='\\
|
322
|
+
<char num='231' name='ccedil' convertTo='\\c{c}' />
|
296
323
|
<char num='232' name='egrave' convertTo='\\`e' />
|
297
324
|
<char num='233' name='eacute' convertTo='\\@QUOTe' />
|
298
325
|
<char num='234' name='ecirc' convertTo='\\^e' />
|
@@ -301,23 +328,28 @@ module MaRuKu; module Out; module Latex
|
|
301
328
|
<char num='237' name='iacute' convertTo='\\@QUOTi' />
|
302
329
|
<char num='238' name='icirc' convertTo='\\^i' />
|
303
330
|
<char num='239' name='iuml' convertTo='\\@DOUBLEQUOTi' />
|
304
|
-
<char num='240' name='eth' convertTo='$\\eth$' /> <!-- -->
|
331
|
+
<char num='240' name='eth' convertTo='$\\eth$' package='amssymb'/> <!-- -->
|
305
332
|
<char num='241' name='ntilde' convertTo='\\~n' />
|
306
333
|
<char num='242' name='ograve' convertTo='\\`o' />
|
307
334
|
<char num='243' name='oacute' convertTo='\\@QUOTo' />
|
308
335
|
<char num='244' name='ocirc' convertTo='\\^o' />
|
309
336
|
<char num='245' name='otilde' convertTo='\\~o' />
|
310
337
|
<char num='246' name='ouml' convertTo='\\@DOUBLEQUOTo' />
|
311
|
-
|
338
|
+
<!-- <char num='247' name='divide' convertTo='$\\divide$' /> -->
|
312
339
|
<char num='248' name='oslash' convertTo='\\o' />
|
313
340
|
<char num='249' name='ugrave' convertTo='\\`u' />
|
314
341
|
<char num='250' name='uacute' convertTo='\\@QUOTu' />
|
315
342
|
<char num='251' name='ucirc' convertTo='\\^u' />
|
316
343
|
<char num='252' name='uuml' convertTo='\\@DOUBLEQUOTu' />
|
317
344
|
<char num='253' name='yacute' convertTo='\\@QUOTy' />
|
318
|
-
|
345
|
+
|
319
346
|
<char num='255' name='yuml' convertTo='\\@DOUBLEQUOTy' />
|
347
|
+
|
348
|
+
<char num='222' name='THORN' convertTo='\\Thorn' package='wasysym' />
|
349
|
+
<char num='254' name='thorn' convertTo='\\thorn' package='wasysym' />
|
320
350
|
</chars>"
|
351
|
+
|
352
|
+
init_entity_table
|
321
353
|
|
322
354
|
end end end
|
323
355
|
|