jekyll_pre 1.4.7 → 1.4.8

Sign up to get free protection for your applications and to get access to all the features.
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