jekyll-spaceship 0.7.0 → 0.7.1

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: 38113b9fb933fde7dbf9a201839d3529f22e27687baa2c8e5768097b47eb7eef
4
- data.tar.gz: acb2c8d069864444b6d15ad235c13322e9a817ebbab83e8eab9058060979c256
3
+ metadata.gz: 38acd43c5d713728eb8beefc21a41ccff0404503138429c5fc695d5a92b0fbb5
4
+ data.tar.gz: aa0e6b588b3f778ef332ec83604ba26a3d238de34bfb458a7f85d1c3b006c0f5
5
5
  SHA512:
6
- metadata.gz: 1ae51763f919f940079fe169d7c05889a234f69a42d9369cce5858670605a3b6bb88839162d4ce95ce8cc07d8cd035228069f1bc4e189bad3ca41ee13623cc85
7
- data.tar.gz: 2f5dda310b60fd8d69460299a81844aa791fd0877e7cf8d9d58556f4a8e780996aef7512924fe5786080379dc5be5a33d8f67c55de65fa7c0a2c2070283ce2f4
6
+ metadata.gz: 53ad3ff1458d8b5a1cde457ec7fa34672680f334fddb1613ebec356a461f0c7217faea14e361f0e022b3dceb7789d0ff7fa5d069d95c190343008d9485630f76
7
+ data.tar.gz: 97606894a42e2fa2fc34e66fb9b3cbb6013587696ed70bf8153a9b5bd2cf81f6444ee9337d13d672f3c3afe3c504039fd754b51deee9324c3df6287bee7c6b53
data/README.md CHANGED
@@ -760,8 +760,8 @@ See the [Gemoji](https://github.com/github/gemoji) documentation for generating
760
760
  ### 8. Modifying Element Usage
761
761
 
762
762
  It allows us to modify elements via `CSS3 selectors`. Through it you can easily
763
- modify the attributes of a element tag, replace the child nodes and so on, it's
764
- very flexible, but here is example usage for modifying a document:
763
+ modify the attributes of an element tag, replace the children nodes and so on,
764
+ it's very flexible, but here is example usage for modifying a document:
765
765
 
766
766
  ```yml
767
767
  # Here is a comprehensive example
@@ -774,7 +774,7 @@ jekyll-spaceship:
774
774
  props: # Replace element properties
775
775
  title: Good image # Add a title attribute
776
776
  src: ['(^.*$)', '\0?a=123'] # Add query string to src attribute by regex pattern
777
- style: # Add style attribute (String Style)
777
+ style: # Add style attribute (Hash Style)
778
778
  color: red
779
779
  font-size: '1.2em'
780
780
  children: # Add children to the element
@@ -789,18 +789,60 @@ jekyll-spaceship:
789
789
  children: # Add nested chidren nodes
790
790
  - "<span>Jekyll</span>" # First child node (String Style)
791
791
  - name: span # Second child node (Hash Style)
792
- props: # Modify child node (Hash Style)
792
+ props: # Add attributes to child node (Hash Style)
793
793
  prop1: "a"
794
794
  prop2: "b"
795
795
  prop3: "c"
796
796
  children: "<b>Yap!</b>" # Add children nodes (String Style)
797
797
  - # Last empty for adding before the first child node
798
798
  - a.link: '<a href="//t.com">Link</a>' # Replace all `a.link` tags (String Style)
799
- - h1#title: # Replace `h1#title` tags (Hash Style)
799
+ - 'h1#title': # Replace `h1#title` tags (Hash Style)
800
800
  children: I'm a title! # Replace inner html to new text
801
-
802
801
  ```
803
802
 
803
+ #### Example 1
804
+
805
+ Automatically adds a `target="_blank" rel="noopener noreferrer"` attribute to all external links in Jekyll's content.
806
+
807
+ ```yml
808
+ jekyll-spaceship:
809
+ element-processor:
810
+ css:
811
+ - a: # Replce all `a` tags
812
+ props:
813
+ class: ['(^.*$)', '\0 ext-link'] # Add `ext-link` to class by regex pattern
814
+ target: _blank # Replace `target` value to `_blank`
815
+ rel: noopener noreferrer # Replace `rel` value to `noopener noreferrer`
816
+ ```
817
+
818
+ #### Example 2
819
+
820
+ Automatically adds `loading="lazy"` to `img` and `iframe` tags to natively load lazily.
821
+ [Browser support](https://caniuse.com/#feat=loading-lazy-attr) is growing. If a browser does not support the `loading` attribute, it will load the resource just like it would normally.
822
+
823
+ ```yml
824
+ jekyll-spaceship:
825
+ element-processor:
826
+ css:
827
+ - a: # Replce all `a` tags
828
+ props: #
829
+ loading: lazy # Replace `lading` value to `lazy`
830
+ ```
831
+
832
+ In case you want to prevent loading some images/iframes lazily, add
833
+ `loading="eager"` to their tags. This might be useful to prevent flickering of
834
+ images during navigation (e.g. the site's logo).
835
+
836
+ See the following examples to prevent lazy loading.
837
+
838
+ ```yml
839
+ jekyll-spaceship:
840
+ element-processor:
841
+ css:
842
+ - a: # Replce all `a` tags
843
+ props: #
844
+ loading: eager # Replace `loading` value to `eager`
845
+ ```
804
846
 
805
847
 
806
848
  ## Credits
@@ -809,6 +851,8 @@ jekyll-spaceship:
809
851
  - [MultiMarkdown](https://fletcher.github.io/MultiMarkdown-6) - Lightweight markup processor to produce HTML, LaTeX, and more.
810
852
  - [markdown-it-multimd-table](https://github.com/RedBug312/markdown-it-multimd-table) - Multimarkdown table syntax plugin for markdown-it markdown parser.
811
853
  - [jmoji](https://github.com/jekyll/jemoji) - GitHub-flavored emoji plugin for Jekyll.
854
+ - [jekyll-target-blank](https://github.com/keithmifsud/jekyll-target-blank) - Automatically opens external links in a new browser for Jekyll Pages, Posts and Docs.
855
+ - [jekyll-loading-lazy](https://github.com/gildesmarais/jekyll-loading-lazy) - Automatically adds loading="lazy" to img and iframe tags to natively load lazily.
812
856
 
813
857
  ## Contributing
814
858
 
@@ -38,10 +38,10 @@ module Jekyll::Spaceship
38
38
  @@store[section] = deep_merge(default, @@store[section])
39
39
  end
40
40
 
41
- def self.load(filename = '_config.yml')
41
+ def self.load(config = self.site_config)
42
42
  config = deep_merge(
43
43
  { CONFIG_NAME => DEFAULT_CONFIG },
44
- YAML.load_file(File.expand_path(filename))
44
+ config
45
45
  )[CONFIG_NAME]
46
46
  @@store = config
47
47
  self.use_processors(config)
@@ -52,5 +52,9 @@ module Jekyll::Spaceship
52
52
  Register.use processor
53
53
  end
54
54
  end
55
+
56
+ def self.site_config
57
+ Jekyll.sites.first.config
58
+ end
55
59
  end
56
60
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Jekyll
4
4
  module Spaceship
5
- VERSION = "0.7.0"
5
+ VERSION = "0.7.1"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-spaceship
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - jeffreytse
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-14 00:00:00.000000000 Z
11
+ date: 2020-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll