kramdown 0.12.0 → 0.13.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of kramdown might be problematic. Click here for more details.

Files changed (41) hide show
  1. data/CONTRIBUTERS +2 -1
  2. data/ChangeLog +278 -0
  3. data/README +3 -0
  4. data/Rakefile +24 -0
  5. data/VERSION +1 -1
  6. data/benchmark/benchmark.sh +11 -2
  7. data/doc/documentation.page +2 -3
  8. data/doc/index.page +4 -4
  9. data/doc/installation.page +10 -11
  10. data/doc/syntax.page +17 -7
  11. data/doc/tests.page +1 -1
  12. data/lib/kramdown/converter/base.rb +9 -6
  13. data/lib/kramdown/converter/html.rb +2 -2
  14. data/lib/kramdown/converter/latex.rb +46 -26
  15. data/lib/kramdown/options.rb +42 -20
  16. data/lib/kramdown/parser/html.rb +50 -11
  17. data/lib/kramdown/parser/kramdown.rb +4 -4
  18. data/lib/kramdown/parser/kramdown/html_entity.rb +7 -2
  19. data/lib/kramdown/parser/kramdown/link.rb +9 -7
  20. data/lib/kramdown/parser/kramdown/list.rb +5 -4
  21. data/lib/kramdown/parser/kramdown/table.rb +24 -19
  22. data/lib/kramdown/utils/entities.rb +4 -0
  23. data/lib/kramdown/version.rb +1 -1
  24. data/man/man1/kramdown.1 +15 -14
  25. data/test/testcases/block/08_list/item_ial.html +3 -0
  26. data/test/testcases/block/08_list/item_ial.text +3 -0
  27. data/test/testcases/block/09_html/html_to_native/emphasis.html +2 -0
  28. data/test/testcases/block/09_html/html_to_native/emphasis.text +3 -0
  29. data/test/testcases/block/09_html/parse_as_raw.html +2 -0
  30. data/test/testcases/block/09_html/parse_as_raw.text +2 -0
  31. data/test/testcases/block/14_table/simple.html +19 -0
  32. data/test/testcases/block/14_table/simple.html.19 +19 -0
  33. data/test/testcases/block/14_table/simple.text +5 -0
  34. data/test/testcases/span/01_link/reference.html +3 -2
  35. data/test/testcases/span/01_link/reference.html.19 +3 -2
  36. data/test/testcases/span/01_link/reference.text +4 -1
  37. data/test/testcases/span/05_html/normal.html +2 -0
  38. data/test/testcases/span/05_html/normal.text +2 -0
  39. data/test/testcases/span/text_substitutions/entities.html +2 -0
  40. data/test/testcases/span/text_substitutions/entities.text +2 -0
  41. metadata +4 -4
data/CONTRIBUTERS CHANGED
@@ -1,5 +1,6 @@
1
1
  Count Name
2
2
  ======= ====
3
- 427 Thomas Leitner <t_leitner@gmx.at>
3
+ 451 Thomas Leitner <t_leitner@gmx.at>
4
4
  3 Ben Armston <ben.armston@googlemail.com>
5
5
  3 Alex Marandon <contact@alexmarandon.com>
