pakyow-markdown 1.0.0 → 2.0.0.rc1
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.
- checksums.yaml +5 -5
- data/CHANGELOG.md +3 -1
- data/LICENSE +3 -19
- data/README.md +5 -3
- data/lib/pakyow/markdown.rb +2 -0
- data/lib/pakyow/markdown/framework.rb +26 -0
- data/lib/pakyow/markdown/processor.rb +27 -0
- data/lib/pakyow/markdown/renderer.rb +22 -0
- data/lib/{version.rb → pakyow/markdown/version.rb} +1 -1
- metadata +20 -100
- data/.gitignore +0 -2
- data/Gemfile +0 -14
- data/lib/pakyow-markdown.rb +0 -29
- data/pakyow-markdown.gemspec +0 -25
- data/rakefile +0 -12
- data/test/processor_test.rb +0 -18
- data/test/support/helper.rb +0 -13
- data/test/support/test_application.rb +0 -5
- data/test/support/views/_templates/pakyow.html +0 -10
- data/test/support/views/index.md +0 -1
- data/test/support/views/sub.markdown +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: e3055a21865825c0b29ad04e61a3919189ced08d00427c678f17a5b161fe1d83
|
4
|
+
data.tar.gz: f48e03947a4a6aa5691b960aff4e82fe79f5fb724b75b7a4b1313dd9f178c992
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 12a4530fe1ef7f60419a7b44d5c82ebf506ea73b0937f4f54cfcd7c653904a6dd21bdf2bfd26b3785102f1ba379782473cac3b25faff5bb354c6c08ed4917f4d
|
7
|
+
data.tar.gz: d0108a9aa0db45fdfa3f4cc2d731119cae07b6c6afd6c167a10cc0fe305a56ed93e667010722b39472e16a330d5fc127c9332f51cb140992abd0e86a6c8d4a5f
|
data/CHANGELOG.md
CHANGED
data/LICENSE
CHANGED
@@ -1,20 +1,4 @@
|
|
1
|
-
Copyright (c)
|
1
|
+
Copyright (c) Metabahn, LLC
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
"Software"), to deal in the Software without restriction, including
|
6
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
-
permit persons to whom the Software is furnished to do so, subject to
|
9
|
-
the following conditions:
|
10
|
-
|
11
|
-
The above copyright notice and this permission notice shall be
|
12
|
-
included in all copies or substantial portions of the Software.
|
13
|
-
|
14
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
3
|
+
Pakyow Markdown is an open-source project licensed under the terms of the LGPLv3 license.
|
4
|
+
See <https://choosealicense.com/licenses/gpl-3.0/> for license text.
|
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
|
-
pakyow
|
1
|
+
# pakyow/markdown
|
2
2
|
|
3
|
-
|
3
|
+
Markdown support for [pakyow/presenter](https://github.com/pakyow/pakyow/tree/master/pakyow-presenter).
|
4
4
|
|
5
|
-
|
5
|
+
## Usage
|
6
|
+
|
7
|
+
Add `pakyow-markdown` to your `Gemfile`. Any view template with a `md`, `mdown`, or `markdown` file extension will be processed during presentation and rendered as HTML.
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "pakyow/framework"
|
4
|
+
|
5
|
+
require "pakyow/markdown/processor"
|
6
|
+
|
7
|
+
module Pakyow
|
8
|
+
module Markdown
|
9
|
+
class Framework < Pakyow::Framework(:markdown)
|
10
|
+
def boot
|
11
|
+
object.class_eval do
|
12
|
+
configurable :markdown do
|
13
|
+
setting :extensions, {
|
14
|
+
autolink: true,
|
15
|
+
footnotes: true,
|
16
|
+
fenced_code_blocks: true,
|
17
|
+
tables: true
|
18
|
+
}
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
object.state(:processor) << Pakyow::Markdown::Processer
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "redcarpet"
|
4
|
+
|
5
|
+
require "pakyow/presenter/processor"
|
6
|
+
|
7
|
+
require "pakyow/markdown/renderer"
|
8
|
+
|
9
|
+
module Pakyow
|
10
|
+
module Markdown
|
11
|
+
class Processer < Pakyow::Presenter::Processor
|
12
|
+
extensions :md, :mdown, :markdown
|
13
|
+
|
14
|
+
def initialize(*)
|
15
|
+
super
|
16
|
+
|
17
|
+
@markdown = Redcarpet::Markdown.new(
|
18
|
+
Renderer, @app.config.markdown.extensions
|
19
|
+
)
|
20
|
+
end
|
21
|
+
|
22
|
+
def call(content)
|
23
|
+
@markdown.render(content)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "redcarpet"
|
4
|
+
|
5
|
+
require "rouge"
|
6
|
+
require "rouge/plugins/redcarpet"
|
7
|
+
|
8
|
+
module Pakyow
|
9
|
+
module Markdown
|
10
|
+
class Renderer < Redcarpet::Render::HTML
|
11
|
+
include Rouge::Plugins::Redcarpet
|
12
|
+
|
13
|
+
def block_quote(quote)
|
14
|
+
if match = quote.match(/<p>\[(.*)\]/)
|
15
|
+
%(<blockquote class="#{match[1]}">#{quote.gsub("[#{match[1]}]", "")}</blockquote>)
|
16
|
+
else
|
17
|
+
super
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
metadata
CHANGED
@@ -1,152 +1,74 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pakyow-markdown
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0.rc1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Bryan Powell
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-07-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: pakyow-support
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '0'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: pakyow-core
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
34
|
-
type: :runtime
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '0'
|
41
13
|
- !ruby/object:Gem::Dependency
|
42
14
|
name: pakyow-presenter
|
43
15
|
requirement: !ruby/object:Gem::Requirement
|
44
16
|
requirements:
|
45
17
|
- - "~>"
|
46
18
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
19
|
+
version: 1.0.0.rc1
|
48
20
|
type: :runtime
|
49
21
|
prerelease: false
|
50
22
|
version_requirements: !ruby/object:Gem::Requirement
|
51
23
|
requirements:
|
52
24
|
- - "~>"
|
53
25
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
26
|
+
version: 1.0.0.rc1
|
55
27
|
- !ruby/object:Gem::Dependency
|
56
28
|
name: redcarpet
|
57
29
|
requirement: !ruby/object:Gem::Requirement
|
58
30
|
requirements:
|
59
31
|
- - "~>"
|
60
32
|
- !ruby/object:Gem::Version
|
61
|
-
version: '3.
|
33
|
+
version: '3.4'
|
62
34
|
type: :runtime
|
63
35
|
prerelease: false
|
64
36
|
version_requirements: !ruby/object:Gem::Requirement
|
65
37
|
requirements:
|
66
38
|
- - "~>"
|
67
39
|
- !ruby/object:Gem::Version
|
68
|
-
version: '3.
|
40
|
+
version: '3.4'
|
69
41
|
- !ruby/object:Gem::Dependency
|
70
42
|
name: rouge
|
71
43
|
requirement: !ruby/object:Gem::Requirement
|
72
44
|
requirements:
|
73
45
|
- - "~>"
|
74
46
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
47
|
+
version: '3.5'
|
76
48
|
type: :runtime
|
77
49
|
prerelease: false
|
78
50
|
version_requirements: !ruby/object:Gem::Requirement
|
79
51
|
requirements:
|
80
52
|
- - "~>"
|
81
53
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
83
|
-
|
84
|
-
name: rake
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '10.4'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '10.4'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: minitest
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '5.8'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - "~>"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '5.8'
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: minitest-focus
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - "~>"
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '1.1'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - "~>"
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '1.1'
|
125
|
-
description: Markdown support for Pakyow views
|
54
|
+
version: '3.5'
|
55
|
+
description: Markdown support for Pakyow Presenter
|
126
56
|
email: bryan@metabahn.com
|
127
57
|
executables: []
|
128
58
|
extensions: []
|
129
59
|
extra_rdoc_files: []
|
130
60
|
files:
|
131
|
-
- ".gitignore"
|
132
61
|
- CHANGELOG.md
|
133
|
-
- Gemfile
|
134
|
-
- Gemfile.lock
|
135
62
|
- LICENSE
|
136
63
|
- README.md
|
137
|
-
- lib/pakyow
|
138
|
-
- lib/
|
139
|
-
- pakyow
|
140
|
-
-
|
141
|
-
-
|
142
|
-
|
143
|
-
- test/support/test_application.rb
|
144
|
-
- test/support/views/_templates/pakyow.html
|
145
|
-
- test/support/views/index.md
|
146
|
-
- test/support/views/sub.markdown
|
147
|
-
homepage: http://pakyow.org
|
64
|
+
- lib/pakyow/markdown.rb
|
65
|
+
- lib/pakyow/markdown/framework.rb
|
66
|
+
- lib/pakyow/markdown/processor.rb
|
67
|
+
- lib/pakyow/markdown/renderer.rb
|
68
|
+
- lib/pakyow/markdown/version.rb
|
69
|
+
homepage: https://pakyow.org
|
148
70
|
licenses:
|
149
|
-
-
|
71
|
+
- LGPL-3.0
|
150
72
|
metadata: {}
|
151
73
|
post_install_message:
|
152
74
|
rdoc_options: []
|
@@ -156,17 +78,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
156
78
|
requirements:
|
157
79
|
- - ">="
|
158
80
|
- !ruby/object:Gem::Version
|
159
|
-
version:
|
81
|
+
version: 2.5.0
|
160
82
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
161
83
|
requirements:
|
162
|
-
- - "
|
84
|
+
- - ">"
|
163
85
|
- !ruby/object:Gem::Version
|
164
|
-
version:
|
86
|
+
version: 1.3.1
|
165
87
|
requirements: []
|
166
|
-
|
167
|
-
rubygems_version: 2.4.5
|
88
|
+
rubygems_version: 3.0.3
|
168
89
|
signing_key:
|
169
90
|
specification_version: 4
|
170
91
|
summary: Pakyow Markdown
|
171
92
|
test_files: []
|
172
|
-
has_rdoc:
|
data/.gitignore
DELETED
data/Gemfile
DELETED
data/lib/pakyow-markdown.rb
DELETED
@@ -1,29 +0,0 @@
|
|
1
|
-
require 'redcarpet'
|
2
|
-
|
3
|
-
require 'rouge'
|
4
|
-
require 'rouge/plugins/redcarpet'
|
5
|
-
|
6
|
-
require 'version'
|
7
|
-
|
8
|
-
module Pakyow
|
9
|
-
module Markdown
|
10
|
-
class Renderer < Redcarpet::Render::HTML
|
11
|
-
include Rouge::Plugins::Redcarpet
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
Pakyow::Config.register :markdown do |config|
|
17
|
-
# Extensions to load with Redcarpet
|
18
|
-
config.opt :extensions, {
|
19
|
-
autolink: true,
|
20
|
-
footnotes: true,
|
21
|
-
fenced_code_blocks: true
|
22
|
-
}
|
23
|
-
end
|
24
|
-
|
25
|
-
Pakyow::App.processor :md, :mdown, :markdown do |content|
|
26
|
-
Redcarpet::Markdown.new(
|
27
|
-
Pakyow::Markdown::Renderer, **Pakyow::Config.markdown.extensions
|
28
|
-
).render(content)
|
29
|
-
end
|
data/pakyow-markdown.gemspec
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
require File.expand_path('../lib/version', __FILE__)
|
2
|
-
|
3
|
-
Gem::Specification.new do |spec|
|
4
|
-
spec.name = 'pakyow-markdown'
|
5
|
-
spec.summary = 'Pakyow Markdown'
|
6
|
-
spec.description = 'Markdown support for Pakyow views'
|
7
|
-
spec.author = 'Bryan Powell'
|
8
|
-
spec.email = 'bryan@metabahn.com'
|
9
|
-
spec.homepage = 'http://pakyow.org'
|
10
|
-
spec.version = Pakyow::Markdown::VERSION
|
11
|
-
spec.require_path = 'lib'
|
12
|
-
spec.files = `git ls-files`.split("\n")
|
13
|
-
spec.license = 'MIT'
|
14
|
-
|
15
|
-
spec.add_dependency('pakyow-support', '~> 0')
|
16
|
-
spec.add_dependency('pakyow-core', '~> 0')
|
17
|
-
spec.add_dependency('pakyow-presenter', '~> 0')
|
18
|
-
|
19
|
-
spec.add_dependency('redcarpet', '~> 3.3')
|
20
|
-
spec.add_dependency('rouge', '~> 1.10')
|
21
|
-
|
22
|
-
spec.add_development_dependency('rake', '~> 10.4')
|
23
|
-
spec.add_development_dependency('minitest', '~> 5.8')
|
24
|
-
spec.add_development_dependency('minitest-focus', '~> 1.1')
|
25
|
-
end
|
data/rakefile
DELETED
data/test/processor_test.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
require "support/helper"
|
2
|
-
|
3
|
-
class ProcessorTest < MiniTest::Test
|
4
|
-
def setup
|
5
|
-
@view_store = :test
|
6
|
-
Pakyow::App.stage(:test)
|
7
|
-
end
|
8
|
-
|
9
|
-
def test_md_view_is_processed
|
10
|
-
v = Pakyow.app.presenter.store.composer('/')
|
11
|
-
assert_equal "<h1>this should be a header</h1>", v.container(:default).to_html.strip
|
12
|
-
end
|
13
|
-
|
14
|
-
def test_markdown_view_is_processed
|
15
|
-
v = Pakyow.app.presenter.store.composer('/sub')
|
16
|
-
assert_equal "<p><em>em</em></p>", v.container(:default).to_html.strip
|
17
|
-
end
|
18
|
-
end
|
data/test/support/helper.rb
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'bundler/setup'
|
3
|
-
require 'minitest/autorun'
|
4
|
-
require 'minitest/focus'
|
5
|
-
require 'pp'
|
6
|
-
|
7
|
-
require 'pakyow-support'
|
8
|
-
require 'pakyow-core'
|
9
|
-
require 'pakyow-presenter'
|
10
|
-
|
11
|
-
require File.expand_path('../../../lib/pakyow-markdown', __FILE__)
|
12
|
-
|
13
|
-
require 'support/test_application'
|
data/test/support/views/index.md
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
# this should be a header
|
@@ -1 +0,0 @@
|
|
1
|
-
*em*
|