metadown 0.9.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,10 @@
1
+ script: "rspec"
2
+ rvm:
3
+ - 1.8.7
4
+ - 1.9.2
5
+ - 1.9.3
6
+ - rbx-18mode
7
+ - rbx-19mode
8
+ - ruby-head
9
+ - ree
10
+
@@ -1,10 +1,18 @@
1
1
  require "metadown/renderer"
2
2
  require "metadown/version"
3
3
 
4
+ # This module namespaces everything in the gem. It's also where the factory
5
+ # #render method lives.
4
6
  module Metadown
5
7
 
8
+ # This struct is what gets returned from a call to #render.
9
+ #
10
+ # It has two attributes, one for the metadata, and one for the rendered
11
+ # output.
6
12
  Data = Struct.new(:metadata, :output)
7
13
 
14
+ # The render method is a convenient factory. It parses some text via our
15
+ # Renderer class and Redcarpet's own class, and gives us a Data back.
8
16
  def render(text)
9
17
  renderer = Metadown::Renderer.new
10
18
  markdown = Redcarpet::Markdown.new(renderer)
@@ -2,7 +2,14 @@ require 'redcarpet'
2
2
  require 'yaml'
3
3
 
4
4
  module Metadown
5
+ # This class is our own flavor of Redcarpet. It grabs out
6
+ # all the metadata before letting the rest of Redcarpet do
7
+ # all the work.
5
8
  class Renderer < Redcarpet::Render::HTML
9
+
10
+ # This hook is provided to us by Redcarpet. We get access
11
+ # to the whole text before anything else kicks off, which
12
+ # means we can snag out the YAML at the beginning.
6
13
  def preprocess(full_document)
7
14
  full_document =~ /^(---\s*\n.*?\n?)^(---\s*$\n?)/m
8
15
  @metadata = YAML.load($1) if $1
@@ -10,6 +17,8 @@ module Metadown
10
17
  $' or full_document
11
18
  end
12
19
 
20
+ # This accessor lets us access our metadata after the
21
+ # processing is all done.
13
22
  def metadata
14
23
  @metadata || {}
15
24
  end
@@ -1,3 +1,4 @@
1
1
  module Metadown
2
- VERSION = "0.9.0"
2
+ # The current released version of Metadown
3
+ VERSION = "1.0.0"
3
4
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metadown
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.0
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-01-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: redcarpet
16
- requirement: &2160435780 !ruby/object:Gem::Requirement
16
+ requirement: &2152680980 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2160435780
24
+ version_requirements: *2152680980
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rspec
27
- requirement: &2160434900 !ruby/object:Gem::Requirement
27
+ requirement: &2152680120 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *2160434900
35
+ version_requirements: *2152680120
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &2160434460 !ruby/object:Gem::Requirement
38
+ requirement: &2152679680 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2160434460
46
+ version_requirements: *2152679680
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: yard
49
- requirement: &2160433940 !ruby/object:Gem::Requirement
49
+ requirement: &2152679160 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *2160433940
57
+ version_requirements: *2152679160
58
58
  description: This gem gives you a custom markdown parser that allows you to prefix
59
59
  the markdown itself with YAML metadata.
60
60
  email:
@@ -65,6 +65,7 @@ extra_rdoc_files: []
65
65
  files:
66
66
  - .gitignore
67
67
  - .rvmrc
68
+ - .travis.yml
68
69
  - .yardopts
69
70
  - Gemfile
70
71
  - LICENSE