6
+ 1 Damien Pollet <damien.pollet@gmail.com>
data/ChangeLog CHANGED
@@ -1,3 +1,281 @@
1
+ commit 8d2618b7ca8871043dfc2d99a3a34a82cad53ab4
2
+ Author: Thomas Leitner <t_leitner@gmx.at>
3
+ Date: Sat Jan 22 08:44:45 2011 +0100
4
+
5
+ Updated version to 0.13.1 after bad push to Rubygems
6
+
7
+ doc/index.page
8
+ doc/news/release_0_13_0.page
9
+ doc/news/release_0_13_1.page
10
+ lib/kramdown/version.rb
11
+
12
+ commit 0d077806da1ff2bc7de767392c5df48610a744c9
13
+ Author: Thomas Leitner <t_leitner@gmx.at>
14
+ Date: Sat Jan 22 08:36:35 2011 +0100
15
+
16
+ Updated test graphs
17
+
18
+ doc/img/graph-jruby-1.5.3-249.png
19
+ doc/img/graph-ruby-1.8.5-231.png
20
+ doc/img/graph-ruby-1.8.6-399.png
21
+ doc/img/graph-ruby-1.8.7-249.png
22
+ doc/img/graph-ruby-1.8.7-302.png
23
+ doc/img/graph-ruby-1.9.2p0-0.png
24
+ doc/img/graph-ruby-1.9.2p136-136.png
25
+ doc/tests.page
26
+
27
+ commit 301446b945eab51498271da03b3b4b135bca514d
28
+ Author: Thomas Leitner <t_leitner@gmx.at>
29
+ Date: Sat Jan 22 08:35:36 2011 +0100
30
+
31
+ Minor benchmark script enhancement
32
+
33
+ One can now provide a nicer name for the master version
34
+
35
+ benchmark/benchmark.sh
36
+
37
+ commit 24946119e95ce14654ee9de62e44217e251c2e40
38
+ Author: Thomas Leitner <t_leitner@gmx.at>
39
+ Date: Sat Jan 22 08:06:56 2011 +0100
40
+
41
+ Fixed problem when running on Ruby 1.8.6
42
+
43
+ lib/kramdown/parser/html.rb
44
+
45
+ commit a8f4051f20cfdf6f7ebc0cc6b71abb93d30ed2d1
46
+ Author: Thomas Leitner <t_leitner@gmx.at>
47
+ Date: Sat Jan 22 07:54:02 2011 +0100
48
+
49
+ Updated homepage for release
50
+
51
+ doc/index.page
52
+ doc/news/release_0_13_0.page
53
+
54
+ commit c86b42ca9f43796c75d7ef9654e21456e56dbb74
55
+ Author: Thomas Leitner <t_leitner@gmx.at>
56
+ Date: Sat Jan 22 07:53:25 2011 +0100
57
+
58
+ Updated documentation
59
+
60
+ doc/documentation.page
61
+ doc/index.page
62
+ doc/installation.page
63
+
64
+ commit e9dcf1d940cc4e717a314e5b265da87df8ac8c02
65
+ Author: Thomas Leitner <t_leitner@gmx.at>
66
+ Date: Wed Jan 19 09:20:36 2011 +0100
67
+
68
+ Any character except a closing bracket is now valid inside a link identifier
69
+
70
+ doc/news/release_0_13_0.page
71
+ doc/syntax.page
72
+ lib/kramdown/parser/kramdown.rb
73
+ lib/kramdown/parser/kramdown/link.rb
74
+ test/testcases/span/01_link/reference.html
75
+ test/testcases/span/01_link/reference.html.19
76
+ test/testcases/span/01_link/reference.text
77
+
78
+ commit b62c176252d13eacb3d1eafa02449aa125c30782
79
+ Author: Thomas Leitner <t_leitner@gmx.at>
80
+ Date: Wed Jan 19 08:25:42 2011 +0100
81
+
82
+ New option smart_quotes for customizing smart quotes output
83
+
84
+ This is needed because quotation marks are not the same in every
85
+ language.
86
+
87
+ doc/converter/html.page
88
+ doc/converter/latex.page
89
+ doc/news/release_0_13_0.page
90
+ lib/kramdown/converter/base.rb
91
+ lib/kramdown/converter/html.rb
92
+ lib/kramdown/converter/latex.rb
93
+ lib/kramdown/options.rb
94
+
95
+ commit edbd1fdfec7a6bb7fdcaddac52b4db09aa3b081f
96
+ Author: Thomas Leitner <t_leitner@gmx.at>
97
+ Date: Tue Jan 18 17:24:27 2011 +0100
98
+
99
+ Three fixes regarding entities in LaTeX converter
100
+
101
+ - Fixed unnecessary string creation while constructing converstion table
102
+ - Added helper method for converting an entity to LaTeX
103
+ - Removed unnecessary braces from two entity definitions
104
+
105
+ lib/kramdown/converter/latex.rb
106
+
107
+ commit fdc8360159f671502298af27c70f8bb3213e0f30
108
+ Author: Thomas Leitner <t_leitner@gmx.at>
109
+ Date: Tue Jan 18 16:37:35 2011 +0100
110
+
111
+ HTML tables are now only converted to natives ones if all rows have the same number of columns
112
+
113
+ doc/news/release_0_13_0.page
114
+ lib/kramdown/parser/html.rb
115
+
116
+ commit 1d9ae8ae4beaa9300d16879e7d328debdbc4922f
117
+ Author: Thomas Leitner <t_leitner@gmx.at>
118
+ Date: Tue Jan 18 16:30:13 2011 +0100
119
+
120
+ Now also using <col/> tags when converting HTML tables to native ones
121
+
122
+ doc/news/release_0_13_0.page
123
+ lib/kramdown/parser/html.rb
124
+
125
+ commit f9f7716bec6c938e058212dc9ee2edd478cf860a
126
+ Author: Thomas Leitner <t_leitner@gmx.at>
127
+ Date: Mon Jan 17 18:39:53 2011 +0100
128
+
129
+ Updated Rakefile so that the rdoc task documents the available options
130
+
131
+ The RDoc::RDoc#parse_files method is overridden so that the available
132
+ options are automatically added to the description of the
133
+ Kramdown::Options module.
134
+
135
+ README
136
+ Rakefile
137
+
138
+ commit 8a8b71f39bd8d966db94ee73f8e9743c8b510c64
139
+ Author: Thomas Leitner <t_leitner@gmx.at>
140
+ Date: Mon Jan 17 17:48:26 2011 +0100
141
+
142
+ LaTeX converter now outputs \hypertarget for all elements with an ID
143
+
144
+ doc/converter/latex.page
145
+ doc/news/release_0_13_0.page
146
+ lib/kramdown/converter/latex.rb
147
+
148
+ commit 0a8171eefe35a195fbce8f06a6a1dbfad2dda459
149
+ Author: Thomas Leitner <t_leitner@gmx.at>
150
+ Date: Mon Jan 17 09:47:01 2011 +0100
151
+
152
+ Fixed bug in converting <em>/<strong> tags to native elements
153
+
154
+ The tags may not be converted to native tags if the inner text begins
155
+ or ends with whitespace because that would result in invalid output
156
+ using the kramdown converter.
157
+
158
+ doc/news/release_0_13_0.page
159
+ lib/kramdown/parser/html.rb
160
+ test/testcases/block/09_html/html_to_native/emphasis.html
161
+ test/testcases/block/09_html/html_to_native/emphasis.text
162
+
163
+ commit 927c39d0d486a9017a501eadbbcd8c7f6ee4f95b
164
+ Author: Thomas Leitner <t_leitner@gmx.at>
165
+ Date: Mon Jan 17 09:25:04 2011 +0100
166
+
167
+ Fixed parsing of table rows with <code> elements
168
+
169
+ As it is done with the native code span syntax, pipes inside HTML code
170
+ tags are not used as cell separators anymore.
171
+
172
+ doc/news/release_0_13_0.page
173
+ doc/syntax.page
174
+ lib/kramdown/parser/kramdown/table.rb
175
+ test/testcases/block/14_table/simple.html
176
+ test/testcases/block/14_table/simple.html.19
177
+ test/testcases/block/14_table/simple.text
178
+
179
+ commit 161c7fb8c6738f2887190f873db704f95ffe25b1
180
+ Author: Thomas Leitner <t_leitner@gmx.at>
181
+ Date: Sun Jan 16 18:43:06 2011 +0100
182
+
183
+ Fixed bug RF#28769: span extension in list item wrongly triggered list item IAL parser
184
+
185
+ doc/news/release_0_13_0.page
186
+ lib/kramdown/parser/kramdown/list.rb
187
+ test/testcases/block/08_list/item_ial.html
188
+ test/testcases/block/08_list/item_ial.text
189
+
190
+ commit eaabeb86c29145c9984cf725743ce3e0c9862dc4
191
+ Author: Thomas Leitner <t_leitner@gmx.at>
192
+ Date: Sun Jan 16 16:42:04 2011 +0100
193
+
194
+ Documented how one can use a reference style link and text that together look like a link definition line
195
+
196
+ doc/syntax.page
197
+
198
+ commit fb55e6af273f9c10412511e8a10e96d7b44cd7b5
199
+ Author: Thomas Leitner <t_leitner@gmx.at>
200
+ Date: Sun Jan 16 16:25:07 2011 +0100
201
+
202
+ Removed deprecated option toc_depth
203
+
204
+ doc/news/release_0_13_0.page
205
+ lib/kramdown/converter/base.rb
206
+ lib/kramdown/options.rb
207
+
208
+ commit bfbae6cd6b9d7572ae52bce29150d0e304c8c5d3
209
+ Author: Thomas Leitner <t_leitner@gmx.at>
210
+ Date: Sun Jan 16 16:19:41 2011 +0100
211
+
212
+ Fixed bug RF#28785: Used false name for default template in doc for template option
213
+
214
+ doc/news/release_0_13_0.page
215
+ lib/kramdown/options.rb
216
+
217
+ commit bf4bc2dd36a83d03ab2e409b81343b4e280ffcfe
218
+ Author: Thomas Leitner <t_leitner@gmx.at>
219
+ Date: Sun Jan 16 16:11:19 2011 +0100
220
+
221
+ Fixed bug RF#28809: empty <a> tags were output as self-closed tags
222
+
223
+ doc/news/release_0_13_0.page
224
+ lib/kramdown/converter/html.rb
225
+ test/testcases/span/05_html/normal.html
226
+ test/testcases/span/05_html/normal.text
227
+
228
+ commit 0a3fcd72aaffc2b352268b387192c74329614253
229
+ Author: Thomas Leitner <t_leitner@gmx.at>
230
+ Date: Sun Jan 16 15:58:04 2011 +0100
231
+
232
+ Fixed bug where block HTML line was recognized as table line
233
+
234
+ Block HTML blocks have a higher priority now than tables.
235
+
236
+ doc/news/release_0_13_0.page
237
+ lib/kramdown/parser/kramdown.rb
238
+ test/testcases/block/09_html/parse_as_raw.html
239
+ test/testcases/block/09_html/parse_as_raw.text
240
+
241
+ commit 95d45c10cdd4b7044469cf85efd8c5d54bbba4fe
242
+ Author: Thomas Leitner <t_leitner@gmx.at>
243
+ Date: Sun Jan 16 15:40:55 2011 +0100
244
+
245
+ Updated release notes
246
+
247
+ doc/news/release_0_13_0.page
248
+
249
+ commit 3a2504b2225edfdb519e66adf0ce15eb11239ce8
250
+ Author: Thomas Leitner <t_leitner@gmx.at>
251
+ Date: Wed Nov 24 07:30:54 2010 +0100
252
+
253
+ Fixed raised error when parsing unknown named entities
254
+
255
+ doc/news/release_0_13_0.page
256
+ lib/kramdown/parser/html.rb
257
+ lib/kramdown/parser/kramdown/html_entity.rb
258
+ test/testcases/span/text_substitutions/entities.html
259
+ test/testcases/span/text_substitutions/entities.text
260
+
261
+ commit 9df6c7a9ffbeba67b72d7b39e3c31c588750f553
262
+ Author: Thomas Leitner <t_leitner@gmx.at>
263
+ Date: Wed Nov 24 07:28:55 2010 +0100
264
+
265
+ Added release notes file and bumped version number
266
+
267
+ doc/news/release_0_13_0.page
268
+ lib/kramdown/version.rb
269
+
270
+ commit 0bf12222397a8b1042f6659d032a0da686f1fc9f
271
+ Author: Damien Pollet <damien.pollet@gmail.com>
272
+ Date: Fri Nov 5 00:15:07 2010 +0100
273
+
274
+ Entity definitions for thin, half-em, and em-spaces
275
+
276
+ lib/kramdown/converter/latex.rb
277
+ lib/kramdown/utils/entities.rb
278
+
1
279
  commit 7ac86c467418389f63844c16783157268351f192
