jekyll_href 1.0.3 → 1.0.4
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 +4 -4
- data/.rubocop.yml +3 -3
- data/CHANGELOG.md +2 -6
- data/README.md +36 -6
- data/Rakefile +1 -2
- data/jekyll_href.gemspec +29 -29
- data/lib/jekyll_href/version.rb +1 -1
- data/lib/jekyll_href.rb +74 -107
- metadata +21 -105
- data/.ruby-version +0 -1
- data/.vscode/launch.json +0 -75
- data/.vscode/settings.json +0 -4
- data/Gemfile +0 -8
- data/Gemfile.lock +0 -133
- data/sig/jekyll_href.rbs +0 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2ac9c9737cba4b3509c84de7b06da21041b839db280cb8cbc77310252939974e
|
4
|
+
data.tar.gz: cad78f098ac87ff61d41761aabd36a2b048c3169270ff1d188eeb5deedd2ac7c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 68fbfaed3a11ff94d8fe24e3175cb71d4735e3f22e89ac044a1c8e3d205c59fa5d3e6bfb11e4c182caa889cb69ad3f840782bac0c810d07dc26f3891e7997e49
|
7
|
+
data.tar.gz: 888345783992115409644792d18c02a32a076ab8a6d150b59ee9c4cfd9e7a207fb442d6ddf1efc220568f148ce40a176c4818a6019fbf307ec80988c92bf2ba0
|
data/.rubocop.yml
CHANGED
@@ -9,12 +9,12 @@ AllCops:
|
|
9
9
|
NewCops: enable
|
10
10
|
TargetRubyVersion: 2.6
|
11
11
|
|
12
|
+
Gemspec/RequireMFA:
|
13
|
+
Enabled: false
|
14
|
+
|
12
15
|
Layout/LineLength:
|
13
16
|
Max: 150
|
14
17
|
|
15
|
-
Layout/MultilineOperationIndentation:
|
16
|
-
Enabled: false
|
17
|
-
|
18
18
|
Layout/MultilineMethodCallIndentation:
|
19
19
|
Enabled: false
|
20
20
|
|
data/CHANGELOG.md
CHANGED
@@ -1,9 +1,5 @@
|
|
1
|
-
## 1.0.
|
2
|
-
* Fixed
|
3
|
-
* Added unit tests, but they do not work yet
|
4
|
-
|
5
|
-
## 1.0.2 / 2022-03-13
|
6
|
-
* Fixed frozen string issue
|
1
|
+
## 1.0.4 / 2022-03-28
|
2
|
+
* Fixed problem with `match` option
|
7
3
|
|
8
4
|
## 1.0.0 / 2022-03-11
|
9
5
|
* Made into a Ruby gem and published on RubyGems.org as [jekyll_href](https://rubygems.org/gems/jekyll_href).
|
data/README.md
CHANGED
@@ -6,11 +6,12 @@
|
|
6
6
|
The Liquid tag generates and `<a href>` HTML tag, by default containing `target="_blank"` and `rel=nofollow`.
|
7
7
|
To suppress the `nofollow` attribute, preface the link with the word `follow`.
|
8
8
|
To suppress the `target` attribute, preface the link with the word `notarget`.
|
9
|
+
Also provides a convenient way to generate formatted and clickable URIs.
|
9
10
|
|
10
11
|
|
11
12
|
### Syntax:
|
12
13
|
```
|
13
|
-
{% href [match | [follow] [notarget]] url text to display %}
|
14
|
+
{% href [match | [follow] [notarget]] [url] text to display %}
|
14
15
|
```
|
15
16
|
Note that the url should not be enclosed in quotes.
|
16
17
|
Also please note that the square brackets denote optional parameters, and should not be typed.
|
@@ -19,6 +20,7 @@ Also please note that the square brackets denote optional parameters, and should
|
|
19
20
|
### Additional Information
|
20
21
|
More information is available on my web site about [my Jekyll plugins](https://www.mslinn.com/blog/2020/10/03/jekyll-plugins.html).
|
21
22
|
|
23
|
+
|
22
24
|
## Installation
|
23
25
|
|
24
26
|
Add this line to your Jekyll website's `Gemfile`, within the `jekyll_plugins` group:
|
@@ -39,6 +41,7 @@ Or install it yourself as:
|
|
39
41
|
|
40
42
|
## Usage
|
41
43
|
|
44
|
+
### Defaults
|
42
45
|
```
|
43
46
|
{% href https://mslinn.com The Awesome %}
|
44
47
|
```
|
@@ -50,7 +53,7 @@ Expands to this:
|
|
50
53
|
|
51
54
|
Which renders as this: <a href='https://mslinn.com' target='_blank' rel='nofollow'>The Awesome</a>
|
52
55
|
|
53
|
-
|
56
|
+
### `follow`
|
54
57
|
```
|
55
58
|
{% href follow https://mslinn.com The Awesome %}
|
56
59
|
```
|
@@ -61,6 +64,7 @@ Expands to this:
|
|
61
64
|
```
|
62
65
|
|
63
66
|
|
67
|
+
### `notarget`
|
64
68
|
```
|
65
69
|
{% href notarget https://mslinn.com The Awesome %}
|
66
70
|
```
|
@@ -71,6 +75,7 @@ Expands to this:
|
|
71
75
|
```
|
72
76
|
|
73
77
|
|
78
|
+
### `follow notarget`
|
74
79
|
```
|
75
80
|
{% href follow notarget https://mslinn.com The Awesome %}
|
76
81
|
```
|
@@ -80,30 +85,55 @@ Expands to this:
|
|
80
85
|
<a href='https://mslinn.com'>The Awesome</a>
|
81
86
|
```
|
82
87
|
|
88
|
+
### `match`
|
89
|
+
Looks for a post with a matching URL.
|
83
90
|
```
|
84
91
|
{% href match setting-up-django-oscar.html tutorial site %}
|
85
92
|
```
|
86
93
|
|
87
|
-
|
94
|
+
Might expand to this:
|
88
95
|
```html
|
89
96
|
<a href='/blog/2021/02/11/setting-up-django-oscar.html'>tutorial site</a>
|
90
97
|
```
|
91
98
|
|
99
|
+
### URI
|
100
|
+
```html
|
101
|
+
{% href mslinn.com %}
|
102
|
+
```
|
103
|
+
Expands to this:
|
104
|
+
```html
|
105
|
+
<a href='https://mslinn.com' target='_blank' rel='nofollow'><code>mslinn.com</code></a>
|
106
|
+
```
|
107
|
+
Which renders as: [`mslinn.com`](https://mslinn.com)
|
92
108
|
|
93
109
|
## Development
|
94
110
|
|
95
111
|
After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
96
112
|
|
97
113
|
Install development dependencies like this:
|
98
|
-
|
114
|
+
```
|
99
115
|
$ BUNDLE_WITH="development" bundle install
|
116
|
+
```
|
117
|
+
|
118
|
+
To install this gem onto your local machine, run:
|
119
|
+
```shell
|
120
|
+
$ bundle exec rake install
|
121
|
+
```
|
100
122
|
|
101
|
-
To
|
123
|
+
To release a new version,
|
124
|
+
1. Update the version number in `version.rb`.
|
125
|
+
2. Commit all changes to git; if you don't the next step might fail with an unexplainable error message.
|
126
|
+
3. Run the following:
|
127
|
+
```shell
|
128
|
+
$ bundle exec rake release
|
129
|
+
```
|
130
|
+
The above creates a git tag for the version, commits the created tag,
|
131
|
+
and pushes the new `.gem` file to [RubyGems.org](https://rubygems.org).
|
102
132
|
|
103
133
|
|
104
134
|
## Contributing
|
105
135
|
|
106
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/
|
136
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/mslinn/jekyll_href.
|
107
137
|
|
108
138
|
|
109
139
|
## License
|
data/Rakefile
CHANGED
data/jekyll_href.gemspec
CHANGED
@@ -3,42 +3,42 @@
|
|
3
3
|
require_relative "lib/jekyll_href/version"
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
|
-
|
7
|
-
|
6
|
+
github = "https://github.com/mslinn/jekyll_href"
|
7
|
+
|
8
8
|
spec.authors = ["Mike Slinn"]
|
9
|
+
spec.bindir = "exe"
|
10
|
+
spec.description = <<~END_OF_DESC
|
11
|
+
Generates an 'a href' tag, possibly with target='_blank' and rel='nofollow'.
|
12
|
+
END_OF_DESC
|
9
13
|
spec.email = ["mslinn@mslinn.com"]
|
10
|
-
|
11
|
-
spec.
|
12
|
-
spec.description = "Generates an 'a href' tag, possibly with target='_blank' and rel='nofollow'."
|
13
|
-
spec.homepage = "https://github.com/mslinn/jekyll_href"
|
14
|
+
spec.files = Dir[".rubocop.yml", "LICENSE.*", "Rakefile", "{lib,spec}/**/*", "*.gemspec", "*.md"]
|
15
|
+
spec.homepage = "https://www.mslinn.com/blog/2020/10/03/jekyll-plugins.html#href"
|
14
16
|
spec.license = "MIT"
|
15
|
-
spec.
|
16
|
-
|
17
|
-
|
17
|
+
spec.metadata = {
|
18
|
+
"allowed_push_host" => "https://rubygems.org",
|
19
|
+
"bug_tracker_uri" => "#{github}/issues",
|
20
|
+
"changelog_uri" => "#{github}/CHANGELOG.md",
|
21
|
+
"homepage_uri" => spec.homepage,
|
22
|
+
"source_code_uri" => github,
|
23
|
+
}
|
24
|
+
spec.name = "jekyll_href"
|
25
|
+
spec.post_install_message = <<~END_MESSAGE
|
18
26
|
|
19
|
-
|
20
|
-
spec.metadata["source_code_uri"] = "https://github.com/mslinn/jekyll_href"
|
21
|
-
spec.metadata["changelog_uri"] = "https://github.com/mslinn/jekyll_href/CHANGELOG.md"
|
27
|
+
Thanks for installing #{spec.name}!
|
22
28
|
|
23
|
-
|
24
|
-
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
25
|
-
spec.files = Dir.chdir(File.expand_path(__dir__)) do
|
26
|
-
`git ls-files -z`.split("\x0").reject do |f|
|
27
|
-
(f == __FILE__) || f.match(%r{\A(?:(?:bin|test|spec|features)/|\.(?:git|travis|circleci)|appveyor)})
|
28
|
-
end
|
29
|
-
end
|
30
|
-
spec.bindir = "exe"
|
31
|
-
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
|
29
|
+
END_MESSAGE
|
32
30
|
spec.require_paths = ["lib"]
|
31
|
+
spec.required_ruby_version = ">= 2.6.0"
|
32
|
+
spec.summary = "Generates an 'a href' tag, possibly with target='_blank' and rel='nofollow'."
|
33
|
+
spec.test_files = spec.files.grep(%r!^(test|spec|features)/!)
|
34
|
+
spec.version = JekyllHref::VERSION
|
35
|
+
|
36
|
+
spec.add_dependency 'jekyll', '>= 3.5.0'
|
37
|
+
spec.add_dependency 'jekyll_plugin_logger'
|
33
38
|
|
34
|
-
spec.add_development_dependency 'bundler'
|
35
39
|
spec.add_development_dependency 'debase'
|
36
|
-
spec.add_development_dependency 'jekyll'
|
37
|
-
spec.add_development_dependency '
|
38
|
-
spec.add_development_dependency '
|
39
|
-
spec.add_development_dependency 'rspec'
|
40
|
-
spec.add_development_dependency 'rubocop'
|
41
|
-
spec.add_development_dependency 'rubocop-jekyll'
|
42
|
-
spec.add_development_dependency 'rubocop-rake'
|
40
|
+
# spec.add_development_dependency 'rubocop-jekyll'
|
41
|
+
# spec.add_development_dependency 'rubocop-rake'
|
42
|
+
# spec.add_development_dependency 'rubocop-rspec'
|
43
43
|
spec.add_development_dependency 'ruby-debug-ide'
|
44
44
|
end
|
data/lib/jekyll_href/version.rb
CHANGED
data/lib/jekyll_href.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
+
require "jekyll_plugin_logger"
|
4
|
+
require "liquid"
|
3
5
|
require_relative "jekyll_href/version"
|
4
6
|
|
5
7
|
# @author Copyright 2020 Michael Slinn
|
@@ -47,139 +49,104 @@ require_relative "jekyll_href/version"
|
|
47
49
|
# @example Substitute name/value pair for the django-github variable:
|
48
50
|
# {% href {{django-github}}/django/core/management/__init__.py#L398-L401
|
49
51
|
# <code>django.core.management.execute_from_command_line</code> %}
|
50
|
-
module JekyllHref
|
51
|
-
class Error < StandardError; end
|
52
|
-
|
53
|
-
class HrefSetup
|
54
|
-
attr_reader :follow, :match_keyword, :tokens, :target, :text
|
55
|
-
|
56
|
-
def initialize(tag_line, parse_context)
|
57
|
-
@tokens = tag_line.strip.split
|
58
|
-
@parse_context = parse_context
|
59
|
-
@follow = get_value('follow', " rel='nofollow'")
|
60
|
-
@target = get_value('notarget', " target='_blank'")
|
61
|
-
|
62
|
-
@match_keyword = false
|
63
|
-
match_index = @tokens.index('match')
|
64
|
-
if match_index
|
65
|
-
context.delete_at(match_index)
|
66
|
-
@follow = ''
|
67
|
-
@match_keyword = true
|
68
|
-
@target = ''
|
69
|
-
end
|
70
52
|
|
71
|
-
|
53
|
+
class ExternalHref < Liquid::Tag
|
54
|
+
# @param tag_name [String] is the name of the tag, which we already know.
|
55
|
+
# @param command_line [Hash, String, Liquid::Tag::Parser] the arguments from the web page.
|
56
|
+
# @param _parse_context [Liquid::ParseContext] tokenized command line
|
57
|
+
# @return [void]
|
58
|
+
def initialize(tag_name, command_line, _parse_context)
|
59
|
+
super
|
60
|
+
|
61
|
+
@match = false
|
62
|
+
@tokens = command_line.strip.split
|
63
|
+
@follow = get_value("follow", " rel='nofollow'")
|
64
|
+
@target = get_value("notarget", " target='_blank'")
|
65
|
+
@logger = PluginMetaLogger.instance.new_logger(self)
|
66
|
+
|
67
|
+
match_index = @tokens.index("match")
|
68
|
+
if match_index
|
69
|
+
@tokens.delete_at(match_index)
|
70
|
+
@follow = ""
|
71
|
+
@match = true
|
72
|
+
@target = ""
|
72
73
|
end
|
73
74
|
|
74
|
-
|
75
|
-
|
76
|
-
@link = @link.gsub("{{#{name}}}", value)
|
77
|
-
end
|
78
|
-
@link
|
79
|
-
end
|
75
|
+
finalize @tokens
|
76
|
+
end
|
80
77
|
|
81
|
-
|
78
|
+
# Method prescribed by the Jekyll plugin lifecycle.
|
79
|
+
# @return [String]
|
80
|
+
def render(context)
|
81
|
+
match(context) if @match
|
82
|
+
link = replace_vars(context, @link)
|
83
|
+
@logger.debug { "@link=#{@link}; link=#{link}" }
|
84
|
+
"<a href='#{link}'#{@target}#{@follow}>#{@text}</a>"
|
85
|
+
end
|
82
86
|
|
83
|
-
|
84
|
-
@link = @tokens.shift
|
87
|
+
private
|
85
88
|
|
86
|
-
|
87
|
-
|
88
|
-
@text = "<code>#{@link}</code>"
|
89
|
-
@link = "https://#{@link}"
|
90
|
-
end
|
89
|
+
def finalize(tokens)
|
90
|
+
@link = tokens.shift
|
91
91
|
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
92
|
+
@text = tokens.join(" ").strip
|
93
|
+
if @text.empty?
|
94
|
+
@text = "<code>${@link}</code>"
|
95
|
+
@link = "https://#{@link}"
|
96
96
|
end
|
97
97
|
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
if target_index
|
102
|
-
@tokens.delete_at(target_index)
|
103
|
-
value = ""
|
104
|
-
end
|
105
|
-
value
|
98
|
+
unless @link.start_with? "http"
|
99
|
+
@follow = ""
|
100
|
+
@target = ""
|
106
101
|
end
|
107
102
|
end
|
108
103
|
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
@
|
114
|
-
|
115
|
-
match(context) if @href_setup.match_keyword
|
104
|
+
def get_value(token, default_value)
|
105
|
+
value = default_value
|
106
|
+
target_index = @tokens.index(token)
|
107
|
+
if target_index
|
108
|
+
@tokens.delete_at(target_index)
|
109
|
+
value = ""
|
116
110
|
end
|
111
|
+
value
|
112
|
+
end
|
117
113
|
|
118
|
-
|
119
|
-
|
120
|
-
|
114
|
+
def match(context) # rubocop:disable Metrics/AbcSize, Metrics/CyclomaticComplexity, Metrics/MethodLength
|
115
|
+
site = context.registers[:site]
|
116
|
+
config = site.config['href']
|
117
|
+
die_if_nomatch = !config.nil? && config['nomatch'] && config['nomatch']=='fatal'
|
121
118
|
|
122
|
-
|
119
|
+
path, fragment = @link.split('#')
|
123
120
|
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
121
|
+
@logger.debug { "@link=#{@link}" }
|
122
|
+
@logger.debug { "site.posts[0].url = #{site.posts.docs[0].url}" }
|
123
|
+
@logger.debug { "site.posts[0].path = #{site.posts.docs[0].path}" }
|
124
|
+
posts = site.posts.docs.select { |x| x.url.include?(path) }
|
125
|
+
case posts.length
|
126
|
+
when 0
|
129
127
|
if die_if_nomatch
|
130
128
|
abort "href error: No url matches '#{@link}'"
|
131
129
|
else
|
132
130
|
@link = "#"
|
133
131
|
@text = "<i>#{@link} is not available</i>"
|
134
132
|
end
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
case posts.length
|
141
|
-
when 0
|
142
|
-
handle_no_args
|
143
|
-
when 1
|
144
|
-
@link = "#{@link}\##{fragment}" if fragment
|
145
|
-
else
|
146
|
-
abort "Error: More than one url matched: #{matches.join(", ")}"
|
147
|
-
end
|
133
|
+
when 1
|
134
|
+
@link = posts.first.url
|
135
|
+
@link = "#{@link}\##{fragment}" if fragment
|
136
|
+
else
|
137
|
+
abort "Error: More than one url matched: #{ matches.join(", ")}"
|
148
138
|
end
|
149
139
|
end
|
150
140
|
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
# @template_options={
|
157
|
-
# :line_numbers=>true,
|
158
|
-
# :locale=>#<Liquid::I18n:0x00005595446e5760 @path="/home/mslinn/.gems/gems/liquid-4.0.3/lib/liquid/locales/en.yml">},
|
159
|
-
# @locale=#<Liquid::I18n:0x00005595446e5760
|
160
|
-
# @path="/home/mslinn/.gems/gems/liquid-4.0.3/lib/liquid/locales/en.yml">,
|
161
|
-
# @warnings=[],
|
162
|
-
# @depth=0,
|
163
|
-
# @partial=false,
|
164
|
-
# @options={:line_numbers=>true, :locale=>#<Liquid::I18n:0x00005595446e5760
|
165
|
-
# @path="/home/mslinn/.gems/gems/liquid-4.0.3/lib/liquid/locales/en.yml">},
|
166
|
-
# @error_mode=:strict,
|
167
|
-
# @line_number=9,
|
168
|
-
# @trim_whitespace=false>
|
169
|
-
# @return [void]
|
170
|
-
def initialize(tag_name, tag_line, parse_context)
|
171
|
-
super
|
172
|
-
@href_setup = HrefSetup.new(tag_line, parse_context)
|
173
|
-
end
|
174
|
-
|
175
|
-
# Method prescribed by the Jekyll plugin lifecycle.
|
176
|
-
# @param context [Liquid::Context] Context keeps the variable stack and resolves variables, as well as keywords
|
177
|
-
# @return [String]
|
178
|
-
def render(context)
|
179
|
-
href_render = HrefRender.new(context, @href_setup)
|
180
|
-
"<a href='#{href_render.link}'#{@href_setup.target}#{@href_setup.follow}>#{@href_setup.text}</a>"
|
141
|
+
def replace_vars(context, link)
|
142
|
+
variables = context.registers[:site].config['plugin-vars']
|
143
|
+
variables.each do |name, value|
|
144
|
+
# puts "#{name}=#{value}"
|
145
|
+
link = link.gsub("{{#{name}}}", value)
|
181
146
|
end
|
147
|
+
link
|
182
148
|
end
|
183
149
|
end
|
184
150
|
|
185
|
-
|
151
|
+
PluginMetaLogger.instance.info { "Loaded jeykll_href v#{JekyllHref::VERSION} plugin." }
|
152
|
+
Liquid::Template.register_tag('href', ExternalHref)
|
metadata
CHANGED
@@ -1,93 +1,37 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll_href
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Slinn
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-03-
|
11
|
+
date: 2022-03-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: bundler
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '0'
|
20
|
-
type: :development
|
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: debase
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0'
|
34
|
-
type: :development
|
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: jekyll
|
43
15
|
requirement: !ruby/object:Gem::Requirement
|
44
16
|
requirements:
|
45
17
|
- - ">="
|
46
18
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
48
|
-
type: :
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: pry
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - ">="
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - ">="
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rake
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
|
-
type: :development
|
19
|
+
version: 3.5.0
|
20
|
+
type: :runtime
|
77
21
|
prerelease: false
|
78
22
|
version_requirements: !ruby/object:Gem::Requirement
|
79
23
|
requirements:
|
80
24
|
- - ">="
|
81
25
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
26
|
+
version: 3.5.0
|
83
27
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
28
|
+
name: jekyll_plugin_logger
|
85
29
|
requirement: !ruby/object:Gem::Requirement
|
86
30
|
requirements:
|
87
31
|
- - ">="
|
88
32
|
- !ruby/object:Gem::Version
|
89
33
|
version: '0'
|
90
|
-
type: :
|
34
|
+
type: :runtime
|
91
35
|
prerelease: false
|
92
36
|
version_requirements: !ruby/object:Gem::Requirement
|
93
37
|
requirements:
|
@@ -95,35 +39,7 @@ dependencies:
|
|
95
39
|
- !ruby/object:Gem::Version
|
96
40
|
version: '0'
|
97
41
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - ">="
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - ">="
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
111
|
-
- !ruby/object:Gem::Dependency
|
112
|
-
name: rubocop-jekyll
|
113
|
-
requirement: !ruby/object:Gem::Requirement
|
114
|
-
requirements:
|
115
|
-
- - ">="
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
requirements:
|
122
|
-
- - ">="
|
123
|
-
- !ruby/object:Gem::Version
|
124
|
-
version: '0'
|
125
|
-
- !ruby/object:Gem::Dependency
|
126
|
-
name: rubocop-rake
|
42
|
+
name: debase
|
127
43
|
requirement: !ruby/object:Gem::Requirement
|
128
44
|
requirements:
|
129
45
|
- - ">="
|
@@ -150,7 +66,9 @@ dependencies:
|
|
150
66
|
- - ">="
|
151
67
|
- !ruby/object:Gem::Version
|
152
68
|
version: '0'
|
153
|
-
description: Generates an 'a href' tag, possibly with target='_blank' and rel='nofollow'.
|
69
|
+
description: 'Generates an ''a href'' tag, possibly with target=''_blank'' and rel=''nofollow''.
|
70
|
+
|
71
|
+
'
|
154
72
|
email:
|
155
73
|
- mslinn@mslinn.com
|
156
74
|
executables: []
|
@@ -158,28 +76,26 @@ extensions: []
|
|
158
76
|
extra_rdoc_files: []
|
159
77
|
files:
|
160
78
|
- ".rubocop.yml"
|
161
|
-
- ".ruby-version"
|
162
|
-
- ".vscode/launch.json"
|
163
|
-
- ".vscode/settings.json"
|
164
79
|
- CHANGELOG.md
|
165
|
-
- Gemfile
|
166
|
-
- Gemfile.lock
|
167
80
|
- LICENSE.txt
|
168
81
|
- README.md
|
169
82
|
- Rakefile
|
170
83
|
- jekyll_href.gemspec
|
171
84
|
- lib/jekyll_href.rb
|
172
85
|
- lib/jekyll_href/version.rb
|
173
|
-
|
174
|
-
homepage: https://github.com/mslinn/jekyll_href
|
86
|
+
homepage: https://www.mslinn.com/blog/2020/10/03/jekyll-plugins.html#href
|
175
87
|
licenses:
|
176
88
|
- MIT
|
177
89
|
metadata:
|
178
|
-
allowed_push_host: https://rubygems.org
|
179
|
-
|
180
|
-
source_code_uri: https://github.com/mslinn/jekyll_href
|
90
|
+
allowed_push_host: https://rubygems.org
|
91
|
+
bug_tracker_uri: https://github.com/mslinn/jekyll_href/issues
|
181
92
|
changelog_uri: https://github.com/mslinn/jekyll_href/CHANGELOG.md
|
182
|
-
|
93
|
+
homepage_uri: https://www.mslinn.com/blog/2020/10/03/jekyll-plugins.html#href
|
94
|
+
source_code_uri: https://github.com/mslinn/jekyll_href
|
95
|
+
post_install_message: |2+
|
96
|
+
|
97
|
+
Thanks for installing jekyll_href!
|
98
|
+
|
183
99
|
rdoc_options: []
|
184
100
|
require_paths:
|
185
101
|
- lib
|
@@ -194,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
194
110
|
- !ruby/object:Gem::Version
|
195
111
|
version: '0'
|
196
112
|
requirements: []
|
197
|
-
rubygems_version: 3.
|
113
|
+
rubygems_version: 3.1.4
|
198
114
|
signing_key:
|
199
115
|
specification_version: 4
|
200
116
|
summary: Generates an 'a href' tag, possibly with target='_blank' and rel='nofollow'.
|
data/.ruby-version
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
3.0.0
|
data/.vscode/launch.json
DELETED
@@ -1,75 +0,0 @@
|
|
1
|
-
{
|
2
|
-
// Use IntelliSense to learn about possible attributes.
|
3
|
-
// Hover to view descriptions of existing attributes.
|
4
|
-
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
5
|
-
"version": "0.2.0",
|
6
|
-
"configurations": [
|
7
|
-
{
|
8
|
-
"cwd": "${workspaceRoot}",
|
9
|
-
"name": "Attach rdebug-ide",
|
10
|
-
"request": "attach",
|
11
|
-
"remoteHost": "localhost",
|
12
|
-
"remotePort": "1234",
|
13
|
-
"remoteWorkspaceRoot": "/",
|
14
|
-
"restart": true,
|
15
|
-
"showDebuggerOutput": true,
|
16
|
-
"type": "Ruby",
|
17
|
-
},
|
18
|
-
{
|
19
|
-
"cwd": "${workspaceRoot}",
|
20
|
-
"debuggerPort": "1234",
|
21
|
-
"name": "Debug Jekyll",
|
22
|
-
"program": "/usr/local/bin/jekyll",
|
23
|
-
"args": [
|
24
|
-
"serve",
|
25
|
-
"--livereload_port", "35721",
|
26
|
-
"--force_polling",
|
27
|
-
"--host", "0.0.0.0",
|
28
|
-
"--port", "4001",
|
29
|
-
"--future",
|
30
|
-
"--incremental",
|
31
|
-
"--livereload",
|
32
|
-
"--drafts",
|
33
|
-
"--unpublished"
|
34
|
-
],
|
35
|
-
"request": "launch",
|
36
|
-
"restart": true,
|
37
|
-
"showDebuggerOutput": true,
|
38
|
-
"stopOnEntry": true,
|
39
|
-
"type": "Ruby",
|
40
|
-
},
|
41
|
-
{
|
42
|
-
"name": "Debug Local Ruby",
|
43
|
-
"type": "Ruby",
|
44
|
-
"request": "launch",
|
45
|
-
"program": "${workspaceRoot}/main.rb"
|
46
|
-
},
|
47
|
-
{
|
48
|
-
"args": [
|
49
|
-
"-I",
|
50
|
-
"${workspaceRoot}",
|
51
|
-
"${file}"
|
52
|
-
],
|
53
|
-
"cwd": "${workspaceRoot}",
|
54
|
-
"name": "RSpec - active spec file only",
|
55
|
-
"program": "/home/mslinn/.gems/bin/rspec",
|
56
|
-
"showDebuggerOutput": false,
|
57
|
-
"request": "launch",
|
58
|
-
"type": "Ruby",
|
59
|
-
"useBundler": true,
|
60
|
-
},
|
61
|
-
{
|
62
|
-
"args": [
|
63
|
-
"-I",
|
64
|
-
"${workspaceRoot}"
|
65
|
-
],
|
66
|
-
"cwd": "${workspaceRoot}",
|
67
|
-
"name": "RSpec - all",
|
68
|
-
"program": "/home/mslinn/.gems/bin/rspec",
|
69
|
-
"request": "launch",
|
70
|
-
"showDebuggerOutput": false,
|
71
|
-
"type": "Ruby",
|
72
|
-
"useBundler": true,
|
73
|
-
}
|
74
|
-
]
|
75
|
-
}
|
data/.vscode/settings.json
DELETED
data/Gemfile
DELETED
data/Gemfile.lock
DELETED
@@ -1,133 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
jekyll_href (1.0.3)
|
5
|
-
|
6
|
-
GEM
|
7
|
-
remote: https://rubygems.org/
|
8
|
-
specs:
|
9
|
-
addressable (2.8.0)
|
10
|
-
public_suffix (>= 2.0.2, < 5.0)
|
11
|
-
ast (2.4.2)
|
12
|
-
coderay (1.1.3)
|
13
|
-
colorator (1.1.0)
|
14
|
-
concurrent-ruby (1.1.9)
|
15
|
-
debase (0.2.4.1)
|
16
|
-
debase-ruby_core_source (>= 0.10.2)
|
17
|
-
debase-ruby_core_source (0.10.14)
|
18
|
-
diff-lcs (1.5.0)
|
19
|
-
em-websocket (0.5.3)
|
20
|
-
eventmachine (>= 0.12.9)
|
21
|
-
http_parser.rb (~> 0)
|
22
|
-
eventmachine (1.2.7)
|
23
|
-
ffi (1.15.5)
|
24
|
-
forwardable-extended (2.6.0)
|
25
|
-
http_parser.rb (0.8.0)
|
26
|
-
i18n (1.10.0)
|
27
|
-
concurrent-ruby (~> 1.0)
|
28
|
-
jekyll (4.2.2)
|
29
|
-
addressable (~> 2.4)
|
30
|
-
colorator (~> 1.0)
|
31
|
-
em-websocket (~> 0.5)
|
32
|
-
i18n (~> 1.0)
|
33
|
-
jekyll-sass-converter (~> 2.0)
|
34
|
-
jekyll-watch (~> 2.0)
|
35
|
-
kramdown (~> 2.3)
|
36
|
-
kramdown-parser-gfm (~> 1.0)
|
37
|
-
liquid (~> 4.0)
|
38
|
-
mercenary (~> 0.4.0)
|
39
|
-
pathutil (~> 0.9)
|
40
|
-
rouge (~> 3.0)
|
41
|
-
safe_yaml (~> 1.0)
|
42
|
-
terminal-table (~> 2.0)
|
43
|
-
jekyll-sass-converter (2.2.0)
|
44
|
-
sassc (> 2.0.1, < 3.0)
|
45
|
-
jekyll-watch (2.2.1)
|
46
|
-
listen (~> 3.0)
|
47
|
-
kramdown (2.3.1)
|
48
|
-
rexml
|
49
|
-
kramdown-parser-gfm (1.1.0)
|
50
|
-
kramdown (~> 2.0)
|
51
|
-
liquid (4.0.3)
|
52
|
-
listen (3.7.1)
|
53
|
-
rb-fsevent (~> 0.10, >= 0.10.3)
|
54
|
-
rb-inotify (~> 0.9, >= 0.9.10)
|
55
|
-
mercenary (0.4.0)
|
56
|
-
method_source (1.0.0)
|
57
|
-
parallel (1.21.0)
|
58
|
-
parser (3.1.1.0)
|
59
|
-
ast (~> 2.4.1)
|
60
|
-
pathutil (0.16.2)
|
61
|
-
forwardable-extended (~> 2.6)
|
62
|
-
pry (0.14.1)
|
63
|
-
coderay (~> 1.1)
|
64
|
-
method_source (~> 1.0)
|
65
|
-
public_suffix (4.0.6)
|
66
|
-
rainbow (3.1.1)
|
67
|
-
rake (13.0.6)
|
68
|
-
rb-fsevent (0.11.1)
|
69
|
-
rb-inotify (0.10.1)
|
70
|
-
ffi (~> 1.0)
|
71
|
-
regexp_parser (2.2.1)
|
72
|
-
rexml (3.2.5)
|
73
|
-
rouge (3.28.0)
|
74
|
-
rspec (3.11.0)
|
75
|
-
rspec-core (~> 3.11.0)
|
76
|
-
rspec-expectations (~> 3.11.0)
|
77
|
-
rspec-mocks (~> 3.11.0)
|
78
|
-
rspec-core (3.11.0)
|
79
|
-
rspec-support (~> 3.11.0)
|
80
|
-
rspec-expectations (3.11.0)
|
81
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
82
|
-
rspec-support (~> 3.11.0)
|
83
|
-
rspec-mocks (3.11.0)
|
84
|
-
diff-lcs (>= 1.2.0, < 2.0)
|
85
|
-
rspec-support (~> 3.11.0)
|
86
|
-
rspec-support (3.11.0)
|
87
|
-
rubocop (1.18.4)
|
88
|
-
parallel (~> 1.10)
|
89
|
-
parser (>= 3.0.0.0)
|
90
|
-
rainbow (>= 2.2.2, < 4.0)
|
91
|
-
regexp_parser (>= 1.8, < 3.0)
|
92
|
-
rexml
|
93
|
-
rubocop-ast (>= 1.8.0, < 2.0)
|
94
|
-
ruby-progressbar (~> 1.7)
|
95
|
-
unicode-display_width (>= 1.4.0, < 3.0)
|
96
|
-
rubocop-ast (1.16.0)
|
97
|
-
parser (>= 3.1.1.0)
|
98
|
-
rubocop-jekyll (0.12.0)
|
99
|
-
rubocop (~> 1.18.0)
|
100
|
-
rubocop-performance (~> 1.2)
|
101
|
-
rubocop-performance (1.13.3)
|
102
|
-
rubocop (>= 1.7.0, < 2.0)
|
103
|
-
rubocop-ast (>= 0.4.0)
|
104
|
-
rubocop-rake (0.6.0)
|
105
|
-
rubocop (~> 1.0)
|
106
|
-
ruby-debug-ide (0.7.3)
|
107
|
-
rake (>= 0.8.1)
|
108
|
-
ruby-progressbar (1.11.0)
|
109
|
-
safe_yaml (1.0.5)
|
110
|
-
sassc (2.4.0)
|
111
|
-
ffi (~> 1.9)
|
112
|
-
terminal-table (2.0.0)
|
113
|
-
unicode-display_width (~> 1.1, >= 1.1.1)
|
114
|
-
unicode-display_width (1.8.0)
|
115
|
-
|
116
|
-
PLATFORMS
|
117
|
-
x86_64-linux
|
118
|
-
|
119
|
-
DEPENDENCIES
|
120
|
-
bundler
|
121
|
-
debase
|
122
|
-
jekyll
|
123
|
-
jekyll_href!
|
124
|
-
pry
|
125
|
-
rake
|
126
|
-
rspec
|
127
|
-
rubocop
|
128
|
-
rubocop-jekyll
|
129
|
-
rubocop-rake
|
130
|
-
ruby-debug-ide
|
131
|
-
|
132
|
-
BUNDLED WITH
|
133
|
-
2.3.7
|
data/sig/jekyll_href.rbs
DELETED