jekyll-favicon 0.2.5 → 1.0.0.pre.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.
Files changed (66) hide show
  1. checksums.yaml +5 -5
  2. data/.devcontainer/Dockerfile +20 -0
  3. data/.devcontainer/devcontainer.json +35 -0
  4. data/.github/ISSUE_TEMPLATE/bug_report.md +10 -13
  5. data/.github/PULL_REQUEST_TEMPLATE.md +11 -9
  6. data/.github/workflows/gem-push.yml +40 -0
  7. data/.github/workflows/test.yml +38 -0
  8. data/.gitignore +5 -0
  9. data/CHANGELOG.md +44 -0
  10. data/Gemfile +2 -0
  11. data/README.md +86 -20
  12. data/Rakefile +9 -7
  13. data/bin/console +1 -0
  14. data/config/jekyll/favicon.yml +115 -0
  15. data/config/jekyll/favicon/static_file.yml +3 -0
  16. data/config/jekyll/favicon/static_file/convertible.yml +42 -0
  17. data/config/jekyll/favicon/static_file/mutable.yml +22 -0
  18. data/config/jekyll/favicon/static_file/referenceable.yml +15 -0
  19. data/config/jekyll/favicon/static_file/sourceable.yml +3 -0
  20. data/config/jekyll/favicon/static_file/taggable.yml +22 -0
  21. data/gemfiles/jekyll36.gemfile +6 -0
  22. data/gemfiles/jekyll37.gemfile +6 -0
  23. data/gemfiles/jekyll38.gemfile +6 -0
  24. data/gemfiles/jekyll39.gemfile +6 -0
  25. data/gemfiles/jekyll40.gemfile +6 -0
  26. data/gemfiles/jekyll41.gemfile +6 -0
  27. data/gemfiles/jekyll42.gemfile +6 -0
  28. data/jekyll-favicon.gemspec +9 -9
  29. data/lib/jekyll-favicon.rb +7 -14
  30. data/lib/jekyll/favicon.rb +19 -13
  31. data/lib/jekyll/favicon/configuration.rb +73 -0
  32. data/lib/jekyll/favicon/configuration/defaults.rb +49 -0
  33. data/lib/jekyll/favicon/generator.rb +11 -74
  34. data/lib/jekyll/favicon/hooks.rb +12 -10
  35. data/lib/jekyll/favicon/static_data_file.rb +17 -0
  36. data/lib/jekyll/favicon/static_file.rb +97 -0
  37. data/lib/jekyll/favicon/static_file/convertible.rb +118 -0
  38. data/lib/jekyll/favicon/static_file/mutable.rb +81 -0
  39. data/lib/jekyll/favicon/static_file/referenceable.rb +22 -0
  40. data/lib/jekyll/favicon/static_file/sourceable.rb +73 -0
  41. data/lib/jekyll/favicon/static_file/taggable.rb +59 -0
  42. data/lib/jekyll/favicon/static_graphic_file.rb +21 -0
  43. data/lib/jekyll/favicon/tag.rb +14 -16
  44. data/lib/jekyll/favicon/utils.rb +24 -0
  45. data/lib/jekyll/favicon/utils/configuration/compact.rb +61 -0
  46. data/lib/jekyll/favicon/utils/configuration/merge.rb +63 -0
  47. data/lib/jekyll/favicon/utils/configuration/patch.rb +48 -0
  48. data/lib/jekyll/favicon/utils/convert.rb +42 -0
  49. data/lib/jekyll/favicon/utils/tag.rb +54 -0
  50. data/lib/jekyll/favicon/version.rb +3 -1
  51. metadata +71 -66
  52. data/.rubocop.yml +0 -5
  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 -54
  59. data/lib/jekyll/favicon/icon.rb +0 -74
  60. data/lib/jekyll/favicon/metadata.rb +0 -12
  61. data/lib/jekyll/favicon/templates/chrome.html.erb +0 -5
  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
- SHA1:
3
- metadata.gz: 0f9e788acfa22c8c2b0142764e25df5af99e5304
4
- data.tar.gz: 026774aef1aeae4bdc655dc4d664fde79c96234b
2
+ SHA256:
3
+ metadata.gz: bce096e0104da6d1dbb0dd00c66798a3f7dbc74ec88e5c1bcc5a84f5fa207341
4
+ data.tar.gz: eb546cd9559ec82693208ec03e41fd160ed84699c8c1f9794fd0f2a4484233dc
5
5
  SHA512:
6
- metadata.gz: 384b59a8e14e74763c62ff19852965dbb3887b215769458b53d34c5a67aed74acf04e08173ad055bcbccf274823d08b02a25a0eb9aea96e096a4610e49778514
7
- data.tar.gz: 7a96ad07d6411cb2590d993a3808fc970a356db6f50c02423c42c140f453c64c4d3cc85df874a7cf70399d7b7ff0fa822175a75ef7d575998697666458ccdddd
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
+ }
@@ -10,9 +10,9 @@ A clear and concise description of what the bug is.
10
10
  **To Reproduce**
11
11
  Steps to reproduce the behavior:
12
12
  1. Go to '...'
13
- 2. Click on '....'
14
- 3. Scroll down to '....'
15
- 4. See error
13
+ 2. Create a new project or clone one from '...'
14
+ 3. Add gem
15
+ 4. Bundle/Run/Test/...
16
16
 
17
17
  **Expected behavior**
18
18
  A clear and concise description of what you expected to happen.
@@ -20,16 +20,13 @@ A clear and concise description of what you expected to happen.
20
20
  **Screenshots**
21
21
  If applicable, add screenshots to help explain your problem.
22
22
 
23
- **Desktop (please complete the following information):**
24
- - OS: [e.g. iOS]
25
- - Browser [e.g. chrome, safari]
26
- - Version [e.g. 22]
27
-
28
- **Smartphone (please complete the following information):**
29
- - Device: [e.g. iPhone6]
30
- - OS: [e.g. iOS8.1]
31
- - Browser [e.g. stock browser, safari]
32
- - Version [e.g. 22]
23
+ **Environment:**
24
+ - OS name and version
25
+ - Ruby manager name and version (if present)
26
+ - Ruby version
27
+ - Bundler version
28
+ - Jekyll version
29
+ - Jekyll Favicon version
33
30
 
34
31
  **Additional context**
35
32
  Add any other context about the problem here.
@@ -1,14 +1,16 @@
1
1
  # PR Template
2
2
 
3
- Include at least this concepts:
3
+ - Tell us...
4
+ - what you wanted to achieve
5
+ - how you did it (use Markdown and screenshots if needed)
4
6
 
5
- - Explain what you wanted to achieve
7
+ - Did you...
8
+ - [ ] update the README? (if needed)
9
+ - [ ] update the CHANGELOG? (if needed)
10
+ - [ ] update the tests?
11
+ - [ ] run the tests?
12
+ - [ ] check with Rubocop?
6
13
 
7
- - Explain what you did
14
+ Don't forget to visit the [GitHub Action workflows](https://github.com/afaundez/jekyll-favicon/actions) after creating the PR.
8
15
 
9
- - use markdown
10
- - include screenshots if helps to explain
11
-
12
- - Explain how to test it
13
-
14
- Thanks for contrubuting!
16
+ Thanks for contributing!
@@ -0,0 +1,40 @@
1
+ name: Gem Push
2
+
3
+ on:
4
+ release:
5
+ types: [ published ]
6
+
7
+ jobs:
8
+ build:
9
+ name: Build + Publish
10
+ runs-on: ubuntu-latest
11
+
12
+ steps:
13
+ - uses: actions/checkout@v2
14
+ - name: Set up Ruby 2.5
15
+ uses: actions/setup-ruby@v1
16
+ with:
17
+ ruby-version: 2.5.x
18
+
19
+ - name: Publish to GPR
20
+ run: |
21
+ mkdir -p $HOME/.gem
22
+ touch $HOME/.gem/credentials
23
+ chmod 0600 $HOME/.gem/credentials
24
+ printf -- "---\n:github: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
25
+ gem build *.gemspec
26
+ gem push --KEY github --host https://rubygems.pkg.github.com/${OWNER} *.gem
27
+ env:
28
+ GEM_HOST_API_KEY: "Bearer ${{secrets.GITHUB_TOKEN}}"
29
+ OWNER: ${{ github.repository_owner }}
30
+
31
+ - name: Publish to RubyGems
32
+ run: |
33
+ mkdir -p $HOME/.gem
34
+ touch $HOME/.gem/credentials
35
+ chmod 0600 $HOME/.gem/credentials
36
+ printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
37
+ gem build *.gemspec
38
+ gem push *.gem
39
+ env:
40
+ GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
@@ -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,50 @@ 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
+
30
+ ## [0.2.9] - 2021-02-10
31
+ ### Added
32
+ - Optional `crossorigin` attribute for Chrome manifest
33
+
34
+ ## [0.2.8] - 2019-09-11
35
+ ### Changed
36
+ - Upgrade mini_magick 4.9.4 in gemspec for security fix
37
+ - Update gemspec to support Jekyll 4.0
38
+
39
+ ## [0.2.7] - 2019-05-27
40
+ ### Fixed
41
+ - Set default background back to none
42
+ - Restore safari-pinned-tab
43
+ ### Changed
44
+ - Update README outdated stuff
45
+ - Correct typos on README
46
+
47
+ ## [0.2.6] - 2019-03-23
48
+ ### Added
49
+ - Readme troubleshooting for librsvg2-bin package missing
50
+ ### Fixed
51
+ - ICO convert uses background config
52
+
9
53
  ## [0.2.5] - 2019-01-16