2
280
  Author: Thomas Leitner <t_leitner@gmx.at>
3
281
  Date: Mon Nov 1 09:55:09 2010 +0100
data/README CHANGED
@@ -25,6 +25,9 @@ kramdown has a basic *Cloth API, so using kramdown is as easy as
25
25
 
26
26
  For detailed information have a look at the API documentation of the Kramdown::Document class.
27
27
 
28
+ The full API documentation is available at http://kramdown.rubyforge.org/rdoc/, other sites with an
29
+ API documentation for kramdown probably don't provide the complete documentation!
30
+
28
31
 
29
32
  == Development
30
33
 
data/Rakefile CHANGED
@@ -18,6 +18,30 @@ begin
18
18
  gem 'rdoc' if RUBY_VERSION >= '1.9'
19
19
  require 'rdoc/task'
20
20
  require 'rdoc/rdoc'
21
+
22
+ class RDoc::RDoc
23
+
24
+ alias :old_parse_files :parse_files
25
+
26
+ def parse_files(options)
27
+ file_info = old_parse_files(options)
28
+ require 'kramdown/options'
29
+
30
+ # Add options documentation to Kramdown::Options module
31
+ opt_module = RDoc::TopLevel.all_classes_and_modules.find {|m| m.full_name == 'Kramdown::Options'}
32
+ opt_defs = Kramdown::Options.definitions.sort.collect do |n, definition|
33
+ desc = definition.desc.split(/\n/).map {|l| " #{l}"}
34
+ desc[-2] = []
35
+ desc = desc.join("\n")
36
+ "[<tt>#{n}</tt> (type: #{definition.type}, default: #{definition.default.inspect})]\n#{desc}\n\n"
37
+ end
38
+ opt_module.comment << "\n== Available Options\n\n" << opt_defs.join("\n\n")
39
+
40
+ file_info
41
+ end
42
+
43
+ end
44
+
21
45
  rescue LoadError
