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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 70bf06c4fc4018bc5b9215e68f9b75987871bb06
4
- data.tar.gz: 88ec93a5f5de4dc30e9dbb88246bea48af37b1bc
2
+ SHA256:
3
+ metadata.gz: e3055a21865825c0b29ad04e61a3919189ced08d00427c678f17a5b161fe1d83
4
+ data.tar.gz: f48e03947a4a6aa5691b960aff4e82fe79f5fb724b75b7a4b1313dd9f178c992
5
5
  SHA512:
6
- metadata.gz: 9c4162b7aea9a922c5b11986f42759569c044c0e13f53db2cb63c2e05d2bc4893aa55b985005bf4acff43501f16401ebeb391b893490a29e7ecc5047b403d5b4
7
- data.tar.gz: 4a41333d63a1ef40a5efb5c70627a8ff6a82df3f7bb2fb8b7333dcbf4554ec23de6c401ff2fcfadeede260ba67103c51f6fa54d687be57b364000aecc0754244
6
+ metadata.gz: 12a4530fe1ef7f60419a7b44d5c82ebf506ea73b0937f4f54cfcd7c653904a6dd21bdf2bfd26b3785102f1ba379782473cac3b25faff5bb354c6c08ed4917f4d
7
+ data.tar.gz: d0108a9aa0db45fdfa3f4cc2d731119cae07b6c6afd6c167a10cc0fe305a56ed93e667010722b39472e16a330d5fc127c9332f51cb140992abd0e86a6c8d4a5f
data/CHANGELOG.md CHANGED
@@ -1,4 +1,6 @@
1
- # 1.0.0
1
+ * Support Pakyow v1.0
2
+
3
+ # 1.0.0 / 2015-10-18
2
4
 
3
5
  * Move from Rdiscount to Redcarpet
4
6
  * Configure Redcarpet for autolink, footnotes, and fenced code blocks
data/LICENSE CHANGED
@@ -1,20 +1,4 @@
1
- Copyright (c) 2013-2015 Bryan Powell
1
+ Copyright (c) Metabahn, LLC
2
2
 
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
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-markdown is a Ruby Gem that adds a Markdown view processor to a Pakyow app.
1
+ # pakyow/markdown
2
2
 
3
- # Usage
3
+ Markdown support for [pakyow/presenter](https://github.com/pakyow/pakyow/tree/master/pakyow-presenter).
4
4
 
5
- Add `pakyow-markdown` to your Gemfile. Now any view file with an `md`, `mdown`, or `markdown` extension will be processed to HTML automatically.
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,2 @@
1
+ require "pakyow/markdown/version"
2
+ require "pakyow/markdown/framework"
@@ -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
@@ -1,5 +1,5 @@
1
1
  module Pakyow
2
2
  module Markdown
3
- VERSION = '1.0.0'.freeze
3
+ VERSION = "2.0.0.rc1".freeze
4
4
  end
5
5
  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: 1.0.0
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: 2015-10-18 00:00:00.000000000 Z
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: '0'
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: '0'
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.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.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: '1.10'
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: '1.10'
83
- - !ruby/object:Gem::Dependency
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-markdown.rb
138
- - lib/version.rb
139
- - pakyow-markdown.gemspec
140
- - rakefile
141
- - test/processor_test.rb
142
- - test/support/helper.rb
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
- - MIT
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: '0'
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: '0'
86
+ version: 1.3.1
165
87
  requirements: []
166
- rubyforge_project:
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
@@ -1,2 +0,0 @@
1
- Gemfile.lock
2
- *.gem
data/Gemfile DELETED
@@ -1,14 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gem 'pakyow-support'
4
- gem 'pakyow-core'
5
- gem 'pakyow-presenter'
6
-
7
- gem 'redcarpet', '~> 3.3'
8
- gem 'rouge', '~> 1.10'
9
-
10
- group :test do
11
- gem 'rake'
12
- gem 'minitest'
13
- gem 'minitest-focus'
14
- end
@@ -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
@@ -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
@@ -1,12 +0,0 @@
1
- require 'rake'
2
- require 'rake/testtask'
3
-
4
- task default: [:test]
5
-
6
- desc 'Run basic tests'
7
- Rake::TestTask.new('test') do |t|
8
- t.libs << 'test'
9
- t.pattern = 'test/*_test.rb'
10
- t.verbose = false
11
- t.warning = false
12
- end
@@ -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
@@ -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'
@@ -1,5 +0,0 @@
1
- Pakyow::App.define do
2
- configure :test do
3
- presenter.view_stores[:default] = "test/support/views"
4
- end
5
- end
@@ -1,10 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>pakyow</title>
5
- </head>
6
-
7
- <body>
8
- <!-- @container -->
9
- </body>
10
- </html>
@@ -1 +0,0 @@
1
- # this should be a header
@@ -1 +0,0 @@
1
- *em*