jekyll_pre 3.0.0 → 3.0.1

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
2
  SHA256:
3
- metadata.gz: bb07e5404d35bef0ce4d8dae019cb0e9748bdcd3fd95a12ef0f12a8c0a280b33
4
- data.tar.gz: b59168c96aafb88596f614fd3526149ca757ee56cd458c60428ffeb24bdb2cdb
3
+ metadata.gz: f617053cafdd4a2b9b0fb9e3a53afab3bce701bfd467ea81d2d906803768cb35
4
+ data.tar.gz: c1f16b3322eed5c5cf14aa06e573a0f693a7f34f3518ca4b52046a84044d4bc6
5
5
  SHA512:
6
- metadata.gz: c080c8d60a7add482bad178e03c4a0ab990bc81ed1276c32b980e208296f1a31361a0a4cf5c0ea7e0259a412faf9e2b6e4d25cdb62ba0ab4aaafe2e1ee8ca424
7
- data.tar.gz: 8aa6c2f142d601b155088b227e7486e11fd2f3e9b0509b69d6552d3194bb392a2d81c118b62044a6b9e7b8351ec17fc45f1d116daa983c90d5cb9c10cd89314c
6
+ metadata.gz: 1b5b3ef9b636c6b6c98642acea8b80209527e28d16edc88b161752df940b8d58f161d75146fae8c12902d3b030a0c2e9eeb1d9470d9d5db46f21c2b5269d09ae
7
+ data.tar.gz: 6827f1aef4cf4b8e4c5904dd5b090a7f58e1b0e38604d8a2872c80b3dbdb85dc06bd7dd95cedfd5fa3275535f9649d56fb6357b279bd5c10847a79aeb1cbb17f
data/CHANGELOG.md CHANGED
@@ -1,6 +1,12 @@
1
1
  # Change Log
2
2
 
3
- ## 3.0.0 / In process
3
+ ## 3.0.1 / 2025-03-28
4
+
5
+ * The `number` option now accepts an optional starting value.
6
+ This option can still be used as a keyword option.
7
+
8
+
9
+ ## 3.0.0 / 2025-03-06
4
10
 
5
11
  * Numbered as v3.0.0 to match the `jekyll_plugin_support` version number.
6
12
  * Now requires [Jekyll 4.4.1](https://jekyllrb.com/news/2025/01/29/jekyll-4-4-1-released/) or later,
data/README.md CHANGED
@@ -29,7 +29,7 @@ Contents of pre tag
29
29
  * {% pre label="This is a label" %}<br>Contents of pre tag<br>{% endpre %}
30
30
 
31
31
  * {% pre This is a label %}<br>Contents of pre tag<br>{% endpre %}
32
- * `number` &ndash; Number the lines
32
+ * `number` &ndash; Number the lines with an optional starting value (defaults to 1)
33
33
  * `shell` &ndash; Equivalent to `label='Shell'`
34
34
  * `style` &ndash; Apply inline CSS styles
35
35
 
@@ -1,3 +1,3 @@
1
1
  module JekyllPreVersion
2
- VERSION = '3.0.0'.freeze
2
+ VERSION = '3.0.1'.freeze
3
3
  end
data/lib/jekyll_pre.rb CHANGED
@@ -2,9 +2,9 @@ module JekyllPluginPreName
2
2
  PLUGIN_NAME = 'jekyll_pre'.freeze
3
3
  end
4
4
 
5
- require_relative './exec_tag'
6
- require_relative './noselect_tag'
7
- require_relative './pre_tag_block'
5
+ require_relative 'exec_tag'
6
+ require_relative 'noselect_tag'
7
+ require_relative 'pre_tag_block'
8
8
 
9
9
  PreError = Class.new(Liquid::Error)
10
10
 
data/lib/pre_tag_block.rb CHANGED
@@ -18,13 +18,22 @@ module JekyllPreModule
18
18
  "#{@@prefix}'##{pre_id}'#{@@suffix}"
19
19
  end
20
20
 
21
- def self.number_content(content)
21
+ def self.positive_int?(x)
22
+ value = begin
23
+ Integer(x)
24
+ rescue StandardError
25
+ false
26
+ end
27
+ value.is_a?(Integer) && value.positive?
28
+ end
29
+
30
+ def self.number_content(content, start_value)
22
31
  lines = content.split("\n")
23
32
  digits = lines.length.to_s.length
24
- i = 0
33
+ i = PreTagBlock.positive_int?(start_value) ? start_value.to_i : 1
25
34
  numbered_content = lines.map do |line|
26
- i += 1
27
35
  number = i.to_s.rjust(digits, ' ')
36
+ i += 1
28
37
  "<span class='unselectable numbered_line'> #{number}: </span>#{line}"
29
38
  end
30
39
  result = numbered_content.join("\n")
@@ -101,7 +110,7 @@ module JekyllPreModule
101
110
  pre_id = "id#{SecureRandom.hex(6)}"
102
111
  copy_button = @make_copy_button ? PreTagBlock.make_copy_button(pre_id) : ''
103
112
  content = PreTagBlock.highlight(content, @highlight) if @highlight
104
- content = PreTagBlock.number_content(content) if @number_lines
113
+ content = PreTagBlock.number_content(content, @number_lines) if @number_lines
105
114
 
106
115
  classes = "maxOneScreenHigh copyContainer#{@dark}#{pre_clear}#{@class}"
107
116
  pre_content = "#{copy_button}#{content}"
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll_pre
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0
4
+ version: 3.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Slinn
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-03-06 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: jekyll
@@ -90,8 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
90
89
  - !ruby/object:Gem::Version
91
90
  version: '0'
92
91
  requirements: []
93
- rubygems_version: 3.5.22
94
- signing_key:
92
+ rubygems_version: 3.6.9
95
93
  specification_version: 4
96
94
  summary: Jekyll tags pre and noselect, for HTML <pre/> tag, prompts and unselectable
97
95
  text. Can number lines.