22
46
  end
23
47
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.12.0
1
+ 0.13.1
@@ -5,8 +5,9 @@ source ~/.bashrc
5
5
  RUBY_VERSIONS=`rvm list strings | sort`
6
6
  KD_VERSIONS="`git tag | sort -V` master"
7
7
  OTHERS=false
8
+ MASTER_AS=
8
9
 
9
- while getopts "r:k:o" optname; do
10
+ while getopts "r:k:o:m:" optname; do
10
11
  case "$optname" in
11
12
  "r")
12
13
  RUBY_VERSIONS="$OPTARG"
@@ -16,6 +17,9 @@ while getopts "r:k:o" optname; do
16
17
  ;;
17
18
  "o")
18
19
  OTHERS=true
20
+ ;;
21
+ "m")
22
+ MASTER_AS="$OPTARG"
19
23
  ;;
20
24
  "?")
21
25
  echo "Unknown option $OPTARG"
@@ -48,7 +52,12 @@ for RUBY_VERSION in $RUBY_VERSIONS; do
48
52
  for KD_VERSION in $KD_VERSIONS; do
49
53
  echo "Using kramdown version $KD_VERSION"
50
54
  git co $KD_VERSION 2>/dev/null
51
- ruby -I${TMPDIR}/kramdown/lib ../generate_data.rb -k ${KD_VERSION} >/dev/null
55
+ if [ -z $MASTER_AS -o $KD_VERSION != master ]; then
56
+ VNUM=${KD_VERSION}
57
+ else
58
+ VNUM=$MASTER_AS
59
+ fi
60
+ ruby -I${TMPDIR}/kramdown/lib ../generate_data.rb -k ${VNUM} >/dev/null
52
61
  done
