jekyll-favicon 0.2.9 → 1.0.0.pre.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/.devcontainer/Dockerfile +20 -0
  3. data/.devcontainer/devcontainer.json +35 -0
  4. data/.github/PULL_REQUEST_TEMPLATE.md +4 -4
  5. data/.github/workflows/gem-push.yml +3 -3
  6. data/.github/workflows/test.yml +38 -0
  7. data/.gitignore +5 -0
  8. data/CHANGELOG.md +21 -0
  9. data/Gemfile +2 -0
  10. data/README.md +74 -24
  11. data/Rakefile +9 -7
  12. data/bin/console +1 -0
  13. data/config/jekyll/favicon.yml +115 -0
  14. data/config/jekyll/favicon/static_file.yml +3 -0
  15. data/config/jekyll/favicon/static_file/convertible.yml +42 -0
  16. data/config/jekyll/favicon/static_file/mutable.yml +22 -0
  17. data/config/jekyll/favicon/static_file/referenceable.yml +15 -0
  18. data/config/jekyll/favicon/static_file/sourceable.yml +3 -0
  19. data/config/jekyll/favicon/static_file/taggable.yml +22 -0
  20. data/gemfiles/jekyll36.gemfile +6 -0
  21. data/gemfiles/jekyll37.gemfile +6 -0
  22. data/gemfiles/jekyll38.gemfile +6 -0
  23. data/gemfiles/jekyll39.gemfile +6 -0
  24. data/gemfiles/jekyll40.gemfile +6 -0
  25. data/gemfiles/jekyll41.gemfile +6 -0
  26. data/gemfiles/jekyll42.gemfile +6 -0
  27. data/jekyll-favicon.gemspec +8 -8
  28. data/lib/jekyll-favicon.rb +7 -14
  29. data/lib/jekyll/favicon.rb +19 -13
  30. data/lib/jekyll/favicon/configuration.rb +73 -0
  31. data/lib/jekyll/favicon/configuration/defaults.rb +49 -0
  32. data/lib/jekyll/favicon/generator.rb +11 -84
  33. data/lib/jekyll/favicon/hooks.rb +12 -10
  34. data/lib/jekyll/favicon/static_data_file.rb +17 -0
  35. data/lib/jekyll/favicon/static_file.rb +97 -0
  36. data/lib/jekyll/favicon/static_file/convertible.rb +118 -0
  37. data/lib/jekyll/favicon/static_file/mutable.rb +81 -0
  38. data/lib/jekyll/favicon/static_file/referenceable.rb +22 -0
  39. data/lib/jekyll/favicon/static_file/sourceable.rb +73 -0
  40. data/lib/jekyll/favicon/static_file/taggable.rb +59 -0
  41. data/lib/jekyll/favicon/static_graphic_file.rb +21 -0
  42. data/lib/jekyll/favicon/tag.rb +14 -16
  43. data/lib/jekyll/favicon/utils.rb +24 -0
  44. data/lib/jekyll/favicon/utils/configuration/compact.rb +61 -0
  45. data/lib/jekyll/favicon/utils/configuration/merge.rb +63 -0
  46. data/lib/jekyll/favicon/utils/configuration/patch.rb +48 -0
  47. data/lib/jekyll/favicon/utils/convert.rb +42 -0
  48. data/lib/jekyll/favicon/utils/tag.rb +54 -0
  49. data/lib/jekyll/favicon/version.rb +3 -1
  50. metadata +71 -73
  51. data/.rubocop.yml +0 -5
  52. data/.ruby-version +0 -1
  53. data/.travis.yml +0 -21
  54. data/Gemfile.lock +0 -97
  55. data/lib/browserconfig.rb +0 -54
  56. data/lib/hash.rb +0 -12
  57. data/lib/image.rb +0 -33
  58. data/lib/jekyll/favicon/config/defaults.yml +0 -55
  59. data/lib/jekyll/favicon/icon.rb +0 -73
  60. data/lib/jekyll/favicon/metadata.rb +0 -12
  61. data/lib/jekyll/favicon/templates/chrome.html.erb +0 -6
  62. data/lib/jekyll/favicon/templates/classic.html.erb +0 -8
  63. data/lib/jekyll/favicon/templates/ie.html.erb +0 -4
  64. data/lib/jekyll/favicon/templates/safari.html.erb +0 -8
  65. data/lib/string.rb +0 -14
  66. data/lib/webmanifest.rb +0 -30
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f9a26244efba01eb17a573ec4a428b4e1bed2973e669badf94564859ef697d37
4
- data.tar.gz: ed93b2721f0e43049e0278c5aead9341f7b70dfaf4a9ec7d808d3e05147b2504
3
+ metadata.gz: bce096e0104da6d1dbb0dd00c66798a3f7dbc74ec88e5c1bcc5a84f5fa207341
4
+ data.tar.gz: eb546cd9559ec82693208ec03e41fd160ed84699c8c1f9794fd0f2a4484233dc
5
5
  SHA512:
