maruku 0.7.2 → 0.7.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 708a01507319b4ce86bcd733bb4767009aea05c5
4
- data.tar.gz: 34c0dd886c8f800e2746dec49d9e2b2d71823270
3
+ metadata.gz: 7a75ae1343380e4831c80d3d67bd72c9a009749b
4
+ data.tar.gz: 70cc7f567ca5b8be7ac7249a2f33c216f37ce5e1
5
5
  SHA512:
6
- metadata.gz: faafb8314908e9c5edecc191e06ece6ad7fac71f6f840091c27d20bbbee0f1017f8f3dbeaa21e385561b60e049fb6d50c75c52e886b26695e896da76bb9ac523
7
- data.tar.gz: dfde96cf9d35055eb1dbece3753ddc57d6b12db104b00fed643b57994a59ee6744524232fc0cf13d3db9976821566ba02ab2ede77a9f04cd4e459a3de308c86b
6
+ metadata.gz: e749a43b465942abb54c6d311c41587c607031be1ef78d89b76b2313d3fffe0b7eb99cdc9bb8558d45c50533ebf2184d09559430448c5302a2ff6114339c7de3
7
+ data.tar.gz: 5735df664f40583a5f0161c0c86ac16f3542646085a1cd0679126e75e303eb795fa6aae88a8736a77337075eb994b524ee915f527a462bea7594607ddc692521
@@ -35,6 +35,7 @@ module MaRuKu
35
35
  self.footnotes_order = []
36
36
  self.abbreviations = {}
37
37
  self.ald = {}
38
+ self.refid2ref = {}
38
39
  self.id_counter = 0
39
40
 
40
41
  parse_doc(s) if s
@@ -86,8 +86,8 @@ module MaRuKu
86
86
  yield c if e_node_type.nil? || c.node_type == e_node_type
87
87
  c.each_element(e_node_type, &block)
88
88
  #
89
- # This handles the case where the children of an
90
- # element are arranged in a multi-dimensional array
89
+ # This handles the case where the children of an
90
+ # element are arranged in a multi-dimensional array
91
91
  # (as in the case of a table)
92
92
  elsif c.is_a? Array then
93
93
  c.each do |cc|
@@ -112,10 +112,11 @@ module MaRuKu
112
112
  # @todo Make this non-destructive
113
113
  def replace_each_string(&block)
114
114
  @children.map! do |c|
115
- next yield c unless c.is_a?(MDElement)
115
+ next yield c if c.is_a?(String)
116
116
  c.replace_each_string(&block)
117
117
  c
118
- end.flatten!
118
+ end
119
+ @children.flatten! unless self.node_type == :table
119
120
  end
120
121
  end
121
122
 
@@ -125,3 +126,13 @@ module MaRuKu
125
126
  attr_accessor :parsed_html # HTMLFragment
126
127
  end
127
128
  end
129
+
130
+ class Array
131
+ def replace_each_string(&block)
132
+ self.map! do |c|
133
+ next yield c if c.is_a?(String)
134
+ c.replace_each_string(&block)
135
+ c
136
+ end
137
+ end
138
+ end
@@ -103,7 +103,7 @@ MaRuKu::In::Markdown.register_span_extension(
103
103
  # This adds support for \ref
104
104
  RegRef = /\\ref\{(\w*?)\}/
105
105
  MaRuKu::In::Markdown.register_span_extension(
106
- :chars => ["\\", '('],
106
+ :chars => ["\\"],
107
107
  :regexp => RegRef,
108
108
  :handler => lambda do |doc, src, con|
109
109
  return false unless doc.is_math_enabled?
@@ -111,3 +111,15 @@ MaRuKu::In::Markdown.register_span_extension(
111
111
  con.push doc.md_el(:divref, [], :refid => refid)
112
112
  true
113
113
  end)
114
+
115
+ # This adds support for \cite
116
+ RegCite = /\\cite\{([^}]*?)\}/
117
+ MaRuKu::In::Markdown.register_span_extension(
118
+ :chars => ["\\"],
119
+ :regexp => RegCite,
120
+ :handler => lambda do |doc, src, con|
121
+ return false unless doc.is_math_enabled?
122
+ cites = src.read_regexp(RegCite).captures.compact.first.split(/\s*,\s*/)
123
+ con.push doc.md_el(:citation, [], :cites => cites)
124
+ true
125
+ end)
@@ -172,6 +172,31 @@ module MaRuKu
172
172
  a << xtext(ref.num.to_s)
173
173
  a
174
174
  end
175
+
176
+ def to_html_citation
177
+ span = xelem('span')
178
+ span['class'] = 'maruku-citation'
179
+ span << xtext('[')
180
+ self.cites.each do |c|
181
+ if c =~ /(\w+):(\d\d\d\d\w{2,3})/ # INSPIRE
182
+ a = xelem('a')
183
+ a << xtext(c)
184
+ a['href'] = "http://inspirehep.net/search?p=#{$1}%3A#{$2}"
185
+ span << a << xtext(',')
186
+ elsif c =~ /MR(\d+)/ # MathReviews
187
+ a = xelem('a')
188
+ a << xtext(c)
189
+ a['href'] = "http://www.ams.org/mathscinet-getitem?mr=#{$1}"
190
+ span << a << xtext(',')
191
+ else
192
+ span << xtext(c + ',')
193
+ end
194
+ end
195
+ span.children.last.chop! unless span.children.last == '['
196
+ span << xtext(']')
197
+ span
198
+ end
199
+
175
200
  end
176
201
  end
177
202
  end
@@ -21,6 +21,10 @@ module MaRuKu
21
21
  "\\ref{#{self.refid}}"
22
22
  end
23
23
 
24
+ def to_latex_citation
25
+ "\\cite{#{self.cites.join(',')}}"
26
+ end
27
+
24
28
  private
25
29
 
26
30
  def fix_latex(str)
@@ -198,6 +198,10 @@ module MaRuKu; module In; module Markdown; module BlockLevelParser
198
198
  al = read_attribute_list(CharSource.new(ial, src))
199
199
  end
200
200
  level = line[/^#+/].size
201
+ if level > 6
202
+ text = parse_span line
203
+ return md_par(text, al)
204
+ end
201
205
  text = parse_span line.gsub(/\A#+|#+\z/, '')
202
206
  if text.empty?
203
207
  text = "{#{ial}}"
@@ -275,8 +279,6 @@ module MaRuKu; module In; module Markdown; module BlockLevelParser
275
279
  case t = src.cur_line.md_type
276
280
  when :quote, :header3, :empty, :ref_definition, :ial, :xml_instr
277
281
  break
278
- when :olist, :ulist
279
- break if !src.next_line || src.next_line.md_type == t
280
282
  end
281
283
  break if src.cur_line.strip.empty?
282
284
  break if src.next_line && [:header1, :header2].include?(src.next_line.md_type)
@@ -419,7 +421,7 @@ module MaRuKu; module In; module Markdown; module BlockLevelParser
419
421
 
420
422
  while src.cur_line
421
423
  num_leading_spaces = src.cur_line.number_of_leading_spaces
422
- break if num_leading_spaces < len && ![:text, :empty].include?(src.cur_line.md_type)
424
+ break if num_leading_spaces < len && ![:text, :empty, :code].include?(src.cur_line.md_type)
423
425
 
424
426
  line = strip_indent(src.cur_line, indentation)
425
427
  md_type = line.md_type
@@ -447,6 +449,12 @@ module MaRuKu; module In; module Markdown; module BlockLevelParser
447
449
  break if break_list.include?(md_type)
448
450
  end
449
451
 
452
+ if md_type == :code && num_leading_spaces > len+6
453
+ lines << strip_indent(src.cur_line, num_leading_spaces-4)
454
+ src.shift_line
455
+ next
456
+ end
457
+
450
458
  lines << line
451
459
  src.shift_line
452
460
 
@@ -478,7 +486,8 @@ module MaRuKu; module In; module Markdown; module BlockLevelParser
478
486
 
479
487
  lines = []
480
488
  # collect all indented lines
481
- while src.cur_line && src.cur_line.md_type == :quote
489
+ while src.cur_line && ( [:text, :quote].include?(src.cur_line.md_type) or
490
+ src.cur_line.md_type == :empty && ( src.next_line && src.next_line.md_type == :quote ) )
482
491
  lines << unquote(src.shift_line)
483
492
  end
484
493
 
@@ -115,7 +115,7 @@ Disabled by default because of security concerns.
115
115
  maruku_error "Exception while executing this:\n" +
116
116
  code.gsub(/^/, ">") +
117
117
  "\nThe error was:\n" +
118
- (e.inspect + "\n" + e.caller.join("\n")).gsub(/^/, "|")
118
+ (e.inspect + "\n" + e.send(:caller).join("\n")).gsub(/^/, "|")
119
119
  nil
120
120
  end
121
121
  end
@@ -28,6 +28,10 @@ module MaRuKu::Out
28
28
  def entity(name)
29
29
  @entity_table[name]
30
30
  end
31
+
32
+ def each
33
+ @entity_table.each
34
+ end
31
35
  end
32
36
  end
33
37
 
@@ -849,7 +849,7 @@ module MaRuKu::Out::HTML
849
849
  entity_name = entity.html_num
850
850
  end
851
851
 
852
- if entity_name.kind_of? Fixnum
852
+ if entity_name.kind_of? Integer
853
853
  # Convert numeric entities to unicode characters
854
854
  xtext([entity_name].pack('U*'))
855
855
  else
@@ -1,4 +1,5 @@
1
1
  require 'set'
2
+ require 'maruku/output/entity_table'
2
3
 
3
4
  module MaRuKu::Out::Latex
4
5
  module MDDocumentExtensions
@@ -1,6 +1,6 @@
1
1
  module MaRuKu
2
2
  # The Maruku version.
3
- VERSION = '0.7.2'
3
+ VERSION = '0.7.3'
4
4
 
5
5
  # @deprecated Exists for backwards compatibility. Use {VERSION}
6
6
  # @private
@@ -0,0 +1,27 @@
1
+ Write a comment abouth the test here.
2
+ *** Parameters: ***
3
+ {}
4
+ *** Markdown input: ***
5
+
6
+ Col1 | Very very long head | Very very long head|
7
+ -----|:-------------------:|-------------------:|
8
+ cell | center-align ABB | right-align |
9
+
10
+ *[ABB]: An Abbreviation
11
+ *** Output of inspect ***
12
+ md_el(:document, [
13
+ md_el(:table, [
14
+ [md_el(:head_cell, "Col1"), md_el(:head_cell, "Very very long head"), md_el(:head_cell, "Very very long head")],
15
+ [md_el(:cell, "cell"), md_el(:cell, ["center-align ", md_el(:abbr, "ABB", {:title=>"An Abbreviation"})]), md_el(:cell, "right-align")]
16
+ ], {:align=>[:left, :center, :right]}),
17
+ md_el(:abbr_def, [], {:abbr=>"ABB", :text=>"An Abbreviation"})
18
+ ])
19
+ *** Output of to_html ***
20
+ <table><thead><tr><th>Col1</th><th>Very very long head</th><th>Very very long head</th></tr></thead><tbody><tr><td style="text-align: left;">cell</td><td style="text-align: center;">center-align <abbr title="An Abbreviation">ABB</abbr></td><td style="text-align: right;">right-align</td></tr>
21
+ </tbody></table>
22
+ *** Output of to_latex ***
23
+ \begin{tabular}{l|c|r}
24
+ Col1&Very very long head&Very very long head\\
25
+ \hline
26
+ cell&center-align ABB&right-align\\
27
+ \end{tabular}
@@ -0,0 +1,22 @@
1
+ Header levels go up to 6. More #'s is not a header (see Commonmark Spec).
2
+ *** Parameters: ***
3
+ {}
4
+ *** Markdown input: ***
5
+ #### A header ####
6
+
7
+ ######## Not a header ########
8
+
9
+
10
+ *** Output of inspect ***
11
+ md_el(:document,[
12
+ md_el(:header, "A header", {:level=>4}, []),
13
+ md_par("######## Not a header ########", [])
14
+ ],{},[])
15
+ *** Output of to_html ***
16
+ <h4 id="a_header">A header</h4>
17
+
18
+ <p>######## Not a header ########</p>
19
+ *** Output of to_latex ***
20
+ \hypertarget{a_header}{}\paragraph*{{A header}}\label{a_header}
21
+
22
+ \#\#\#\#\#\#\#\# Not a header \#\#\#\#\#\#\#\#
@@ -0,0 +1,30 @@
1
+ Comment
2
+ *** Parameters: ***
3
+ require 'maruku/ext/math'; {:math_enabled => true}
4
+ *** Markdown input: ***
5
+ 1111111111111111111111111111111111111111111111111111111111111111111111111111
6
+ 111111111111111111111111111111111111111111111111111111111111111111111111
7
+ 111111111111111111111111111111111111111111111111111111111111111111111111
8
+ 1111111111111111111111111111111111111111111111111111111111111111111111111111
9
+ 11111111111111111 (111
10
+ 111111111111111111111111111111
11
+ 1
12
+ 111111111111111111111111111111111111111111111111111111111111111111111111111
13
+ 1111111111111111111111111111111111111111111111
14
+ 11111111111111111111111111
15
+ 11111111111111111111111111111111111111111111111111111111111
16
+ 11111111111111111111111111111111111111111111111111111111111111111111111111111
17
+ 1111111111 111111 11 1111111111111111111111111111111111111111111111111111111
18
+ 111111111111
19
+ 111111111111111111111111111111111111111111111111111111
20
+ 111111111111111111111111111111111 \cite{11111}
21
+ *** Output of inspect ***
22
+ md_el(:document,[
23
+ md_par(["1111111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111111111111111111111111111111111 11111111111111111 (111 111111111111111111111111111111 1 111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111 11111111111111111111111111 11111111111111111111111111111111111111111111111111111111111 11111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111 111111 11 1111111111111111111111111111111111111111111111111111111 111111111111 111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111 ",
24
+ md_el(:citation, [], {:cites=>["11111"]})
25
+ ])
26
+ ],{},[])
27
+ *** Output of to_html ***
28
+ <p>1111111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111111111111111111111111111111111 11111111111111111 (111 111111111111111111111111111111 1 111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111 11111111111111111111111111 11111111111111111111111111111111111111111111111111111111111 11111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111 111111 11 1111111111111111111111111111111111111111111111111111111 111111111111 111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111 <span class="maruku-citation">[11111]</span></p>
29
+ *** Output of to_latex ***
30
+ 1111111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111111111111111111111111111111111 11111111111111111 (111 111111111111111111111111111111 1 111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111 11111111111111111111111111 11111111111111111111111111111111111111111111111111111111111 11111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111 111111 11 1111111111111111111111111111111111111111111111111111111 111111111111 111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111 \cite{11111}
@@ -0,0 +1,30 @@
1
+ Comment
2
+ *** Parameters: ***
3
+ require 'maruku/ext/math'; {:math_enabled => true}
4
+ *** Markdown input: ***
5
+ 1111111111111111111111111111111111111111111111111111111111111111111111111111
6
+ 111111111111111111111111111111111111111111111111111111111111111111111111
7
+ 111111111111111111111111111111111111111111111111111111111111111111111111
8
+ 1111111111111111111111111111111111111111111111111111111111111111111111111111
9
+ 11111111111111111 (111
10
+ 111111111111111111111111111111
11
+ 1
12
+ 111111111111111111111111111111111111111111111111111111111111111111111111111
13
+ 1111111111111111111111111111111111111111111111
14
+ 11111111111111111111111111
15
+ 11111111111111111111111111111111111111111111111111111111111
16
+ 11111111111111111111111111111111111111111111111111111111111111111111111111111
17
+ 1111111111 111111 11 1111111111111111111111111111111111111111111111111111111
18
+ 111111111111
19
+ 111111111111111111111111111111111111111111111111111111
20
+ 111111111111111111111111111111111 \ref{11111}
21
+ *** Output of inspect ***
22
+ md_el(:document,[
23
+ md_par(["1111111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111111111111111111111111111111111 11111111111111111 (111 111111111111111111111111111111 1 111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111 11111111111111111111111111 11111111111111111111111111111111111111111111111111111111111 11111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111 111111 11 1111111111111111111111111111111111111111111111111111111 111111111111 111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111 ",
24
+ md_el(:divref, [], {:refid=>"11111"})
25
+ ])
26
+ ],{},[])
27
+ *** Output of to_html ***
28
+ <p>1111111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111111111111111111111111111111111 11111111111111111 (111 111111111111111111111111111111 1 111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111 11111111111111111111111111 11111111111111111111111111111111111111111111111111111111111 11111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111 111111 11 1111111111111111111111111111111111111111111111111111111 111111111111 111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111 \ref{11111}</p>
29
+ *** Output of to_latex ***
30
+ 1111111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111111111111111111111111111111111 11111111111111111 (111 111111111111111111111111111111 1 111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111111111111111111111111111111111111111 11111111111111111111111111 11111111111111111111111111111111111111111111111111111111111 11111111111111111111111111111111111111111111111111111111111111111111111111111 1111111111 111111 11 1111111111111111111111111111111111111111111111111111111 111111111111 111111111111111111111111111111111111111111111111111111 111111111111111111111111111111111 \ref{11111}
@@ -0,0 +1,66 @@
1
+ Block quotes can continue over multiple lines
2
+ *** Parameters: ***
3
+ {}
4
+ *** Markdown input: ***
5
+
6
+ > Here's a quote.
7
+ Which goes over two lines.
8
+
9
+ > It continues here.
10
+ > > And has a subquote.
11
+ {: style='color:red'}
12
+
13
+ > Here's a quote.
14
+ > Which goes over two lines.
15
+ {#foo}
16
+
17
+ > Here's a quote.
18
+ Which goes over two lines.
19
+
20
+ *** Output of inspect ***
21
+ md_el(:document,[
22
+ md_el(:quote,
23
+ [md_par(["Here", md_entity("rsquo"), "s a quote. Which goes over two lines."]),
24
+ md_par(["It continues here."]),
25
+ md_el(:quote, md_par("And has a subquote."))
26
+ ],{},[[:style, "color:red"]]),
27
+ md_el(:quote, md_par(["Here", md_entity("rsquo"), "s a quote. Which goes over two lines."]),{},[[:id, "foo"]]),
28
+ md_el(:quote, md_par(["Here", md_entity("rsquo"), "s a quote. Which goes over two lines."]))
29
+ ],{},[])
30
+ *** Output of to_html ***
31
+ <blockquote style="color:red">
32
+ <p>Here’s a quote. Which goes over two lines.</p>
33
+ <p>It continues here.</p>
34
+ <blockquote>
35
+ <p>And has a subquote.</p>
36
+ </blockquote>
37
+ </blockquote>
38
+ <blockquote id="foo">
39
+ <p>Here’s a quote. Which goes over two lines.</p>
40
+ </blockquote>
41
+ <blockquote>
42
+ <p>Here’s a quote. Which goes over two lines.</p>
43
+ </blockquote>
44
+ *** Output of to_latex ***
45
+ \begin{quote}%
46
+ Here's a quote. Which goes over two lines.
47
+
48
+ It continues here.
49
+
50
+ \begin{quote}%
51
+ And has a subquote.
52
+
53
+
54
+ \end{quote}
55
+
56
+ \end{quote}
57
+ \begin{quote}%
58
+ Here's a quote. Which goes over two lines.
59
+
60
+
61
+ \end{quote}
62
+ \begin{quote}%
63
+ Here's a quote. Which goes over two lines.
64
+
65
+
66
+ \end{quote}
@@ -0,0 +1,37 @@
1
+ Comment
2
+ *** Parameters: ***
3
+ require 'maruku/ext/math'; {:math_enabled => true}
4
+ *** Markdown input: ***
5
+
6
+ This is a single citation: \cite{Foo1993}. This contains multiple citations: \cite{Foo1993,Bar, Baz22}.
7
+
8
+ Here are some cites that match INSPIRE and MathSciNet: \cite{chacaltana:2010ks, MR3046557, fubar,Chacaltana:2014ica}.
9
+
10
+ How about a blank \cite{}? Or \cite{,}?
11
+
12
+ *** Output of inspect ***
13
+ md_el(:document,[
14
+ md_par(["This is a single citation: ",
15
+ md_el(:citation, [], {:cites=>["Foo1993"]}), ". This contains multiple citations: ",
16
+ md_el(:citation, [], {:cites=>["Foo1993", "Bar", "Baz22"]}), "."
17
+ ]),
18
+ md_par(["Here are some cites that match INSPIRE and MathSciNet: ",
19
+ md_el(:citation, [], {:cites=>["chacaltana:2010ks", "MR3046557", "fubar", "Chacaltana:2014ica"]}),
20
+ "."
21
+ ]),
22
+ md_par(["How about a blank ", md_el(:citation, [], {:cites=>[]}),
23
+ "? Or ", md_el(:citation, [], {:cites=>[]}), "?"
24
+ ])
25
+ ],{},[])
26
+ *** Output of to_html ***
27
+ <p>This is a single citation: <span class="maruku-citation">[Foo1993]</span>. This contains multiple citations: <span class="maruku-citation">[Foo1993,Bar,Baz22]</span>.</p>
28
+
29
+ <p>Here are some cites that match INSPIRE and MathSciNet: <span class="maruku-citation">[<a href="http://inspirehep.net/search?p=chacaltana%3A2010ks">chacaltana:2010ks</a>,<a href="http://www.ams.org/mathscinet-getitem?mr=3046557">MR3046557</a>,fubar,<a href="http://inspirehep.net/search?p=Chacaltana%3A2014ica">Chacaltana:2014ica</a>]</span>.</p>
30
+
31
+ <p>How about a blank <span class="maruku-citation">[]</span>? Or <span class="maruku-citation">[]</span>?</p>
32
+ *** Output of to_latex ***
33
+ This is a single citation: \cite{Foo1993}. This contains multiple citations: \cite{Foo1993,Bar,Baz22}.
34
+
35
+ Here are some cites that match INSPIRE and MathSciNet: \cite{chacaltana:2010ks,MR3046557,fubar,Chacaltana:2014ica}.
36
+
37
+ How about a blank \cite{}? Or \cite{}?
@@ -7,6 +7,7 @@ Ruby on Rails is a web-framework[^framework]. It uses the MVC[^MVC] architecture
7
7
  [^framework]: a reusable set of libraries
8
8
  [^MVC]: Model View Controller
9
9
  [^points]: Here are its good points
10
+
10
11
  1. Ease of use
11
12
  2. Rapid development
12
13
 
@@ -1,4 +1,4 @@
1
- PENDING - list syntax needs a newline before it to be a valid list!
1
+ list syntax needs a newline before it to be a valid list!
2
2
  *** Parameters: ***
3
3
  {}
4
4
  *** Markdown input: ***
@@ -29,30 +29,18 @@ ciao
29
29
 
30
30
  *** Output of inspect ***
31
31
  md_el(:document,[
32
- md_par(["This is not a list:\n* one\n* two"]),
32
+ md_par(["This is not a list: * one * two"]),
33
33
  md_par(["This is a list:"]),
34
- md_el(:ul,[
35
- md_el(:li_span,["one"],{:want_my_paragraph=>false},[]),
36
- md_el(:li_span,["two"],{:want_my_paragraph=>false},[])
37
- ],{},[]),
34
+ md_el(:ul,[md_li("one", false), md_li("two", false)],{},[]),
38
35
  md_par(["This is a list:"]),
39
- md_el(:ul,[
40
- md_el(:li_span,["one ciao"],{:want_my_paragraph=>false},[])
41
- ],{},[]),
36
+ md_el(:ul,md_li("one ciao", false),{},[]),
42
37
  md_par(["This is a list:"]),
43
- md_el(:ol,[
44
- md_el(:li_span,["one"],{:want_my_paragraph=>false},[]),
45
- md_el(:li_span,["two"],{:want_my_paragraph=>false},[])
46
- ],{},[]),
38
+ md_el(:ol,[md_li("one", false), md_li("two", false)],{},[]),
47
39
  md_par(["This is a list:"]),
48
- md_el(:ol,[
49
- md_el(:li_span,["one ciao"],{:want_my_paragraph=>false},[])
50
- ],{},[])
40
+ md_el(:ol,md_li("one ciao", false),{},[])
51
41
  ],{},[])
52
42
  *** Output of to_html ***
53
- <p>This is not a list:
54
- * one
55
- * two</p>
43
+ <p>This is not a list: * one * two</p>
56
44
 
57
45
  <p>This is a list:</p>
58
46
 
@@ -82,9 +70,7 @@ md_el(:document,[
82
70
  <li>one ciao</li>
83
71
  </ol>
84
72
  *** Output of to_latex ***
85
- This is not a list:
86
- * one
87
- * two
73
+ This is not a list: * one * two
88
74
 
89
75
  This is a list:
90
76
 
@@ -1,4 +1,4 @@
1
- PENDING - Maruku should handle weirdly indented lists and paragraphs within lists.
1
+ Maruku should handle weirdly indented lists.
2
2
  *** Parameters: ***
3
3
  {}
4
4
  *** Markdown input: ***
@@ -16,85 +16,54 @@ Suspendisse id sem consectetuer libero luctus adipiscing.
16
16
 
17
17
  Ancora
18
18
 
19
- 1. This is a list item with two paragraphs. Lorem ipsum dolor
20
- sit amet, consectetuer adipiscing elit. Aliquam hendrerit
21
- mi posuere lectus.
22
-
23
- ATTENZIONE!
24
-
25
- - Uno
26
- - Due
27
- 1. tre
28
- 1. tre
29
- 1. tre
30
- - Due
31
-
32
- 2. Suspendisse id sem consectetuer libero luctus adipiscing.
19
+ 1. Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
20
+ Suspendisse id sem consectetuer libero luctus adipiscing.
33
21
 
22
+ This is code
34
23
 
35
- Ancora
24
+ 2. Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
25
+ Suspendisse id sem consectetuer libero luctus adipiscing.
36
26
 
37
- * This is a list item with two paragraphs.
27
+ This is code
28
+ 3. Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
29
+ Suspendisse id sem consectetuer libero luctus adipiscing.
38
30
 
39
- This is the second paragraph in the list item. You're
40
- only required to indent the first line. Lorem ipsum dolor
41
- sit amet, consectetuer adipiscing elit.
31
+ This is not code
42
32
 
43
- * Another item in the same list.
44
33
  *** Output of inspect ***
45
34
  md_el(:document,[
46
35
  md_el(:ol,[
47
- md_el(:li,[
36
+ md_li([
48
37
  "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus."
49
- ],{:want_my_paragraph=>false},[]),
50
- md_el(:li,[
51
- "Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing."
52
- ],{:want_my_paragraph=>false},[]),
53
- md_el(:li,[
38
+ ],false),
39
+ md_li([
54
40
  "Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing."
55
- ],{:want_my_paragraph=>false},[]),
56
- md_el(:li,[
41
+ ],false),
42
+ md_li([
57
43
  "Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing."
58
- ],{:want_my_paragraph=>false},[]),
59
- md_el(:li,[
44
+ ],false),
45
+ md_li([
60
46
  "Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing."
61
- ],{:want_my_paragraph=>false},[])
47
+ ],false),
48
+ md_li([
49
+ "Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing."
50
+ ],false)
62
51
  ],{},[]),
63
52
  md_par(["Ancora"]),
64
53
  md_el(:ol,[
65
- md_el(:li,[
66
- md_par([
67
- "This is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus."
68
- ]),
69
- md_par(["ATTENZIONE!"]),
70
- md_el(:ul,[
71
- md_el(:li,["Uno"],{:want_my_paragraph=>false},[]),
72
- md_el(:li,["Due",
73
- md_el(:ol,[
74
- md_el(:li,["tre"],{:want_my_paragraph=>false},[]),
75
- md_el(:li,["tre"],{:want_my_paragraph=>false},[]),
76
- md_el(:li,["tre"],{:want_my_paragraph=>false},[])
77
- ],{:want_my_paragraph=>false},[])
78
- ],{},[]),
79
- md_el(:li,["Due"],{:want_my_paragraph=>false},[])
80
- ],{},[])
81
- ],{:want_my_paragraph=>true},[]),
82
- md_el(:li,[
83
- md_par(["Suspendisse id sem consectetuer libero luctus adipiscing."])
84
- ],{:want_my_paragraph=>false},[])
54
+ md_li([
55
+ md_par("Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing."),
56
+ md_el(:code, [], {:raw_code=>"This is code", :lang=>nil})
57
+ ],true),
58
+ md_li([
59
+ md_par("Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing."),
60
+ md_el(:code, [], {:raw_code=>"This is code", :lang=>nil})
61
+ ],true),
62
+ md_li([
63
+ md_par("Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing."),
64
+ md_par("This is not code")
65
+ ],nil),
85
66
  ],{},[]),
86
- md_par(["Ancora"]),
87
- md_el(:ul,[
88
- md_el(:li,[
89
- md_par(["This is a list item with two paragraphs."]),
90
- md_par([
91
- "This is the second paragraph in the list item. You",
92
- md_entity("rsquo"),
93
- "re only required to indent the first line. Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
94
- ])
95
- ],{:want_my_paragraph=>true},[]),
96
- md_el(:li,[md_par(["Another item in the same list."])],{:want_my_paragraph=>false},[])
97
- ],{},[])
98
67
  ],{},[])
99
68
  *** Output of to_html ***
100
69
  <ol>
@@ -113,45 +82,24 @@ md_el(:document,[
113
82
 
114
83
  <ol>
115
84
  <li>
116
- <p>This is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.</p>
117
85
 
118
- <p>ATTENZIONE!</p>
119
-
120
- <ul>
121
- <li>Uno</li>
122
-
123
- <li>Due
124
- <ol>
125
- <li>tre</li>
86
+ <p>Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.</p>
126
87
 
127
- <li>tre</li>
128
-
129
- <li>tre</li>
130
- </ol>
131
- </li>
132
-
133
- <li>Due</li>
134
- </ul>
88
+ <pre><code>This is code</code></pre>
135
89
  </li>
136
-
137
90
  <li>
138
- <p>Suspendisse id sem consectetuer libero luctus adipiscing.</p>
139
- </li>
140
- </ol>
141
91
 
142
- <p>Ancora</p>
92
+ <p>Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.</p>
143
93
 
144
- <ul>
94
+ <pre><code>This is code</code></pre>
95
+ </li>
145
96
  <li>
146
- <p>This is a list item with two paragraphs.</p>
147
97
 
148
- <p>This is the second paragraph in the list item. You’re only required to indent the first line. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</p>
149
- </li>
98
+ <p>Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.</p>
150
99
 
151
- <li>
152
- <p>Another item in the same list.</p>
100
+ <p>This is not code</p>
153
101
  </li>
154
- </ul>
102
+ </ol>
155
103
  *** Output of to_latex ***
156
104
  \begin{enumerate}%
157
105
  \item Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
@@ -164,94 +112,18 @@ md_el(:document,[
164
112
  Ancora
165
113
 
166
114
  \begin{enumerate}%
167
- \item This is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
168
-
169
- ATTENZIONE!
170
-
171
- \begin{itemize}%
172
- \item Uno
173
- \item Due\begin{enumerate}%
174
- \item tre
175
- \item tre
176
- \item tre
177
-
178
- \end{enumerate}
179
-
180
- \item Due
181
-
182
- \end{itemize}
183
-
184
- \item Suspendisse id sem consectetuer libero luctus adipiscing.
185
-
186
-
187
-
188
- \end{enumerate}
189
- Ancora
190
-
191
- \begin{itemize}%
192
- \item This is a list item with two paragraphs.
193
-
194
- This is the second paragraph in the list item. You're only required to indent the first line. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
195
-
196
-
197
- \item Another item in the same list.
115
+ \item Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.
198
116
 
117
+ \begin{verbatim}This is code\end{verbatim}
199
118
 
119
+ \item Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.
200
120
 
201
- \end{itemize}
202
- *** Output of to_md ***
203
- 1. Lorem ipsum dolor sit amet,
204
- consectetuer adipiscing elit.
205
- Aliquam hendrerit mi posuere
206
- lectus. Vestibulum enim wisi,
207
- viverra nec, fringilla in, laoreet
208
- vitae, risus.
209
- 2. Donec sit amet nisl. Aliquam semper
210
- ipsum sit amet velit. Suspendisse
211
- id sem consectetuer libero luctus
212
- adipiscing.
213
- 3. Donec sit amet nisl. Aliquam semper
214
- ipsum sit amet velit. Suspendisse
215
- id sem consectetuer libero luctus
216
- adipiscing.
217
- 4. Donec sit amet nisl. Aliquam semper
218
- ipsum sit amet velit. Suspendisse
219
- id sem consectetuer libero luctus
220
- adipiscing.
221
- 5. Donec sit amet nisl. Aliquam semper
222
- ipsum sit amet velit. Suspendisse
223
- id sem consectetuer libero luctus
224
- adipiscing.
121
+ \begin{verbatim}This is code\end{verbatim}
225
122
 
226
- Ancora
123
+ \item Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.
227
124
 
228
- 1.
229
- This is a list item with two
230
- paragraphs. Lorem ipsum dolor sit amet,
231
- consectetuer adipiscing elit. Aliquam
232
- hendrerit mi posuere lectus.
233
- ATTENZIONE!
234
- - Uno
235
- - Due
125
+ This is not code
236
126
 
237
- 1. tre
238
- 2. tre
239
- 3. tre
240
- - Due
241
- 2.
242
- Suspendisse id sem consectetuer libero
243
- luctus adipiscing.
244
127
 
245
- Ancora
246
128
 
247
- -
248
- This is a list item with two
249
- paragraphs.
250
- This is the second paragraph in the
251
- list item. You re only required to
252
- indent the first line. Lorem ipsum
253
- dolor sit amet, consectetuer adipiscing
254
- elit.
255
- - Another item in the same list.
256
- *** Output of to_s ***
257
- Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.AncoraThis is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.ATTENZIONE!UnoDuetretretreDueSuspendisse id sem consectetuer libero luctus adipiscing.AncoraThis is a list item with two paragraphs.This is the second paragraph in the list item. Youre only required to indent the first line. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.Another item in the same list.
129
+ \end{enumerate}
@@ -0,0 +1,147 @@
1
+ Maruku handles some weirdly indented lists and paragraphs within lists.
2
+ *** Parameters: ***
3
+ {}
4
+ *** Markdown input: ***
5
+ 1. This is a list item with two paragraphs. Lorem ipsum dolor
6
+ sit amet, consectetuer adipiscing elit. Aliquam hendrerit
7
+ mi posuere lectus.
8
+
9
+ ATTENZIONE!
10
+
11
+ - Uno
12
+ - Due
13
+ 1. tre
14
+ 1. tre
15
+ 1. tre
16
+ - Due
17
+
18
+ 2. Suspendisse id sem consectetuer libero luctus adipiscing.
19
+
20
+
21
+ Ancora
22
+
23
+ * This is a list item with two paragraphs.
24
+
25
+ This is the second paragraph in the list item. You're
26
+ only required to indent the first line. Lorem ipsum dolor
27
+ sit amet, consectetuer adipiscing elit.
28
+
29
+ * Another item in the same list.
30
+ *** Output of inspect ***
31
+ md_el(:document,[
32
+ md_el(:ol,[
33
+ md_li([
34
+ md_par([
35
+ "This is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus."
36
+ ]),
37
+ md_par(["ATTENZIONE!"]),
38
+ md_el(:ul,[
39
+ md_li(["Uno"],false),
40
+ md_li(["Due",
41
+ md_el(:ol,[
42
+ md_li(["tre"],false),
43
+ md_li(["tre"],false),
44
+ md_li(["tre"],false)
45
+ ],{},[])
46
+ ],false),
47
+ md_li(["Due"],false)
48
+ ],{},[])
49
+ ],true),
50
+ md_li([
51
+ md_par(["Suspendisse id sem consectetuer libero luctus adipiscing."])
52
+ ],false)
53
+ ],{},[]),
54
+ md_par(["Ancora"]),
55
+ md_el(:ul,[
56
+ md_li([
57
+ md_par(["This is a list item with two paragraphs."]),
58
+ md_par([
59
+ "This is the second paragraph in the list item. You",
60
+ md_entity("rsquo"),
61
+ "re only required to indent the first line. Lorem ipsum dolor sit amet, consectetuer adipiscing elit."
62
+ ])
63
+ ],true),
64
+ md_li([md_par(["Another item in the same list."])],false)
65
+ ],{},[])
66
+ ],{},[])
67
+ *** Output of to_html ***
68
+ <ol>
69
+ <li>
70
+ <p>This is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.</p>
71
+
72
+ <p>ATTENZIONE!</p>
73
+
74
+ <ul>
75
+ <li>Uno</li>
76
+
77
+ <li>Due
78
+ <ol>
79
+ <li>tre</li>
80
+
81
+ <li>tre</li>
82
+
83
+ <li>tre</li>
84
+ </ol>
85
+ </li>
86
+
87
+ <li>Due</li>
88
+ </ul>
89
+ </li>
90
+
91
+ <li>
92
+ <p>Suspendisse id sem consectetuer libero luctus adipiscing.</p>
93
+ </li>
94
+ </ol>
95
+
96
+ <p>Ancora</p>
97
+
98
+ <ul>
99
+ <li>
100
+ <p>This is a list item with two paragraphs.</p>
101
+
102
+ <p>This is the second paragraph in the list item. You’re only required to indent the first line. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</p>
103
+ </li>
104
+
105
+ <li>
106
+ <p>Another item in the same list.</p>
107
+ </li>
108
+ </ul>
109
+ *** Output of to_latex ***
110
+ \begin{enumerate}%
111
+ \item This is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
112
+
113
+ ATTENZIONE!
114
+
115
+ \begin{itemize}%
116
+ \item Uno
117
+ \item Due\begin{enumerate}%
118
+ \item tre
119
+ \item tre
120
+ \item tre
121
+
122
+ \end{enumerate}
123
+
124
+ \item Due
125
+
126
+ \end{itemize}
127
+
128
+ \item Suspendisse id sem consectetuer libero luctus adipiscing.
129
+
130
+
131
+
132
+ \end{enumerate}
133
+ Ancora
134
+
135
+ \begin{itemize}%
136
+ \item This is a list item with two paragraphs.
137
+
138
+ This is the second paragraph in the list item. You're only required to indent the first line. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
139
+
140
+
141
+ \item Another item in the same list.
142
+
143
+
144
+
145
+ \end{itemize}
146
+ *** Output of to_s ***
147
+ Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.AncoraThis is a list item with two paragraphs. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.ATTENZIONE!UnoDuetretretreDueSuspendisse id sem consectetuer libero luctus adipiscing.AncoraThis is a list item with two paragraphs.This is the second paragraph in the list item. Youre only required to indent the first line. Lorem ipsum dolor sit amet, consectetuer adipiscing elit.Another item in the same list.
@@ -81,7 +81,7 @@ inMenu: true
81
81
  [impress]: http://www.openoffice.org/product/impress.html
82
82
  [ooolatex]: http://ooolatex.sourceforge.net/
83
83
  [texpoint]: http://texpoint.necula.org/
84
- [jabref]: http://jabref.sourceforge.net/
84
+ [jabref]: https://www.jabref.org/
85
85
  [camino]: http://www.caminobrowser.org/
86
86
  [switch]: http://www.apple.com/getamac/
87
87
  [textmate]: http://www.apple.com/getamac/
@@ -300,7 +300,7 @@ md_el(:document,[
300
300
  md_ref_def("impress", "http://www.openoffice.org/product/impress.html", {:title=>nil}),
301
301
  md_ref_def("ooolatex", "http://ooolatex.sourceforge.net/", {:title=>nil}),
302
302
  md_ref_def("texpoint", "http://texpoint.necula.org/", {:title=>nil}),
303
- md_ref_def("jabref", "http://jabref.sourceforge.net/", {:title=>nil}),
303
+ md_ref_def("jabref", "https://www.jabref.org/", {:title=>nil}),
304
304
  md_ref_def("camino", "http://www.caminobrowser.org/", {:title=>nil}),
305
305
  md_ref_def("switch", "http://www.apple.com/getamac/", {:title=>nil}),
306
306
  md_ref_def("textmate", "http://www.apple.com/getamac/", {:title=>nil}),
@@ -402,7 +402,7 @@ Type "help", "copyright", "credits" or "license" for more information.
402
402
 
403
403
  <li><em>The occasional presentation with many graphical content</em>: <a href="http://www.openoffice.org/product/impress.html">OpenOffice Impress</a> (using the <a href="http://ooolatex.sourceforge.net/">OOOlatex plugin</a>); the alternative is PowerPoint with the <a href="http://texpoint.necula.org/">TexPoint</a> plugin.</li>
404
404
 
405
- <li><em>Managing BibTeX</em>: <a href="http://jabref.sourceforge.net/">jabref</a>: multi-platform, for all your bibtex needs.</li>
405
+ <li><em>Managing BibTeX</em>: <a href="https://www.jabref.org/">jabref</a>: multi-platform, for all your bibtex needs.</li>
406
406
 
407
407
  <li><em>IEEExplore and BibTeX</em>: convert citations using <a href="http://www.bibconverter.net/ieeexplore/">BibConverter</a>.</li>
408
408
  </ul>
@@ -476,7 +476,7 @@ Type "help", "copyright", "credits" or "license" for more information.
476
476
  \item \emph{Writing papers \& enjoying the process}: \href{http://www.lyx.org}{LyX}
477
477
  \item \emph{Handsome figures in your papers}: \href{http://www.xfig.org/}{xfig} or, better, \href{http://tams-www.informatik.uni-hamburg.de/applets/jfig/}{jfig}.
478
478
  \item \emph{The occasional presentation with many graphical content}: \href{http://www.openoffice.org/product/impress.html}{OpenOffice Impress} (using the \href{http://ooolatex.sourceforge.net/}{OOOlatex plugin}); the alternative is PowerPoint with the \href{http://texpoint.necula.org/}{TexPoint} plugin.
479
- \item \emph{Managing BibTeX}: \href{http://jabref.sourceforge.net/}{jabref}: multi-platform, for all your bibtex needs.
479
+ \item \emph{Managing BibTeX}: \href{https://www.jabref.org/}{jabref}: multi-platform, for all your bibtex needs.
480
480
  \item \emph{IEEExplore and BibTeX}: convert citations using \href{http://www.bibconverter.net/ieeexplore/}{BibConverter}.
481
481
 
482
482
  \end{itemize}
@@ -569,7 +569,7 @@ inMenu: true
569
569
  [impress]: http://www.openoffice.org/product/impress.html
570
570
  [ooolatex]: http://ooolatex.sourceforge.net/
571
571
  [texpoint]: http://texpoint.necula.org/
572
- [jabref]: http://jabref.sourceforge.net/
572
+ [jabref]: https://www.jabref.org/
573
573
  [camino]: http://www.caminobrowser.org/
574
574
  [switch]: http://www.apple.com/getamac/
575
575
  [textmate]: http://www.apple.com/getamac/
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maruku
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.2
4
+ version: 0.7.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrea Censi
@@ -9,33 +9,13 @@ authors:
9
9
  - Ben Hollis
10
10
  autorequire:
11
11
  bindir: bin
12
- cert_chain:
13
- - |
14
- -----BEGIN CERTIFICATE-----
15
- MIIDbDCCAlSgAwIBAgIBATANBgkqhkiG9w0BAQUFADA+MQwwCgYDVQQDDANiZW4x
16
- GTAXBgoJkiaJk/IsZAEZFgliZW5ob2xsaXMxEzARBgoJkiaJk/IsZAEZFgNuZXQw
17
- HhcNMTQwNTI2MjExNjI2WhcNMTUwNTI2MjExNjI2WjA+MQwwCgYDVQQDDANiZW4x
18
- GTAXBgoJkiaJk/IsZAEZFgliZW5ob2xsaXMxEzARBgoJkiaJk/IsZAEZFgNuZXQw
19
- ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYZvEbHldtIRP8nQNyM6SQ
20
- oqi6pF1VznSiOzVIZi84MnTwab4jl4pEso/tnjpm+jpHoFc1RhJMwwaO9v0ih5/e
21
- VRZFZQyoKrPaP9Dq3q1iO9SXwoucGfoVCcvtfF2DGnFlkDZlswPWNdL/GTxuiM6X
22
- dzQ36hzSSZrgTms1AdPSuCHt3LTNRDSkpRGqDWdsPbKLi7eLSkGbUO1Ibe8JAtdE
23
- ueSaVAksFJvNgUxZHMSBkSrd33PRpiSi2g6IvogoeWGj+4vxJgGbPGGWHmsfVT28
24
- ggEdA8Ix8y223pCovPUJtCEoEdoNxTq7NUA9lUL2rZ0URc2jCiEKzQmtRAf8ZWSn
25
- AgMBAAGjdTBzMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBSL7ijr
26
- kd/8I5COGX6gWvHNSCPyTDAcBgNVHREEFTATgRFiZW5AYmVuaG9sbGlzLm5ldDAc
27
- BgNVHRIEFTATgRFiZW5AYmVuaG9sbGlzLm5ldDANBgkqhkiG9w0BAQUFAAOCAQEA
28
- PHS/jYQNXccqlZVJUVz5hlkXCslHZs8OqfzOIPRQ4VZZY/USERfDCHou8eQRxeOG
29
- Ux9/jfp35TQRC/1OEx/7mDhixRo3vYCdHHUUUKOdko9VWSyTrTmVLq6V1Iwu7TCe
30
- K+yasGZ4CfUqUaK+MgFLEEI8k0q2TmRd534a3C6nGS69x9HmIqJISlpvwNYr1YCX
31
- mk4SFXYX0a5PWeGRiIKg4vPQy4PG1oFAN7+mAgSGNRtMG3Sx4qkMaYLfW0wd7zZ9
32
- IjHSEqEpekJnAXUJNPdgIBHUVUMNfcnULDPNzaBckgjGm0PqFMlknEOk+NxoXt7m
33
- ouF3Zkp3xx1U+2uMJ1SVRg==
34
- -----END CERTIFICATE-----
35
- date: 2014-05-26 00:00:00.000000000 Z
12
+ cert_chain: []
13
+ date: 2017-01-15 00:00:00.000000000 Z
36
14
  dependencies: []
37
- description: "Maruku is a Markdown interpreter in Ruby.\n\tIt features native export
38
- to HTML and PDF (via Latex). The\n\toutput is really beautiful!"
15
+ description: |-
16
+ Maruku is a Markdown interpreter in Ruby.
17
+ It features native export to HTML and PDF (via Latex). The
18
+ output is really beautiful!
39
19
  email: ben@benhollis.net
40
20
  executables:
41
21
  - maruku
@@ -97,6 +77,7 @@ files:
97
77
  - lib/maruku/version.rb
98
78
  - spec/block_docs/abbrev.md
99
79
  - spec/block_docs/abbreviations.md
80
+ - spec/block_docs/abbreviations2.md
100
81
  - spec/block_docs/alt.md
101
82
  - spec/block_docs/amps.md
102
83
  - spec/block_docs/attribute_sanitize.md
@@ -105,11 +86,16 @@ files:
105
86
  - spec/block_docs/attributes/attributes.md
106
87
  - spec/block_docs/attributes/circular.md
107
88
  - spec/block_docs/attributes/default.md
89
+ - spec/block_docs/atx_headers.md
108
90
  - spec/block_docs/auto_cdata.md
91
+ - spec/block_docs/bad_cites.md
92
+ - spec/block_docs/bad_divrefs.md
109
93
  - spec/block_docs/blank.md
110
94
  - spec/block_docs/blanks_in_code.md
95
+ - spec/block_docs/block_quotes.md
111
96
  - spec/block_docs/bug_def.md
112
97
  - spec/block_docs/bug_table.md
98
+ - spec/block_docs/cites.md
113
99
  - spec/block_docs/code.md
114
100
  - spec/block_docs/code2.md
115
101
  - spec/block_docs/code3.md
@@ -203,6 +189,7 @@ files:
203
189
  - spec/block_docs/lists_nested_blankline.md
204
190
  - spec/block_docs/lists_nested_deep.md
205
191
  - spec/block_docs/lists_ol.md
192
+ - spec/block_docs/lists_ol2.md
206
193
  - spec/block_docs/lists_paraindent.md
207
194
  - spec/block_docs/lists_tab.md
208
195
  - spec/block_docs/loss.md
@@ -273,9 +260,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
273
260
  version: '0'
274
261
  requirements: []
275
262
  rubyforge_project:
276
- rubygems_version: 2.2.2
263
+ rubygems_version: 2.6.8
277
264
  signing_key:
278
265
  specification_version: 4
279
266
  summary: Maruku is a Markdown-superset interpreter written in Ruby.
280
267
  test_files: []
281
- has_rdoc:
@@ -1 +0,0 @@
1
- P�LؚvU�~6hD['��("���d�Ԯ\F�{qWğ<����6�(e��XP��Y�e:�h d����G ���~�I����B�G]9��jD6"U軪P���R�z#�������؊�@ӣu8�miݽ�7�(�����g����ƳLt��I��.vݻ[s���')�>r�+�Z��@�ܶb2��H�֍M0���'M6v��Y�R��,�DA�_k����m�j�g(w�|�_���}OƼ��ȦE�!'�M
data.tar.gz.sig DELETED
@@ -1,2 +0,0 @@
1
- �"�h��[���!��� �s2�%iIt��ͫ����4%�ޫ�i�=4���V=��O�H;(\�c<�/"�� ����ɩ���9�hj��ϸ��B\�U�lfx�+�D�W!�"B0�r?� ^����47 x�rE 7�m��lY����Գ������ٓ��}\�\�y�9Oa�knDhZ\m}V��m��
2
- *��!��e��!}i^\/n�#h�����
metadata.gz.sig DELETED
Binary file