53
62
 
54
63
  if [ $OTHERS = "true" ]; then
@@ -53,9 +53,8 @@ The kramdown package provides two ways for using it:
53
53
  * **As an application**
54
54
 
55
55
  Together with the library files a binary called `kramdown` is shipped which can be used to convert
56
- text in any supported format (currently only kramdown syntax) to any supported output format (e.g.
57
- HTML or LaTeX). It either reads from the files specified as the command line arguments or from the
58
- standard input. For example:
56
+ text in any supported input format to any supported output format. It either reads from the files
57
+ specified as the command line arguments or from the standard input. For example:
59
58
 
60
59
  kramdown path/to/kramdown/doc/syntax.page
61
60
 
data/doc/index.page CHANGED
@@ -8,8 +8,8 @@ sort_info: 1
8
8
  If you want to get started with kramdown, have a look at the [installation page](installation.html)
9
9
  to see how you can install it on your system. Then look through the
10
10
  [documentation](documentation.html) for finding information about how to actually use kramdown and
11
- its parsers/converters. The [syntax](syntax.html) provides a detailed description of the superset of
12
- Markdown which kramdown supports.
11
+ its parsers/converters. The [syntax page](syntax.html) provides a detailed description of the
12
+ superset of Markdown which kramdown supports.
13
13
 
