rpeg-markdown 0.2.0 → 1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,41 +1 @@
1
- require 'markdown.so'
2
-
3
- class Markdown
4
-
5
- # Original Markdown formatted text.
6
- attr_reader :text
7
-
8
- # Set true to have smarty-like quote translation performed.
9
- attr_accessor :smart
10
-
11
- # Set true to have footnotes processed.
12
- attr_accessor :notes
13
-
14
- # BlueCloth compatible output filtering.
15
- attr_accessor :filter_styles, :filter_html
16
-
17
- # RedCloth compatible line folding -- not used for Markdown but
18
- # included for compatibility.
19
- attr_accessor :fold_lines
20
-
21
- # Create a new Markdown processor. The +text+ argument
22
- # should be a string containing Markdown text. Additional arguments may be
23
- # supplied to set various processing options:
24
- #
25
- # * <tt>:smart</tt> - Enable SmartyPants processing.
26
- # * <tt>:notes</tt> - Enable footnotes.
27
- # * <tt>:filter_styles</tt> - Do not output <tt><style></tt> tags.
28
- # * <tt>:filter_html</tt> - Do not output any raw HTML tags included in
29
- # the source text.
30
- # * <tt>:fold_lines</tt> - RedCloth compatible line folding (not used).
31
- #
32
- # NOTE: The <tt>:filter_styles</tt> and <tt>:filter_html</tt> extensions
33
- # are not yet implemented.
34
- def initialize(text, *extensions)
35
- @smart = false
36
- @notes = false
37
- @text = text
38
- extensions.each { |e| send("#{e}=", true) }
39
- end
40
-
41
- end
1
+ require 'peg_markdown'
@@ -0,0 +1,59 @@
1
+ require 'peg_markdown.so'
2
+
3
+ # Front-end to jgm's peg-markdown implementation of Markdown, the humane
4
+ # text markup language.
5
+ #
6
+ # A simple processor:
7
+ # >>> puts Markdown.new("Hello, World.").to_html
8
+ # <p>Hello, World.</p>
9
+ #
10
+ # With other stuff:
11
+ # >>> puts Markdown.new("_Hello -- World!_", :smart, :filter_html).to_html
12
+ # <p><em>Hello World!</em></p>
13
+ #
14
+ class PEGMarkdown
15
+
16
+ # Original Markdown formatted text.
17
+ attr_reader :text
18
+
19
+ # Set true to have smarty-like quote translation performed.
20
+ attr_accessor :smart
21
+
22
+ # Set true to have footnotes processed.
23
+ attr_accessor :notes
24
+
25
+ # Do not output <style> tags included in the source text.
26
+ attr_accessor :filter_styles
27
+
28
+ # Do not output any raw HTML included in the source text.
29
+ attr_accessor :filter_html
30
+
31
+ # Included for compatibility with RedCloth's interface.
32
+ attr_accessor :fold_lines
33
+
34
+ # Create a new Markdown processor. The +text+ argument is a string
35
+ # containing Markdown text. Variable other arguments may be supplied to
36
+ # set various processing options:
37
+ #
38
+ # * <tt>:smart</tt> - Enable SmartyPants processing.
39
+ # * <tt>:notes</tt> - Enable footnotes.
40
+ # * <tt>:filter_styles</tt> - Do not output <style> tags included in the
41
+ # source text.
42
+ # * <tt>:filter_html</tt> - Do not output raw HTML included in the
43
+ # source text.
44
+ # * <tt>:fold_lines</tt> - RedCloth compatible line folding (not used).
45
+ #
46
+ def initialize(text, *extensions)
47
+ @text = text
48
+ @smart = false
49
+ @notes = false
50
+ @filter_styles = false
51
+ @filter_html = false
52
+ extensions.each { |e| send("#{e}=", true) }
53
+ end
54
+
55
+ alias to_s text
56
+
57
+ end
58
+
59
+ Markdown = PEGMarkdown unless defined? Markdown
@@ -53,6 +53,8 @@ class MarkdownTest < Test::Unit::TestCase
53
53
  assert_nothing_raised(ArgumentError) { markdown.to_html(true) }
54
54
  end
55
55
 
56
+
57
+
56
58
  # Build tests for each file in the MarkdownTest test suite
57
59
 
58
60
  Dir["#{MARKDOWN_TEST_DIR}/Tests/*.text"].each do |text_file|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rpeg-markdown
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: "1.0"
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Tomayko
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-07-12 00:00:00 -07:00
12
+ date: 2008-08-01 00:00:00 -07:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -20,13 +20,13 @@ executables:
20
20
  extensions:
21
21
  - ext/extconf.rb
22
22
  extra_rdoc_files:
23
- - README
24
23
  - LICENSE
25
24
  files:
26
- - README
25
+ - README.markdown
27
26
  - LICENSE
28
27
  - Rakefile
29
28
  - lib/markdown.rb
29
+ - lib/peg_markdown.rb
30
30
  - ext/extconf.rb
31
31
  - test/benchmark.rb
32
32
  - test/markdown_test.rb
@@ -148,9 +148,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
148
148
  requirements: []
149
149
 
150
150
  rubyforge_project: wink
151
- rubygems_version: 1.1.1
151
+ rubygems_version: 1.2.0
152
152
  signing_key:
153
153
  specification_version: 2
154
- summary: Ruby extension library for peg-markdown
154
+ summary: Fast Markdown implementation
155
155
  test_files:
156
156
  - test/markdown_test.rb
data/README DELETED
@@ -1,38 +0,0 @@
1
- Ruby peg-markdown Extension
2
- ===========================
3
-
4
- The peg-markdown extension wraps John MacFarlane's C implementation of
5
- Markdown (see [peg-markdown][1]) in a Ruby extension.
6
-
7
- [1]: http://github.com/jgm/peg-markdown/
8
- "Jon MacFarleane's peg-markdown project"
9
-
10
- Installation/Hacking
11
- --------------------
12
-
13
- This library requires a recent version of glib2.
14
-
15
- The rpeg-markdown gem is available from Rubyforge:
16
-
17
- $ sudo gem install rpeg-markdown
18
-
19
- A Git repository is available for hacking:
20
-
21
- $ git clone git://github.com/rtomayko/rpeg-markdown.git
22
- $ cd rpeg-markdown
23
- $ rake test
24
-
25
- Patches happily accepted via fork or email.
26
-
27
- Changes
28
- -------
29
-
30
- 0.2.0 / 2008-07-12 - Adds test suite and plugs all memory leaks.
31
- 0.1.0 / 2008-05-30 - Initial release.
32
-
33
- COPYING
34
- -------
35
-
36
- The peg-markdown sources are licensed under the GPL and the Ruby extension
37
- sources adopts this license. See the file LICENSE included with this
38
- distribution for more information.