6
- metadata.gz: 7d3a3aa37c9cebdf52c449086327975cc174cafa992e4d2ccd8d92a26deb7e1d788719745100117583773e41de68de724813ad9548d053884eeb6c606478183f
7
- data.tar.gz: 93deb56d63effb0547b32f534d65a6e2fd385eb602ed626dbd52ec2faaefacd211dccd2decde87bf92478ff10c88a03176007edd4bb35d859ebadf676e7d178c
6
+ metadata.gz: b0581ae84881ec5129f0e0a702a6adcfe5f7b44f3f55679e67fe3530054c018d22d2e1e280a61d190062258279950b8e2306214402bd565c0ec4c0e8cac3e723
7
+ data.tar.gz: 709e7773c529ea70e875387d0fa5af63f7feba4bba562c8f577f9642b9a1c9eae870834aa2d352efefccbef7e86ab7d7ff25226677261284931eb3f27a24dd9b
@@ -0,0 +1,20 @@
1
+ # See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.162.0/containers/ruby/.devcontainer/base.Dockerfile
2
+
3
+ # [Choice] Ruby version: 3, 3.0, 2, 2.7, 2.6, 2.5
4
+ ARG VARIANT="3"
5
+ FROM mcr.microsoft.com/vscode/devcontainers/ruby:0-${VARIANT}
6
+
7
+ # [Option] Install Node.js
8
+ ARG INSTALL_NODE="true"
9
+ ARG NODE_VERSION="lts/*"
10
+ RUN if [ "${INSTALL_NODE}" = "true" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi
11
+
12
+ # [Optional] Uncomment this section to install additional OS packages.
13
+ RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
14
+ && apt-get -y install --no-install-recommends imagemagick librsvg2-bin
15
+
16
+ # [Optional] Uncomment this line to install additional gems.
17
+ RUN gem install rubocop reek
18
+
19
+ # [Optional] Uncomment this line to install global node packages.
20
+ # RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g <your-package-here>" 2>&1
@@ -0,0 +1,35 @@
1
+ // For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
2
+ // https://github.com/microsoft/vscode-dev-containers/tree/v0.162.0/containers/ruby
3
+ {
4
+ "name": "Ruby",
5
+ "build": {
6
+ "dockerfile": "Dockerfile",
7
+ "args": {
8
+ // Update 'VARIANT' to pick a Ruby version: 3, 3.0, 2, 2.7, 2.6, 2.5
9
+ "VARIANT": "3",
10
+ // Options
11
+ "INSTALL_NODE": "false",
12
+ "NODE_VERSION": "lts/*"
13
+ }
14
+ },
15
+
16
+ // Set *default* container specific settings.json values on container create.
17
+ "settings": {
18
+ "terminal.integrated.shell.linux": "/bin/bash"
19
+ },
20
+
21
+ // Add the IDs of extensions you want installed when the container is created.
22
+ "extensions": [
23
+ "rebornix.Ruby"
24
+ ],
25
+
26
+ // Use 'forwardPorts' to make a list of ports inside the container available locally.
27
+ // "forwardPorts": [],
28
+
29
+ // Use 'postCreateCommand' to run commands after the container is created.
30
+ // "postCreateCommand": "ruby --version",
31
+
32
+ // Comment out connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
33
+ "remoteUser": "vscode"
34
+
35
+ }
@@ -5,12 +5,12 @@
5
5
  - how you did it (use Markdown and screenshots if needed)
6
6
 
7
7
  - Did you...
8
- - [ ] update the Readme? (if needed)
9
- - [ ] update the Changelog? (if needed)
8
+ - [ ] update the README? (if needed)
9
+ - [ ] update the CHANGELOG? (if needed)
10
10
  - [ ] update the tests?
11
11
  - [ ] run the tests?
12
- - [ ] check rubocop?
12
+ - [ ] check with Rubocop?
13
13
 
14
- Don't forget to visit [travis-ci](https://travis-ci.org/afaundez/jekyll-favicon/pull_requests) after creating the PR.
14
+ Don't forget to visit the [GitHub Action workflows](https://github.com/afaundez/jekyll-favicon/actions) after creating the PR.
15
15
 
16
16
  Thanks for contributing!
@@ -1,4 +1,4 @@
1
- name: Ruby Gem
1
+ name: Gem Push
2
2
 
3
3
  on:
4
4
  release:
@@ -11,10 +11,10 @@ jobs:
11
11
 
12
12
  steps:
13
13
  - uses: actions/checkout@v2
14
- - name: Set up Ruby 2.6
14
+ - name: Set up Ruby 2.5
15
15
  uses: actions/setup-ruby@v1
16
16
  with:
17
- ruby-version: 2.6.x
17
+ ruby-version: 2.5.x
18
18
 
19
19
  - name: Publish to GPR
20
20
  run: |
@@ -0,0 +1,38 @@
1
+ name: Test
2
+
3
+ on:
4
+ push:
5
+ branches: [ $default-branch, next, update-ci ]
6
+ pull_request:
7
+ branches: [ $default-branch ]
8
+
9
+ jobs:
10
+ test:
11
+ env:
12
+ BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
13
+
14
+ runs-on: ${{ matrix.os }}
15
+
16
+ steps:
17
+ - uses: actions/checkout@v2
18
+
19
+ - name: Set up Ruby ${{ matrix.ruby-version }}
20
+ uses: ruby/setup-ruby@v1
21
+ with:
22
+ bundler-cache: true
23
+ ruby-version: ${{ matrix.ruby-version }}
24
+
25
+ - name: Run tests with ${{ matrix.gemfile }}
26
+ run: bundle exec rake
27
+
28
+ strategy:
29
+ matrix:
30
+ exclude:
31
+ - ruby-version: '3.0'
32
+ gemfile: jekyll36
33
+ - ruby-version: '3.0'
34
+ gemfile: jekyll37
35
+
36
+ gemfile: [ jekyll36, jekyll37, jekyll38, jekyll39, jekyll40, jekyll41 ]
37
+ os: [ ubuntu-latest ]
38
+ ruby-version: [ 2.5, 2.6, 2.7, '3.0' ]
data/.gitignore CHANGED
@@ -6,4 +6,9 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+ .jekyll-cache
10
+ .ruby-version
9
11
  *.gem
12
+ Gemfile.lock
13
+ gemfiles/*.gemfile.lock
14
+ .vscode
data/CHANGELOG.md CHANGED
@@ -6,6 +6,27 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [1.0.0.pre.1] - 2021-05-26
10
+ ### Removed
11
+ - Delete Gemfile.lock
12
+ - Delete .ruby-version
13
+ - Remove unsupported versions from travis config
14
+ - Remove bundler and rubocop gemspec's development dependencies
15
+ - Remove graphicmagick from travis config
16
+ - Remove travis-ci config
17
+ - Remove nokogiri gemspec development dependency
18
+ ### Changed
19
+ - Move supported ruby versions to 2.5
20
+ - Update nokogiri, minitest, and minitest-hooks gemspec's development dependencies
21
+ - Update mini_magick gemspec's runtime dependencies
22
+ - Update travis rvm versions
23
+ - Rename Gem Push github action workflow
24
+ ### Added
25
+ - gitignore Gemfile.lock
26
+ - gitignore .jekyll-cache
27
+ - Add Test github action workflow
28
+ - Regenration
29
+
9
30
  ## [0.2.9] - 2021-02-10
10
31
  ### Added
11
32
  - Optional `crossorigin` attribute for Chrome manifest
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
data/README.md CHANGED
@@ -3,25 +3,22 @@
3
3
  This [Jekyll](https://jekyllrb.com) plugin adds:
4
4
 
5
5
  - a generator for
6
- - a `favicon.ico`
7
- - multiple `favicon-[width]x[height].png`
6
+ - an ICO favicon
7
+ - PNG favicons
8
+ - SVG favicons
8
9
  - a [webmanifest](https://developer.mozilla.org/en-US/docs/Web/Manifest)
9
10
  - a [browser configuration schema](https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/platform-apis/dn320426%28v=vs.85%29)
10
11
  - a tag to generate all the corresponding links and metadata needed in the head tag
11
12
 
12
13
  ## Prerequisites
13
14
 
14
- Before using this plugin your system must have installed [ImageMagick](http://www.imagemagick.org) ~~(or [GraphicsMagick](http://www.graphicsmagick.org/))~~.
15
+ This plugin assumes you have [ImageMagick](http://www.imagemagick.org) installed.
15
16
 
16
17
  Check if it is already installed by running:
17
18
 
18
19
  ```sh
19
- $ convert --version
20
+ $ convert --version | grep Version
20
21
  Version: ImageMagick 7.0.8-46 Q16 x86_64 2019-05-19 https://imagemagick.org
21
- Copyright: © 1999-2019 ImageMagick Studio LLC
22
- License: https://imagemagick.org/script/license.php
23
- Features: Cipher DPC HDRI Modules OpenMP(3.1)
24
- Delegates (built-in): bzlib freetype heic jng jp2 jpeg lcms ltdl lzma openexr png tiff webp xml zlib
25
22
  ```
26
23
 
27
24
  If you have a [problem converting SVG files](https://github.com/afaundez/jekyll-favicon/issues/9#issuecomment-473862194), you may need to install the package `librsvg2-bin`. For example, in Ubuntu/Debian systems:
@@ -30,12 +27,14 @@ If you have a [problem converting SVG files](https://github.com/afaundez/jekyll-
30
27
  sudo apt install librsvg2-bin
31
28
  ```
32
29
 
30
+ Check the devcontainer's [Dockerfile](.devcontainer/Dockerfile) for more practical details.
31
+
33
32
  ## Installation
34
33
 
35
34
  Add this line to your application's Gemfile:
36
35
 
37
36
  ```ruby
38
- gem 'jekyll-favicon', '~> 0.2.9', group: :jekyll_plugins
37
+ gem 'jekyll-favicon', '~> 1.0.0.pre.1', group: :jekyll_plugins
39
38
  ```
40
39
 
41
40
  ## Usage
@@ -44,19 +43,23 @@ If you are going to use this plugin in a hosted build/service, be sure that they
44
43
 
45
44
  As [Github Pages](https://pages.github.com) build doesn't load custom plugins, this plugin won't work. As an alternative, you can build your site and push all files (for example, build to `docs`, version it and push it, although this works only for project pages).
46
45
 
46
+ Tested with:
47
+
48
+ - Jekyll 3.6 to 3.7, ruby 2.5 to 2.7
49
+ - Jekyll 3.8 to 4.2, ruby 2.5 to 3.0
50
+
47
51
  ### Generator
48
52
 
49
- By installing the plugin, it will be automatically activated. It will search for the file `/favicon.svg` and generate a set of files in `/assets/images` and few more items at the site's root. It also will exclude the original sources from being copied as a regular static file.
53
+ By installing the plugin, it will be automatically activated without further configurations.
50
54
 
51
- You can override these settings in your sites's `_config.yml`:
55
+ You can override these settings in your sites's `_config.yml`. The simplest configuration would be this:
52
56
 
53
57
  ```yaml
54
58
  favicon:
55
59
  source: custom-favicon-png-or.svg
56
- path: /assets/img
57
60
  ```
58
61
 
59
- This plugin works best if you use an SVG with a square viewbox as the source, but you can also use a PNG instead (at least 558x588). Check [favicon.svg](/test/fixtures/sites/minimal/favicon.svg) as an example.
62
+ This plugin works best if you use an SVG with a square viewbox as the source, but you can also use a PNG instead (at least 558x588). Check the fixtures [favicon.svg](test/fixtures/favicon.svg) or [favicon.png](test/fixtures/favicon.png) as examples.
60
63
 
61
64
  ### Favicon tag
62
65
 
@@ -71,27 +74,74 @@ To get the links and meta, just add the favicon tag `{% favicon %}`. For example
71
74
  {% favicon %}
72
75
  </head>
73
76
  <body>
74
- <h1>Jekyll Favicon</h1>
75
77
  </body>
76
78
  </html>
77
79
  ```
78
80
 
79
- #### Unusual situations
81
+ ## Configuration
80
82
 
81
- If your site is deployed in an unusual way, such as behind HTTP Basic Auth, it might be necessary to specify a `crossorigin` attribute for the webmanifest `<link>` tag:
83
+ The plugin customization goes in the `favicon` key in the `_config.yml` file. There are four key parameters:
82
84
 
83
- ```yaml
84
- favicon:
85
- chrome:
86
- crossorigin: "use-credentials"
87
- ```
85
+ | attribute name | type | default | description |
86
+ |----------------|-------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------|
87
+ | source | hash/string | <div class="highlight highlight-source-yaml position-relative"><pre><span class="pl-ent">name</span>: <span class="pl-s">favicon.svg</span><br><span class="pl-ent">dir</span>: <span class="pl-s">.</span></pre></div> | SVG or PNG file relative to site's source. Any favicon without explicit source will use this attribute as default. |
88
+ | background | string | `transparent` | Color keyword or Hex representation. Any favicon without explicit convert background will use this attribute as default. |
89
+ | dir | string | `.` | Path relative to site's source. Any favicon without explicit source dir will use this attribute as default. |
90
+ | assets | array | see [defaults](config/jekyll/favicon.yml) | Array of asset configuration. Any asset define here will be controlled with this plugin. |
91
+
92
+ ### Assets
93
+
94
+ The assets is an array of file spec:
95
+
96
+ | attribute name | type | default | description |
97
+ |----------------|---------------|-------------|--------------------------------------------|
98
+ | name | string | | file's basename. Required. |
99
+ | dir | string/symbol | `:site_dir` | file's dir, relative to site's destination |
100
+ | source | hash | | file's source. Required. |
101
+ | convert | hash | `{}` | see [convert defaults](#convert) |
102
+ | tags | array | `[]` | see [tags defaults](#tags) |
103
+ | refer | hash | `[]` | see [refer defaults](#refer) |
104
+
105
+ Symbol values:
106
+
107
+ - `:background`: favicon's global background
108
+ - `:site_dir`: favicon's global dir
109
+ - `:href`: favicons absolute URL path
110
+
111
+ #### Convert
112
+
113
+ The convert configuration is specific for each type of convertion: SVG to ICO/PNG/SVG and PNG to ICO/PNG.
114
+
115
+ | attribute name | type | default | description |
116
+ |----------------|---------------|-------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------|
117
+ | alpha | string | see [convert config](config/jekyll/favicon/static_file/convertible.yml) | see [imagemagick alpha docs](https://imagemagick.org/script/command-line-options.php#alpha) |
118
+ | background | string/symbol | see [convert config](config/jekyll/favicon/static_file/convertible.yml) | see [imagemagick background docs](https://imagemagick.org/script/command-line-options.php#background) |
119
+ | define | string/symbol | see [convert config](config/jekyll/favicon/static_file/convertible.yml) | see [imagemagick define docs](https://imagemagick.org/script/command-line-options.php#define) |
120
+ | density | string/symbol | see [convert config](config/jekyll/favicon/static_file/convertible.yml) | see [imagemagick density docs](https://imagemagick.org/script/command-line-options.php#density) |
121
+ | extent | string/symbol | see [convert config](config/jekyll/favicon/static_file/convertible.yml) | see [imagemagick extent docs](https://imagemagick.org/script/command-line-options.php#extent) |
122
+ | gravity | string | see [convert config](config/jekyll/favicon/static_file/convertible.yml) | see [imagemagick gravity docs](https://imagemagick.org/script/command-line-options.php#gravity) |
123
+ | resize | string | see [convert config](config/jekyll/favicon/static_file/convertible.yml) | see [imagemagick resize docs](https://imagemagick.org/script/command-line-options.php#resize) |
124
+ | scale | string | see [convert config](config/jekyll/favicon/static_file/convertible.yml) | see [imagemagick scale docs](https://imagemagick.org/script/command-line-options.php#scale) |
125
+
126
+ Symbol values:
127
+
128
+ - `:auto`: if sizes is not a square, then sizes
129
+ - `:max`: 3 times the largest dimension
130
+
131
+ #### Tags
132
+
133
+ The tags configuration is a list of hashes with only one key, `link` or `meta`, and only one value, a hash with the HTML attributes associated to the key. See [tags defaults](config/jekyll/favicon/static_file/taggable.yml) for more details.
134
+
135
+ #### Refer
136
+
137
+ The refer configuration is a list of hashes with only one key, `webmanifest` or `browserconfig`, and only one value, a hash that will override the associated file. See [refer defaults](config/jekyll/favicon/static_file/referenceable.yml) for more details.
88
138
 
89
139
  ## Development
90
140
 
91
141
  If you want to add something, just make a PR. There is a lot to do:
92
142
 
93
143
  - Define and check SVG/PNG attributes before execute
94
- - Review SVG to PNG conversion, it working as it is, but some parameters are hard coded and may only work with the samples
144
+ - Review SVG to PNG conversion, it working as it is, but some parameters are hardcoded and may only work with the samples
95
145
  - Encapsulate image conversion
96
146
  - Tests everywhere
97
147
 
@@ -101,11 +151,11 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/afaund
101
151
 
102
152
  ## License
103
153
 
104
- The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
154
+ The gem is available as open-source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
105
155
 
106
156
  ## Code of Conduct
107
157
 
108
- Everyone interacting in the Jekyll Favicon project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/afaundez/jekyll-favicon/blob/master/CODE_OF_CONDUCT.md).
158
+ Everyone interacting in the Jekyll Favicon project’s codebases, issue trackers, chat rooms, and mailing lists is expected to follow the [code of conduct](https://github.com/afaundez/jekyll-favicon/blob/master/CODE_OF_CONDUCT.md).
109
159
 
110
160
  ## Acknowledgments
111
161
 
data/Rakefile CHANGED
@@ -1,10 +1,12 @@
1
- require 'bundler/gem_tasks'
2
- require 'rake/testtask'
1
+ # frozen_string_literal: true
3
2
 
4
- Rake::TestTask.new(:test) do |t|
5
- t.libs << 'test'
6
- t.libs << 'lib'
7
- t.test_files = FileList['test/**/*_test.rb']
8
- end
3
+ require 'rake/testtask'
9
4
 
5
+ desc 'run tests'
10
6
  task default: :test
7
+
8
+ Rake::TestTask.new do |t|
9
+ t.libs << ['test', 'test/spec', 'test/unit']
10
+ t.test_files = FileList['test/**/*_spec.rb', 'test/**/test_*.rb']
11
+ t.warning = false
12
+ end
data/bin/console CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'bundler/setup'
4
5
  require 'jekyll-favicon'
@@ -0,0 +1,115 @@
1
+ ---
2
+ source:
3
+ name: favicon.svg
4
+ dir: .
5
+ background: transparent
6
+ dir: .
7
+ assets:
8
+ - name: favicon.ico
9
+ convert:
10
+ define: 'icon:auto-resize=36,24,16'
11
+ scale: 36x36
12
+ tag:
13
+ - link:
14
+ href: :href
15
+ rel: shortcut icon
16
+ type: :mime
17
+ sizes: :sizes
18
+ - name: favicon.png
19
+ convert:
20
+ scale: 196x196
21
+ tag:
22
+ - link:
23
+ href: :href
24
+ rel: icon
25
+ type: :mime
26
+ sizes: :sizes
27
+ - name: apple-touch-icon.png
28
+ convert:
29
+ scale: 180x180
30
+ - name: safari-pinned-tab.svg
31
+ tag:
32
+ - link:
33
+ color: :background
34
+ href: :href
35
+ rel: mask-icon
36
+ - name: android-chrome-192x192.png
37
+ convert:
38
+ scale: 192x192
39
+ refer:
40
+ - webmanifest:
41
+ icons:
42
+ - src: :href
43
+ - name: android-chrome-512x512.png
44
+ convert:
45
+ scale: 512x512
46
+ refer:
47
+ - webmanifest:
48
+ icons:
49
+ - src: :href
50
+ - name: mstile-icon-128x128.png
51
+ convert:
52
+ scale: 128x128
53
+ refer:
54
+ - browserconfig:
55
+ msapplication:
56
+ tile:
57
+ TileColor:
58
+ __text: :background
59
+ square70x70logo:
60
+ _src: :href
61
+ tag:
62
+ - meta:
63
+ content: :href
64
+ name: msapplication-TileImage
65
+ - meta:
66
+ content: :background
67
+ name: msapplication-TileColor
68
+
69
+ - name: mstile-icon-270x270.png
70
+ convert:
71
+ scale: 270x270
72
+ refer:
73
+ - browserconfig:
74
+ msapplication:
75
+ tile:
76
+ TileColor:
77
+ __text: :background
78
+ square150x150logo:
79
+ _src: :href
80
+ - name: mstile-icon-558x270.png
81
+ convert:
82
+ scale: 558x270
83
+ refer:
84
+ - browserconfig:
85
+ msapplication:
86
+ tile:
87
+ TileColor:
88
+ __text: :background
89
+ wide310x150logo:
90
+ _src: :href
91
+ - name: mstile-icon-558x558.png
92
+ convert:
93
+ scale: 558x558
94
+ refer:
95
+ - browserconfig:
96
+ msapplication:
97
+ tile:
98
+ TileColor:
99
+ __text: :background
100
+ square310x310logo:
101
+ _src: :href
102
+ - name: manifest.webmanifest
103
+ source:
104
+ name: manifest.webmanifest
105
+ tag:
106
+ - link:
107
+ href: :href
108
+ rel: manifest
109
+ - name: browserconfig.xml
110
+ source:
111
+ name: browserconfig.xml
112
+ tag:
113
+ - meta:
114
+ content: :href
115
+ name: msapplication-config