14
14
  {tikz:: path: overview.png
15
15
  img_attr: {style: 'background:transparent'}
@@ -86,11 +86,11 @@ Markdown implementations because kramdown borrowed many ideas from existing pack
86
86
  completely written in Ruby, supports standard Markdown (with some minor modifications) and various
87
87
  extensions that have been made popular by the [PHP Markdown Extra] package and [Maruku].
88
88
 
89
- It is probably the fastest pure-Ruby Markdown converter available (November 2010), being about 4x
89
+ It is probably the fastest pure-Ruby Markdown converter available (January 2011), being about 4x
90
90
  faster than [Maruku] and about 5x faster than [BlueFeather].
91
91
 
92
92
  <p class="a-center">
93
- The latest version of kramdown is <b>0.12.0</b> and it was released on <b>2010-11-01</b>.
93
+ The latest version of kramdown is <b>0.13.1</b> and it was released on <b>2011-01-22</b>.
94
94
  </p>
95
95
 
96
96
  [PHP Markdown Extra]: http://michelf.com/projects/php-markdown/extra/
@@ -5,6 +5,12 @@ sort_info: 5
5
5
  ---
6
6
  # Download & Installation
7
7
 
8
+ ## Dependencies
9
+
10
+ Since kramdown is written in Ruby, you just need the [Ruby interpreter](http://www.ruby-lang.org),
11
+ version 1.8.5, 1.8.6, 1.8.7 or 1.9.2. There are no other dependencies.
12
+
13
+
8
14
  ## Compatibility Notes
9
15
 
10
16
  kramdown should work on any platform which supports Ruby. It has been successfully tested on the
@@ -42,14 +48,13 @@ as running:
42
48
 
43
49
  ### Windows
44
50
 
45
- You need to install Ruby first. This can easily be done by using the One-Click-Installer - just
46
- download the *latest* installation binary from the [files section][1] of the One-Click-Installer
47
- homepage and run it. After that open a command shell (select `Start -> Run...`, then enter `cmd` and
48
- click on `Ok`) and type in the following:
51
+ You need to install Ruby first. This can easily be done by using the [RubyInstaller] - just download
52
+ the installation binary and run it. After that open a command shell (select `Start -> Run...`, then
53
+ enter `cmd` and click on `Ok`) and type in the following:
49
54
 
50
55
  gem install kramdown
51
56
 
52
- [1]: http://rubyforge.org/frs/?group_id=167
57
+ [RubyInstaller]: http://rubyinstaller.org
53
58
 
54
59
 
55
60
  ## Generic Installation Instructions
@@ -81,9 +86,3 @@ repository always contains a clean state of the current development version of k
81
86
  out kramdown use the following command:
82
87
 
83
88
  git clone git://github.com/gettalong/kramdown.git
84
-
85
-
86
- ## Dependencies
87
-
88
- Since kramdown is written in Ruby, you just need the [Ruby interpreter](http://www.ruby-lang.org)
89
- versions 1.8.5, 1.8.6, 1.8.7 or 1.9.2. There are no other dependencies.