10
54
  ### Changed
11
55
  - Strike GraphicsMagick at Readme because it's compatible a this moment
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,58 +3,67 @@
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
- Version: ImageMagick 7.0.7-27 Q16 x86_64 2018-03-18 http://www.imagemagick.org
21
- Copyright: © 1999-2018 ImageMagick Studio LLC
22
- License: http://www.imagemagick.org/script/license.php
23
- Features: Cipher DPC HDRI Modules
24
- Delegates (built-in): bzlib freetype jng jpeg ltdl lzma png tiff xml zlib
20
+ $ convert --version | grep Version
21
+ Version: ImageMagick 7.0.8-46 Q16 x86_64 2019-05-19 https://imagemagick.org
25
22
  ```
26
23
 
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:
25
+
26
+ ```sh
27
+ sudo apt install librsvg2-bin
28
+ ```
29
+
30
+ Check the devcontainer's [Dockerfile](.devcontainer/Dockerfile) for more practical details.
31
+
27
32
  ## Installation
28
33
 
29
34
  Add this line to your application's Gemfile:
30
35
 
31
36
  ```ruby
32
- gem 'jekyll-favicon', '~> 0.2.5', group: :jekyll_plugins
37
+ gem 'jekyll-favicon', '~> 1.0.0.pre.1', group: :jekyll_plugins
33
38
  ```
34
39
 
35
40
  ## Usage
36
41
 
37
- If you are going to use this plugin in a hosted build/service, be sure that they include your plugins as part of the process. You can check [running example](https://afaundez.gitlab.io/jekyll-favicon-example/) hosted by [GitLab](https://about.gitlab.com/features/pages/).
42
+ If you are going to use this plugin in a hosted build/service, be sure that they include your plugins as part of the process. You can check [this running example](https://afaundez.gitlab.io/jekyll-favicon-example/) hosted by [GitLab](https://about.gitlab.com/features/pages/).
38
43
 
39
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).
40
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
+
41
51
  ### Generator
42
52
 
43
- By installing the plugin, it will be automatically active. It will search for the file `/favicon.svg` and generate 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.
44
54
 
45
- You can override whit your sites's `_config.yml`:
55
+ You can override these settings in your sites's `_config.yml`. The simplest configuration would be this:
46
56
 
47
57
  ```yaml
48
58
  favicon:
49
59
  source: custom-favicon-png-or.svg
50
- path: /assets/img
51
60
  ```
52
61
 
53
- 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.
54
63
 
55
64
  ### Favicon tag
56
65
 
57
- To get the links and meta, just add the favicon tag `{{ favicon }}`. For example, on your `index.html`
66
+ To get the links and meta, just add the favicon tag `{% favicon %}`. For example, on your `index.html`
58
67
 
59
68
  ```html
60
69
  ---
@@ -65,17 +74,74 @@ To get the links and meta, just add the favicon tag `{{ favicon }}`. For example
65
74
  {% favicon %}
66
75
  </head>
67
76
  <body>
68
- <h1>Jekyll Favicon</h1>
69
77
  </body>
70
78
  </html>
71
79
  ```
72
80
 
81
+ ## Configuration
82
+
83
+ The plugin customization goes in the `favicon` key in the `_config.yml` file. There are four key parameters:
84
+
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.
138
+
73
139
  ## Development
74
140
 
75
141
  If you want to add something, just make a PR. There is a lot to do:
76
142
 
77
143
  - Define and check SVG/PNG attributes before execute
78
- - 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
79
145
  - Encapsulate image conversion
80
146
  - Tests everywhere
81
147
 
@@ -85,11 +151,11 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/afaund
85
151
 
86
152
  ## License
87
153
 
88
- 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).
89
155
 
90
156
  ## Code of Conduct
91
157
 
92
- 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).
93
159
 
94
160
  ## Acknowledgments
95
161