jekyll_pre 1.3.0 → 1.4.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.
- checksums.yaml +4 -4
- data/.rubocop.yml +2 -1
- data/CHANGELOG.md +16 -0
- data/README.md +51 -5
- data/jekyll_pre.gemspec +2 -0
- data/lib/exec_tag.rb +23 -13
- data/lib/jekyll_pre/version.rb +1 -1
- data/lib/jekyll_pre.rb +8 -4
- data/lib/noselect_tag.rb +1 -1
- data/lib/pre_tag_block.rb +37 -12
- data/spec/exec_spec.rb +34 -0
- data/spec/pre_spec.rb +65 -1
- data/spec/spec_helper.rb +2 -0
- data/spec/status_persistence.txt +13 -5
- metadata +18 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4cc10df37a945ecc8abddce501dd71a176084b9fafdde6e3aa6a48e18c7e4551
|
4
|
+
data.tar.gz: 73fe925e47914475d889e814cae15f8c8331ed7abf2498aaf0a207fd2e0bf7d9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 76a1487e85b498708d27a2258fce364703fe2613253eff69e80475b22303f81f519a8bcedb14671fd62179d53521c80ca9c47d859e838d2bb43060ef58adc236
|
7
|
+
data.tar.gz: 59edd4611b9d6553096d76ce57d518a4e6dd670d2e7f236cfa6ae000c34b269584ecf318705db9bd68d32d9da42590ff71628a7a122107dca8d8e2057e048900
|
data/.rubocop.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,19 @@
|
|
1
|
+
## 1.4.0
|
2
|
+
* Added `dedent` option and config setting.
|
3
|
+
* No longer dies when exec is passed an empty string, or a string with just whitespace.
|
4
|
+
|
5
|
+
## 1.3.2
|
6
|
+
* No longer strips leading spaces from exec result lines.
|
7
|
+
|
8
|
+
## 1.3.1
|
9
|
+
* Generates outer `div` with `jekyll_pre` class, like this:
|
10
|
+
```html
|
11
|
+
<div class="jekyll_pre">
|
12
|
+
... HTML generated by previous versions of `pre` tag here
|
13
|
+
</div>
|
14
|
+
```
|
15
|
+
* Added `wrapper_class` and `wrapper_style` name/value options.
|
16
|
+
|
1
17
|
## 1.3.0
|
2
18
|
* Updated to `jekyll_plugin_support` v0.6.0 for attribution support.
|
3
19
|
|
data/README.md
CHANGED
@@ -15,6 +15,7 @@ This Jekyll plugin provides 3 new Liquid tags that work together:
|
|
15
15
|
- `clear` – Line break after floating HTML elements
|
16
16
|
- `copyButton` – Generate a copy button
|
17
17
|
- `dark` – Dark mode
|
18
|
+
- `dedent` – Remove leading spaces common to all lines, like Ruby's <<~ squiggly heredoc (default is false)
|
18
19
|
- `label='This is a label'` – Apply text above `pre` tag.
|
19
20
|
The `label` parameter value can also be specified in free text.
|
20
21
|
For example, the following produce the same results:
|
@@ -47,14 +48,16 @@ This Jekyll plugin provides 3 new Liquid tags that work together:
|
|
47
48
|
|
48
49
|
- `cd="relative/or/absolute/directory"` - Change to specified directory before executing shell command.
|
49
50
|
Environment variables in the directory path will be expanded.
|
50
|
-
- `no_escape` – Do not HTML escape the result of running the shell command.
|
51
|
-
- `no_strip` – Do not remove leading and trailing whitespace from the result.
|
52
51
|
- `die_if_nonzero` – Set `false` to treat non-zero return codes as non-fatal.
|
53
52
|
Instead of terminating Jekyll with an error message,
|
54
53
|
the message will be displayed as an error by the Jekyll logger,
|
55
54
|
and a red message will appear in place of the result on the web page.
|
56
55
|
- `die_if_error` – Set `false` to treat exceptions generated by this plugin as non-fatal.
|
57
56
|
Instead of terminating Jekyll with an error message, the message will be displayed as an error by the Jekyll logger.
|
57
|
+
- `no_escape` – Do not HTML escape the result of running the shell command.
|
58
|
+
- `no_strip` – Do not remove leading and trailing whitespace from the result.
|
59
|
+
- `wrapper_class` class applied to outer `div`.
|
60
|
+
- `wrapper_style` style applied to outer `div`.
|
58
61
|
|
59
62
|
|
60
63
|
## CSS
|
@@ -62,8 +65,38 @@ See [`demo/assets/css/style.css`](demo/assets/css/style.css) for the CSS declara
|
|
62
65
|
between `/* Start of pre tag css */` and `/* End of pre tag css */`.
|
63
66
|
|
64
67
|
|
68
|
+
## Configuration
|
69
|
+
Default options can be set for the `pre` tag by entries in `_config.yml`.
|
70
|
+
The following demonstrates setting a default value for every possible option:
|
71
|
+
|
72
|
+
```yml
|
73
|
+
pre:
|
74
|
+
class: bg_yellow
|
75
|
+
clear: true
|
76
|
+
dark: true
|
77
|
+
dedent: true
|
78
|
+
highlight: 'Error:.*'
|
79
|
+
label: Shell
|
80
|
+
copyButton: true
|
81
|
+
number: true
|
82
|
+
style: 'font-face: courier'
|
83
|
+
wrapper_class: rounded shadow
|
84
|
+
wrapper_style: 'padding: 2em; border: thin green dashed;'
|
85
|
+
```
|
86
|
+
|
87
|
+
The default values used on [`mslinn.com`](https://www.mslinn.com) are:
|
88
|
+
|
89
|
+
```yml
|
90
|
+
pre:
|
91
|
+
dedent: true
|
92
|
+
label: Shell
|
93
|
+
copyButton: true
|
94
|
+
```
|
95
|
+
|
96
|
+
|
65
97
|
## Additional Information
|
66
|
-
More information is available on
|
98
|
+
More information is available on
|
99
|
+
[Mike Slinn’s website](https://www.mslinn.com/jekyll_plugins/jekyll_pre.html).
|
67
100
|
|
68
101
|
|
69
102
|
## Installation
|
@@ -78,11 +111,24 @@ end
|
|
78
111
|
|
79
112
|
And then execute:
|
80
113
|
|
81
|
-
$ bundle
|
114
|
+
$ bundle
|
82
115
|
|
83
116
|
|
84
117
|
## Usage
|
85
|
-
The following examples are rendered on
|
118
|
+
The following examples are rendered on
|
119
|
+
[Mike Slinn’s website](https://www.mslinn.com/jekyll_plugins/jekyll_pre.html).
|
120
|
+
|
121
|
+
### Example 0
|
122
|
+
<pre data-lt-active="false" class="maxOneScreenHigh copyContainer" id="id110c50d624b4">{% pre dedent %}
|
123
|
+
This line was indented 4 spaces
|
124
|
+
This line was indented 6 spaces
|
125
|
+
This line was indented 4 spaces
|
126
|
+
{% endpre %}</pre>
|
127
|
+
Which renders as:
|
128
|
+
|
129
|
+
<pre data-lt-active="false" class="maxOneScreenHigh copyContainer" id="id377433c30186">This line was indented 4 spaces
|
130
|
+
This line was indented 6 spaces
|
131
|
+
This line was indented 4 spaces</pre>
|
86
132
|
|
87
133
|
### Example 1
|
88
134
|
This example does not generate a copy button and does not demonstrate `noselect`.
|
data/jekyll_pre.gemspec
CHANGED
@@ -1,3 +1,4 @@
|
|
1
|
+
require 'jekyll'
|
1
2
|
require_relative 'lib/jekyll_pre/version'
|
2
3
|
|
3
4
|
Gem::Specification.new do |spec|
|
@@ -33,4 +34,5 @@ Gem::Specification.new do |spec|
|
|
33
34
|
|
34
35
|
spec.add_dependency 'jekyll', '>= 3.5.0'
|
35
36
|
spec.add_dependency 'jekyll_plugin_support', '~> 0.6.0'
|
37
|
+
spec.add_dependency 'rack'
|
36
38
|
end
|
data/lib/exec_tag.rb
CHANGED
@@ -1,7 +1,16 @@
|
|
1
1
|
require 'jekyll_plugin_support'
|
2
|
+
require 'rack/utils'
|
2
3
|
require_relative 'jekyll_pre/version'
|
3
4
|
|
4
|
-
module
|
5
|
+
module JekyllPreModule
|
6
|
+
def self.compress(response, no_strip)
|
7
|
+
result = response.chomp
|
8
|
+
result = result.strip unless no_strip
|
9
|
+
result = result.gsub('\n\n', '<br>\n')
|
10
|
+
result = Rack::Utils.escape_html(result) unless @no_escape
|
11
|
+
result
|
12
|
+
end
|
13
|
+
|
5
14
|
class ExecTag < JekyllSupport::JekyllTag
|
6
15
|
include JekyllPreVersion
|
7
16
|
|
@@ -13,11 +22,18 @@ module ExecTag
|
|
13
22
|
parse_args
|
14
23
|
@original_command = @helper.remaining_markup_original
|
15
24
|
command = JekyllPluginHelper.expand_env @original_command
|
16
|
-
|
25
|
+
if command.strip.empty?
|
26
|
+
msg = "Command is empty on on line #{@line_number} (after front matter) of #{@page['path']}"
|
27
|
+
unless @die_if_error
|
28
|
+
@logger.warn { msg }
|
29
|
+
return ''
|
30
|
+
end
|
31
|
+
raise PreError, msg, []
|
32
|
+
end
|
17
33
|
|
18
34
|
response = run_command(command)
|
19
35
|
response = if @child_status.success?
|
20
|
-
compress(response)
|
36
|
+
ExecTagModule.compress(response, @no_strip)
|
21
37
|
else
|
22
38
|
handle_error(command)
|
23
39
|
end
|
@@ -29,20 +45,13 @@ module ExecTag
|
|
29
45
|
rescue PreError => e
|
30
46
|
raise PreError, e.message, []
|
31
47
|
rescue StandardError => e
|
32
|
-
msg = self.class.remove_html_tags(e.message) +
|
48
|
+
msg = self.class.remove_html_tags(e.message) +
|
49
|
+
" from executing '#{@original_command}' on line #{@line_number} (after front matter) of #{@page['path']}"
|
33
50
|
raise PreError, msg.red, [] if @die_if_error
|
34
51
|
end
|
35
52
|
|
36
53
|
private
|
37
54
|
|
38
|
-
def compress(response)
|
39
|
-
result = response.chomp
|
40
|
-
result = result.strip unless @no_strip
|
41
|
-
result = result.gsub('\n\n', '<br>\n')
|
42
|
-
result = Rack::Utils.escape_html(result) unless @no_escape
|
43
|
-
result
|
44
|
-
end
|
45
|
-
|
46
55
|
def die(msg)
|
47
56
|
msg_no_html = self.class.remove_html_tags(msg)
|
48
57
|
@logger.error("#{@page['path']} - #{msg_no_html}")
|
@@ -87,7 +96,8 @@ module ExecTag
|
|
87
96
|
@child_status = $CHILD_STATUS
|
88
97
|
result
|
89
98
|
rescue StandardError => e
|
90
|
-
msg = self.class.remove_html_tags(e.message) +
|
99
|
+
msg = self.class.remove_html_tags(e.message) +
|
100
|
+
" from executing '#{@original_command}' on line #{@line_number} (after front matter) of #{@page['path']}"
|
91
101
|
raise PreError, msg.red, [] if @die_if_error
|
92
102
|
ensure
|
93
103
|
@child_status = $CHILD_STATUS
|
data/lib/jekyll_pre/version.rb
CHANGED
data/lib/jekyll_pre.rb
CHANGED
@@ -8,10 +8,14 @@ require_relative './pre_tag_block'
|
|
8
8
|
|
9
9
|
PreError = Class.new(Liquid::Error)
|
10
10
|
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
11
|
+
class String
|
12
|
+
# Works like <<~ from Ruby 2.3.0
|
13
|
+
def dedent
|
14
|
+
# Find the margin whitespace on the first line
|
15
|
+
margin = self[/\A\s*/]
|
16
|
+
# Remove margin-sized whitespace from each line
|
17
|
+
gsub(/^\s{#{margin.size}}/, '')
|
18
|
+
end
|
15
19
|
end
|
16
20
|
|
17
21
|
PluginMetaLogger.instance.info { "Loaded #{JekyllPluginPreName::PLUGIN_NAME} v#{JekyllPreVersion::VERSION} plugin." }
|
data/lib/noselect_tag.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'jekyll_plugin_support'
|
2
2
|
require_relative 'jekyll_pre/version'
|
3
3
|
|
4
|
-
module
|
4
|
+
module JekyllPreModule
|
5
5
|
# """\\{% noselect %} or \\{% noselect this all gets copied.
|
6
6
|
# Also, space before the closing percent is signficant %}"""
|
7
7
|
class NoSelectTag < JekyllSupport::JekyllTagNoArgParsing
|
data/lib/pre_tag_block.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'jekyll_plugin_support'
|
2
2
|
require_relative 'jekyll_pre/version'
|
3
3
|
|
4
|
-
module
|
4
|
+
module JekyllPreModule
|
5
5
|
class PreTagBlock < JekyllSupport::JekyllBlock
|
6
6
|
include JekyllPreVersion
|
7
7
|
|
@@ -31,23 +31,48 @@ module PreTagBlock
|
|
31
31
|
result
|
32
32
|
end
|
33
33
|
|
34
|
+
# remove leading blank lines and trailing whitespace
|
35
|
+
def self.remove_surrounding(text)
|
36
|
+
text.gsub(/\A(\s?\n)*/, '').rstrip
|
37
|
+
end
|
38
|
+
|
39
|
+
def option(name)
|
40
|
+
value = @helper.parameter_specified? name
|
41
|
+
return value unless value.nil?
|
42
|
+
|
43
|
+
@pre_config[name] if @pre_config
|
44
|
+
end
|
45
|
+
|
34
46
|
def render_impl(text)
|
35
|
-
text.
|
47
|
+
text = PreTagBlock.remove_surrounding text
|
48
|
+
|
36
49
|
@helper.gem_file __FILE__ # Enables plugin attribution
|
37
50
|
|
38
|
-
@
|
39
|
-
|
40
|
-
@
|
41
|
-
@
|
42
|
-
@
|
43
|
-
@
|
44
|
-
@
|
45
|
-
@label
|
51
|
+
@pre_config = @config['pre']
|
52
|
+
|
53
|
+
@class = option 'class'
|
54
|
+
@clear = option 'clear'
|
55
|
+
@dark = ' dark' if option 'dark'
|
56
|
+
@dedent = option 'dedent'
|
57
|
+
@highlight = option 'highlight'
|
58
|
+
@label = option 'label'
|
59
|
+
@make_copy_button = option 'copyButton'
|
60
|
+
@number_lines = option 'number'
|
61
|
+
@style = option 'style'
|
62
|
+
@wrapper_class = option 'wrapper_class'
|
63
|
+
@wrapper_style = option 'wrapper_style'
|
64
|
+
|
65
|
+
@class = @class ? " #{@class}" : ''
|
66
|
+
@style = @style ? " style='#{@style}'" : ''
|
67
|
+
@wrapper_class = @wrapper_class ? " #{@wrapper_class}" : ''
|
68
|
+
@wrapper_style = @wrapper_style ? " style='#{@wrapper_style}'" : ''
|
46
69
|
|
47
70
|
# If a label was specified, use it, otherwise concatenate any dangling parameters and use that as the label
|
48
71
|
@label ||= @helper.argv.join(' ')
|
49
72
|
|
50
73
|
@logger.debug { "@make_copy_button = '#{@make_copy_button}'; @label = '#{@label}'" }
|
74
|
+
|
75
|
+
text = text.dedent if @dedent
|
51
76
|
make_pre(text)
|
52
77
|
end
|
53
78
|
|
@@ -62,8 +87,6 @@ module PreTagBlock
|
|
62
87
|
label_clear = ' clear'
|
63
88
|
end
|
64
89
|
end
|
65
|
-
@class = @class ? " #{@class}" : ''
|
66
|
-
@style = @style ? " style='#{@style}'" : ''
|
67
90
|
dark_label = ' darkLabel' if @dark
|
68
91
|
@label = if @label.to_s.empty?
|
69
92
|
''
|
@@ -81,9 +104,11 @@ module PreTagBlock
|
|
81
104
|
pre_content = "#{copy_button}#{content}"
|
82
105
|
attribution = @helper.attribute if @helper.attribution
|
83
106
|
<<~END_OUTPUT
|
107
|
+
<div class="jekyll_pre#{@wrapper_class}" #{@wrapper_style}>
|
84
108
|
#{@label}
|
85
109
|
<pre data-lt-active='false' class='#{classes}'#{@style} id='#{pre_id}'>#{pre_content}</pre>
|
86
110
|
#{attribution}
|
111
|
+
</div>
|
87
112
|
END_OUTPUT
|
88
113
|
end
|
89
114
|
|
data/spec/exec_spec.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
require_relative '../lib/jekyll_pre'
|
2
|
+
|
3
|
+
module ExecTagSpec
|
4
|
+
RSpec.describe(JekyllPreModule) do
|
5
|
+
it 'strips properly' do
|
6
|
+
content = <<~END_CONTENT
|
7
|
+
Line 1
|
8
|
+
Line 2
|
9
|
+
Line 3
|
10
|
+
Line 4
|
11
|
+
Line 5
|
12
|
+
Line 6
|
13
|
+
Line 7
|
14
|
+
Line 8
|
15
|
+
Line 9
|
16
|
+
Line 10
|
17
|
+
END_CONTENT
|
18
|
+
actual = described_class.compress content, false
|
19
|
+
expected = <<~END_CONTENT
|
20
|
+
Line 1
|
21
|
+
Line 2
|
22
|
+
Line 3
|
23
|
+
Line 4
|
24
|
+
Line 5
|
25
|
+
Line 6
|
26
|
+
Line 7
|
27
|
+
Line 8
|
28
|
+
Line 9
|
29
|
+
Line 10
|
30
|
+
END_CONTENT
|
31
|
+
expect(expected.strip).to eq(actual)
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
data/spec/pre_spec.rb
CHANGED
@@ -4,7 +4,71 @@ require 'key_value_parser'
|
|
4
4
|
require 'shellwords'
|
5
5
|
require_relative '../lib/jekyll_pre'
|
6
6
|
|
7
|
-
RSpec.describe(PreTagBlock) do
|
7
|
+
RSpec.describe(JekyllPreModule::PreTagBlock) do
|
8
|
+
it 'dedents content lines' do
|
9
|
+
content = <<-END_CONTENT
|
10
|
+
Line 1
|
11
|
+
Line 2
|
12
|
+
Line 3
|
13
|
+
Line 4
|
14
|
+
Line 5
|
15
|
+
Line 6
|
16
|
+
Line 7
|
17
|
+
Line 8
|
18
|
+
Line 9
|
19
|
+
Line 10
|
20
|
+
END_CONTENT
|
21
|
+
expected = <<~END_CONTENT
|
22
|
+
Line 1
|
23
|
+
Line 2
|
24
|
+
Line 3
|
25
|
+
Line 4
|
26
|
+
Line 5
|
27
|
+
Line 6
|
28
|
+
Line 7
|
29
|
+
Line 8
|
30
|
+
Line 9
|
31
|
+
Line 10
|
32
|
+
END_CONTENT
|
33
|
+
actual = content.dedent
|
34
|
+
expect(actual).to eq(expected)
|
35
|
+
end
|
36
|
+
|
37
|
+
it 'removes surrounding whitespace' do
|
38
|
+
text = <<-END_CONTENT
|
39
|
+
|
40
|
+
|
41
|
+
Line 1
|
42
|
+
Line 2
|
43
|
+
Line 3
|
44
|
+
Line 4
|
45
|
+
Line 5
|
46
|
+
Line 6
|
47
|
+
Line 7
|
48
|
+
Line 8
|
49
|
+
Line 9
|
50
|
+
Line 10
|
51
|
+
|
52
|
+
|
53
|
+
END_CONTENT
|
54
|
+
actual = described_class.remove_surrounding(text)
|
55
|
+
|
56
|
+
expected = <<-END_CONTENT
|
57
|
+
Line 1
|
58
|
+
Line 2
|
59
|
+
Line 3
|
60
|
+
Line 4
|
61
|
+
Line 5
|
62
|
+
Line 6
|
63
|
+
Line 7
|
64
|
+
Line 8
|
65
|
+
Line 9
|
66
|
+
Line 10
|
67
|
+
END_CONTENT
|
68
|
+
|
69
|
+
expect(actual).to eq(expected.rstrip)
|
70
|
+
end
|
71
|
+
|
8
72
|
it 'parses arguments' do
|
9
73
|
argv = Shellwords.split 'number copyButton shell'
|
10
74
|
options = KeyValueParser.new.parse(argv)
|
data/spec/spec_helper.rb
CHANGED
data/spec/status_persistence.txt
CHANGED
@@ -1,5 +1,13 @@
|
|
1
|
-
example_id
|
2
|
-
|
3
|
-
./spec/
|
4
|
-
./spec/pre_spec.rb[1:
|
5
|
-
./spec/pre_spec.rb[1:
|
1
|
+
example_id | status | run_time |
|
2
|
+
--------------------------------------------------------------- | ------ | --------------- |
|
3
|
+
./spec/exec_spec.rb[1:1] | passed | 0.00377 seconds |
|
4
|
+
./spec/pre_spec.rb[1:1] | passed | 0.00014 seconds |
|
5
|
+
./spec/pre_spec.rb[1:2] | passed | 0.00351 seconds |
|
6
|
+
./spec/pre_spec.rb[1:3] | passed | 0.00016 seconds |
|
7
|
+
./spec/pre_spec.rb[1:4] | passed | 0.00011 seconds |
|
8
|
+
/mnt/_/work/jekyll/my_plugins/jekyll_pre/spec/exec_spec.rb[1:1] | passed | 0.00457 seconds |
|
9
|
+
/mnt/_/work/jekyll/my_plugins/jekyll_pre/spec/pre_spec.rb[1:1] | passed | 0.00326 seconds |
|
10
|
+
/mnt/_/work/jekyll/my_plugins/jekyll_pre/spec/pre_spec.rb[1:2] | passed | 0.00067 seconds |
|
11
|
+
/mnt/_/work/jekyll/my_plugins/jekyll_pre/spec/pre_spec.rb[1:3] | passed | 0.00362 seconds |
|
12
|
+
/mnt/_/work/jekyll/my_plugins/jekyll_pre/spec/pre_spec.rb[1:4] | passed | 0.00033 seconds |
|
13
|
+
/mnt/_/work/jekyll/my_plugins/jekyll_pre/spec/pre_spec.rb[1:5] | passed | 0.00083 seconds |
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll_pre
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Slinn
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-05-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -38,6 +38,20 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: 0.6.0
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rack
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
41
55
|
description: 'Jekyll tags pre and noselect, for HTML <pre/> tag, prompts and unselectable
|
42
56
|
text. Can number lines.
|
43
57
|
|
@@ -59,6 +73,7 @@ files:
|
|
59
73
|
- lib/jekyll_pre/version.rb
|
60
74
|
- lib/noselect_tag.rb
|
61
75
|
- lib/pre_tag_block.rb
|
76
|
+
- spec/exec_spec.rb
|
62
77
|
- spec/pre_spec.rb
|
63
78
|
- spec/spec_helper.rb
|
64
79
|
- spec/status_persistence.txt
|
@@ -95,6 +110,7 @@ specification_version: 4
|
|
95
110
|
summary: Jekyll tags pre and noselect, for HTML <pre/> tag, prompts and unselectable
|
96
111
|
text. Can number lines.
|
97
112
|
test_files:
|
113
|
+
- spec/exec_spec.rb
|
98
114
|
- spec/pre_spec.rb
|
99
115
|
- spec/spec_helper.rb
|
100
116
|
- spec/status_persistence.txt
|