jekyll_pre 1.4.7 → 1.4.8

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: 9a156945af855f2ce50bb42141c6a64ce4aaa61bd75cf9d220f00587e362c213
4
- data.tar.gz: 2ccb2e202e9100ca00b4e5f166bcfd5f7a02ef7c2150b091e5e5bee7ea41468b
3
+ metadata.gz: 485abe28bdb36d30646e8213ac2efdc676137aedf5338110dbf03afd298f6c26
4
+ data.tar.gz: 8b968700fa134af7785c4ae7eb83386231c8a8a43db80aa7a4d5a1df06707850
5
5
  SHA512:
6
- metadata.gz: fcaecd9c72063b080b54803bd5276b82e41e36f1e1d18b7d81bae79b29b59a94457ccecf5f45ad225e61368053c3c282f6956c3eb659f3bcaa873c1afcece9bb
7
- data.tar.gz: f37962b1b94b63e2bc53fc2363d20054fc64467f9ad470ed227e949b4850142b8c29b273c1e41dc5a1ed4725bf62cb9d298d3aca686fe4eeef115560442326d6
6
+ metadata.gz: fc4b43a1640ebd2b02c04a149cc463e86fb06d68ad676d8a9647f9b7a71ca3ac695ae216e2843dffcae96c1c57f3883241852990cb7fa6dd65d8d2120b558a2f
7
+ data.tar.gz: 73f99f9496fb90edb52e486b85426070906139cf5143e9cfeed1a954aee6f1247ba64e709f31d88cabf1aecccfc3bab1a9299cd3b5357bc8ce724581326fb9cf
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Change Log
2
2
 
3
+ ## 1.4.8
4
+
5
+ * `id` option added.
6
+
7
+
3
8
  ## 1.4.7
4
9
 
5
10
  * `dark` and `bg_yellow` css tags now have black text.
data/README.md CHANGED
@@ -1,79 +1,89 @@
1
1
  # Jekyll_pre [![Gem Version](https://badge.fury.io/rb/jekyll_pre.svg)](https://badge.fury.io/rb/jekyll_pre)
2
2
 
3
- This Jekyll plugin provides 3 new Liquid tags that work together:
3
+ This Jekyll plugin provides 3 new Liquid tags that work together: `pre`, `noselect` and `exec`.
4
4
 
5
- * A `pre` block tag that can be displayed various ways.
5
+ ## Provided Tags
6
6
 
7
- ```html
8
- {% pre [Options] [free text label] %}
9
- Contents of pre tag
10
- {% endpre %}
11
- ```
7
+ ### `Pre`
8
+
9
+ A `pre` block tag can be displayed various ways.
10
+
11
+ ```html
12
+ {% pre [Options] [free text label] %}
13
+ Contents of pre tag
14
+ {% endpre %}
15
+ ```
12
16
 
13
- `Options` are:
17
+ `Options` are:
14
18
 
15
- - `class="class1 class2"` – Apply CSS classes
16
- - `clear` – Line break after floating HTML elements
17
- - `copyButton` – Generate a copy button
18
- - `dark` – Dark mode
19
- - `dedent` &ndash; Remove leading spaces common to all lines, like Ruby's <<~ squiggly heredoc (default is false)
20
- - `label='This is a label'` &ndash; Apply text above `pre` tag.
21
- The `label` parameter value can also be specified in free text.
22
- For example, the following produce the same results:
19
+ * `class="class1 class2"` &ndash; Apply CSS classes
20
+ * `clear` &ndash; Line break after floating HTML elements
21
+ * `copyButton` &ndash; Generate a copy button
22
+ * `dark` &ndash; Dark mode
23
+ * `dedent` &ndash; Remove leading spaces common to all lines, like Ruby's <<~ squiggly heredoc (default is false)
24
+ * `id` &dash; Generate an `id` with the given value for the generated output.
25
+ * `label='This is a label'` &ndash; Apply text above `pre` tag.
26
+ The `label` parameter value can also be specified in free text.
27
+ For example, the following produce the same results:
23
28
 
24
- - {% pre label="This is a label" %}<br>Contents of pre tag<br>{% endpre %}
29
+ * {% pre label="This is a label" %}<br>Contents of pre tag<br>{% endpre %}
25
30
 
26
- - {% pre This is a label %}<br>Contents of pre tag<br>{% endpre %}
27
- - `number` &ndash; Number the lines
28
- - `shell` &ndash; Equivalent to `label='Shell'`
29
- - `style` &ndash; Apply inline CSS styles
31
+ * {% pre This is a label %}<br>Contents of pre tag<br>{% endpre %}
32
+ * `number` &ndash; Number the lines
33
+ * `shell` &ndash; Equivalent to `label='Shell'`
34
+ * `style` &ndash; Apply inline CSS styles
30
35
 
31
- The generated &lt;pre>&lt;/pre> tag has an `data-lt-active="false"` attribute, so
32
- [LanguageTool](https://forum.languagetool.org/t/avoid-spell-check-on-certain-html-inputs-manually/3944)
33
- does not check the spelling or grammar of the contents.
36
+ The generated &lt;pre>&lt;/pre> tag has an `data-lt-active="false"` attribute, so
37
+ [LanguageTool](https://forum.languagetool.org/t/avoid-spell-check-on-certain-html-inputs-manually/3944)
38
+ does not check the spelling or grammar of the contents.
34
39
 
35
- * A `noselect` tag that can renders HTML content passed to it unselectable,
36
- and generates a <code>$</code> prompt if no content is provided.
37
40
 
38
- ```html
39
- {% pre %}
40
- {% noselect [optional text string, defaults to $]%}Command
41
- {% noselect unselectable output goes here %}
42
- {% endpre %}
43
- ```
41
+ ### `Noselect`
44
42
 
45
- * An `exec` tag that executes shell commands and incorporates the command and its output into the content of the `pre` tag.
46
- Environment variables are evaluated,
47
- output data is escaped, whitespace is condensed, and wrapped in the same `unselectable` class as does `unselectable`.
43
+ A `noselect` tag renders HTML content passed to it unselectable,
44
+ and generates a <code>$</code> prompt if no content is provided.
45
+
46
+ ```html
47
+ {% pre %}
48
+ {% noselect [optional text string, defaults to $]%}Command
49
+ {% noselect unselectable output goes here %}
50
+ {% endpre %}
51
+ ```
52
+
53
+ ### `Exec`
54
+
55
+ An `exec` tag executes shell commands and incorporates the command and its output into the content of the `pre` tag.
56
+ Environment variables are evaluated,
57
+ output data is escaped, whitespace is condensed, and wrapped in the same `unselectable` class as does `unselectable`.
58
+
59
+ ```html
60
+ {% exec [Options] [shell command] %}
61
+ ```
62
+
63
+ `Options` are:
64
+
65
+ * `cd="relative/or/absolute/directory"` - Change to specified directory before executing shell command.
66
+ Environment variables in the directory path will be expanded.
67
+ * `die_if_nonzero` – Set `false` to treat non-zero return codes as non-fatal.
68
+ Instead of terminating Jekyll with an error message,
69
+ the message will be displayed as an error by the Jekyll logger,
70
+ and a red message will appear in place of the result on the web page.
71
+ * `die_if_error` – Set `false` to treat exceptions generated by this plugin as non-fatal.
72
+ Instead of terminating Jekyll with an error message, the message will be displayed as an error by the Jekyll logger.
73
+ * `no_escape` – Do not HTML escape the result of running the shell command.
74
+ * `no_stderr` - Discard STDERR output.
75
+ This is helpful for suppressing annoying `groff` error messages that are emitted when the `exec` subcommand runs `man`.
76
+ Use it like this:
48
77
 
49
78
  ```html
50
- {% exec [Options] [shell command] %}
79
+ {% pre copyButton dedent shell %}
80
+ {% noselect %}{% exec no_stderr man netplan %}
81
+ {% endpre %}
51
82
  ```
52
83
 
53
- `Options` are:
54
-
55
- - `cd="relative/or/absolute/directory"` - Change to specified directory before executing shell command.
56
- Environment variables in the directory path will be expanded.
57
- - `die_if_nonzero` – Set `false` to treat non-zero return codes as non-fatal.
58
- Instead of terminating Jekyll with an error message,
59
- the message will be displayed as an error by the Jekyll logger,
60
- and a red message will appear in place of the result on the web page.
61
- - `die_if_error` – Set `false` to treat exceptions generated by this plugin as non-fatal.
62
- Instead of terminating Jekyll with an error message, the message will be displayed as an error by the Jekyll logger.
63
- - `no_escape` – Do not HTML escape the result of running the shell command.
64
- - `no_stderr` - Discard STDERR output.
65
- This is helpful for suppressing annoying `groff` error messages that are emitted when the `exec` subcommand runs `man`.
66
- Use it like this:
67
-
68
- ```html
69
- {% pre copyButton dedent shell %}
70
- {% noselect %}{% exec no_stderr man netplan %}
71
- {% endpre %}
72
- ```
73
-
74
- - `no_strip` – Do not remove leading and trailing whitespace from the result.
75
- - `wrapper_class` class applied to outer `div`.
76
- - `wrapper_style` style applied to outer `div`.
84
+ * `no_strip` – Do not remove leading and trailing whitespace from the result.
85
+ * `wrapper_class` class applied to outer `div`.
86
+ * `wrapper_style` style applied to outer `div`.
77
87
 
78
88
 
79
89
  ## Keyword Options
@@ -1,3 +1,3 @@
1
1
  module JekyllPreVersion
2
- VERSION = '1.4.7'.freeze
2
+ VERSION = '1.4.8'.freeze
3
3
  end
data/lib/pre_tag_block.rb CHANGED
@@ -56,6 +56,7 @@ module JekyllPreModule
56
56
  @dark = ' dark' if option 'dark'
57
57
  @dedent = option 'dedent'
58
58
  @highlight = option 'highlight'
59
+ @id = option 'id'
59
60
  @make_copy_button = option 'copyButton'
60
61
  @number_lines = option 'number'
61
62
  @style = option 'style'
@@ -106,7 +107,7 @@ module JekyllPreModule
106
107
  pre_content = "#{copy_button}#{content}"
107
108
  attribution = @helper.attribute if @helper.attribution
108
109
  <<~END_OUTPUT
109
- <div class="jekyll_pre#{@wrapper_class}" #{@wrapper_style}>
110
+ <div class="jekyll_pre#{@wrapper_class}" #{@wrapper_style}#{" id='#{@id}'" if @id}>
110
111
  #{@label}
111
112
  <pre data-lt-active='false' class='#{classes}'#{@style} id='#{pre_id}'>#{pre_content}</pre>
112
113
  #{attribution}
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.7
4
+ version: 1.4.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Slinn
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-08-22 00:00:00.000000000 Z
11
+ date: 2024-09-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll