diff --git a/README.md b/README.md index e4bce93e5e..556b92e9f4 100644 --- a/README.md +++ b/README.md @@ -86,9 +86,8 @@ Refers to snippets of code within the `_includes` directory that can be inserted - `head.html` — Code-block that defines the `` in *default* layout. - `custom-head.html` — Placeholder to allow users to add more metadata to ``. - `header.html` — Defines the site's main header section. By default, pages with a defined `title` attribute will have links displayed here. - - `social.html` — Renders social-media icons based on the `minima:social_links` data in the config file. - - `social-item.html` — Template to render individual list-item containing graphic link to configured social-profile. - - `social-links/*.svg` — SVG markup components of supported social-icons. + - `social.html` — Renders social-media icons based on the `minima:social_links` data in the config file using + the latest version of Font Awesome Free webfonts via remote CDN. ### Sass @@ -283,67 +282,25 @@ Minima 2.x | Minima 3.0 You can add links to the accounts you have on other sites, with respective icon as an SVG graphic, via the config file. From `Minima-3.0` onwards, the social media data is sourced from config key `minima.social_links`. It is a list of key-value pairs, each entry -corresponding to a link rendered in the footer. For example, to render links to Jekyll GitHub repository and Twitter account, one should have: +corresponding to a link rendered in the footer. For example, to render links to Jekyll GitHub repository and Twitter account (now X), one +should have: ```yaml minima: social_links: - - { platform: github, user_url: "https://github.com/jekyll/jekyll" } - - { platform: twitter, user_url: "https://twitter.com/jekyllrb" } + - title: Jekyll repository at GitHub + icon: github + url: "https://github.com/jekyll/jekyll" + - title: Jekyll at X (formerly Twitter) + icon: x-twitter + url: "https://x.com/jekyllrb" ``` -Apart from the necessary keys illustrated above, `title` may also be defined to render a custom link-title. By default, the title is the same -as `platform`. The `platform` key corresponds to the SVG id of the sprite in the composite file at URL `/assets/minima-social-icons.svg`. - -The theme ships with an icon for `rss` and icons of select social-media platforms: - -- `bluesky` -- `codeberg` -- `devto` -- `dribbble` -- `facebook` -- `flickr` -- `github` -- `gitlab` -- `google_scholar` -- `instagram` -- `keybase` -- `linkedin` -- `mastodon` -- `microdotblog` -- `pinterest` -- `stackoverflow` -- `telegram` -- `twitter` -- `whatsapp` -- `x` -- `youtube` - -To render a link to a platform not listed above, one should first create a file at path `_includes/social-icons/.svg` comprised of -graphic markup **without the top-level ``**. The icon is expected to be centered within a viewbox of `"0 0 16 16"`. Then, make an -entry under key `minima.social_links`. - -For example, to render a link to an account of user `john.doe` at platform `deviantart.com`, the steps to follow would be: - - Get DeviantArt logo in SVG format. - - Using a text-editor, open the downloaded file to inspect if the `viewBox` attribute is defined on the `` element and is set - as `"0 0 16 16" (or similar "square" dimension)`. - - If the `viewBox` attribute is non-square or undefined, the graphic *may optionally need* to be edited in a vector graphic editor such as - *Inkscape* or *Adobe Illustrator* for properly aligned render on page. - - Edit the SVG file in text-editor to delete everything **except** what is contained between `` and save it into the Jekyll - project at path `_includes/social-icons/deviantart.svg`. - - Finally, edit the Jekyll config file to enable loading of new icon graphic with: - ```yaml - minima: - social_links: - - platform: deviantart # same as SVG filename. - user_url: "https://www.deviantart.com/john.doe" # URL of profile page. - title: My profile at DeviantArt.com # Optional. Text displayed on hovering over link. - ``` - -**Notes:** -- The list of social-links is declarative. List-items are rendered in the order declared in the downstream configuration file and not merged - with entries from upstream config file(s) such as theme-config-file or prior local config files. -- The `user_url` is rendered as given without handling any special characters within. +where `title` corresponds to the link-title displayed when a visitor hovers mouse-pointer over url / icon and +`icon` refers to the Font Awesome icon id. e.g. `github` corresponds to `fa-github`. + +Social platform icons are rendered using the latest version of Font Awesome Free webfonts sourced via remote CDN. +The full list of available social icons can be found at https://fontawesome.com/search?ic=brands ### Enabling Google Analytics diff --git a/_config.yml b/_config.yml index 3a8172e60a..f7cb52247e 100644 --- a/_config.yml +++ b/_config.yml @@ -51,24 +51,17 @@ minima: # Refer to https://shopify.github.io/liquid/filters/date/ if you want to customize this. #date_format: "%b-%d-%Y" - # Generate social links in footer. + # Social Media Links + # Renders icons via Font Awesome Free webfonts CDN, based on ordered list of entries. + # + # Entry keys: + # * title Tooltip rendered on hovering over icon. + # * icon Font Awesome icon id. `github` corresponds to `fa-github`. + # * url Full URL of social profile. #social_links: - # - { platform: devto, user_url: "https://dev.to/jekyll" } - # - { platform: dribbble, user_url: "https://dribbble.com/jekyll" } - # - { platform: facebook, user_url: "https://www.facebook.com/jekyll" } - # - { platform: flickr, user_url: "https://www.flickr.com/photos/jekyll" } - # - { platform: github, user_url: "https://github.com/jekyll/minima" } - # - { platform: gitlab, user_url: "https://gitlab.com/jekyll" } - # - { platform: google_scholar, user_url: "https://scholar.google.com/citations?user=qc6CJjYAAAAJ" } - # - { platform: instagram, user_url: "https://www.instagram.com/jekyll" } - # - { platform: keybase, user_url: "https://keybase.io/jekyll" } - # - { platform: linkedin, user_url: "https://www.linkedin.com/in/jekyll" } - # - { platform: microdotblog, user_url: "https://micro.blog/jekyll" } - # - { platform: pinterest, user_url: "https://www.pinterest.com/jekyll" } - # - { platform: stackoverflow, user_url: "https://stackoverflow.com/users/1234567/jekyll" } - # - { platform: telegram, user_url: "https://t.me/jekyll" } - # - { platform: twitter, user_url: "https://twitter.com/jekyllrb" } - # - { platform: x, user_url: "https://x.com/jekyllrb" } - # - { platform: youtube, user_url: "https://www.youtube.com/jekyll" } - - + # - title: Minima Theme repository at GitHub + # icon: github + # url: "https://github.com/jekyll/minima" + # - title: Jekyll at X (formerly Twitter) + # icon: x-twitter + # url: "https://x.com/jekyllrb" diff --git a/_includes/footer.html b/_includes/footer.html index f81886ff94..008e1b46d6 100644 --- a/_includes/footer.html +++ b/_includes/footer.html @@ -8,7 +8,11 @@

- + Subscribe

diff --git a/_includes/head.html b/_includes/head.html index 9ee139f2a9..8c9044c8c3 100644 --- a/_includes/head.html +++ b/_includes/head.html @@ -3,6 +3,7 @@ {%- seo -%} + {%- feed_meta -%} {%- if jekyll.environment == 'production' and site.google_analytics -%} diff --git a/_includes/social-icons/bluesky.svg b/_includes/social-icons/bluesky.svg deleted file mode 100644 index c8beb6ea40..0000000000 --- a/_includes/social-icons/bluesky.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/codeberg.svg b/_includes/social-icons/codeberg.svg deleted file mode 100644 index d41b0034a4..0000000000 --- a/_includes/social-icons/codeberg.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - diff --git a/_includes/social-icons/devto.svg b/_includes/social-icons/devto.svg deleted file mode 100644 index f595e0ee78..0000000000 --- a/_includes/social-icons/devto.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/dribbble.svg b/_includes/social-icons/dribbble.svg deleted file mode 100644 index 1d95de0c4f..0000000000 --- a/_includes/social-icons/dribbble.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/facebook.svg b/_includes/social-icons/facebook.svg deleted file mode 100644 index c022403089..0000000000 --- a/_includes/social-icons/facebook.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/flickr.svg b/_includes/social-icons/flickr.svg deleted file mode 100644 index 3b387723b6..0000000000 --- a/_includes/social-icons/flickr.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/github.svg b/_includes/social-icons/github.svg deleted file mode 100644 index 9301f84f2a..0000000000 --- a/_includes/social-icons/github.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/gitlab.svg b/_includes/social-icons/gitlab.svg deleted file mode 100644 index 6744b554c7..0000000000 --- a/_includes/social-icons/gitlab.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/_includes/social-icons/google_scholar.svg b/_includes/social-icons/google_scholar.svg deleted file mode 100644 index 37aab26ac2..0000000000 --- a/_includes/social-icons/google_scholar.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/instagram.svg b/_includes/social-icons/instagram.svg deleted file mode 100644 index d483d14df1..0000000000 --- a/_includes/social-icons/instagram.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/keybase.svg b/_includes/social-icons/keybase.svg deleted file mode 100644 index 07704471bf..0000000000 --- a/_includes/social-icons/keybase.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/_includes/social-icons/linkedin.svg b/_includes/social-icons/linkedin.svg deleted file mode 100644 index 8a61bf135d..0000000000 --- a/_includes/social-icons/linkedin.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/mastodon.svg b/_includes/social-icons/mastodon.svg deleted file mode 100644 index 77d35f447e..0000000000 --- a/_includes/social-icons/mastodon.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/microdotblog.svg b/_includes/social-icons/microdotblog.svg deleted file mode 100644 index 285a7198cd..0000000000 --- a/_includes/social-icons/microdotblog.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/pinterest.svg b/_includes/social-icons/pinterest.svg deleted file mode 100644 index d3963c6058..0000000000 --- a/_includes/social-icons/pinterest.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/_includes/social-icons/rss.svg b/_includes/social-icons/rss.svg deleted file mode 100644 index e531f94de9..0000000000 --- a/_includes/social-icons/rss.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/stackoverflow.svg b/_includes/social-icons/stackoverflow.svg deleted file mode 100644 index c2c78c4f88..0000000000 --- a/_includes/social-icons/stackoverflow.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/telegram.svg b/_includes/social-icons/telegram.svg deleted file mode 100644 index 40bc43bdc7..0000000000 --- a/_includes/social-icons/telegram.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/twitter.svg b/_includes/social-icons/twitter.svg deleted file mode 100644 index 0f5322f24c..0000000000 --- a/_includes/social-icons/twitter.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-icons/whatsapp.svg b/_includes/social-icons/whatsapp.svg deleted file mode 100644 index 579f08c631..0000000000 --- a/_includes/social-icons/whatsapp.svg +++ /dev/null @@ -1,4 +0,0 @@ - - diff --git a/_includes/social-icons/x.svg b/_includes/social-icons/x.svg deleted file mode 100644 index 1c8360cff6..0000000000 --- a/_includes/social-icons/x.svg +++ /dev/null @@ -1,3 +0,0 @@ - diff --git a/_includes/social-icons/youtube.svg b/_includes/social-icons/youtube.svg deleted file mode 100644 index dfd566102a..0000000000 --- a/_includes/social-icons/youtube.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_includes/social-item.html b/_includes/social-item.html deleted file mode 100644 index 7f2e10195c..0000000000 --- a/_includes/social-item.html +++ /dev/null @@ -1,7 +0,0 @@ -
  • {% assign entry = include.item %} - - - - - -
  • diff --git a/_includes/social.html b/_includes/social.html index 8a4af8b3cf..7c58b4e1f2 100644 --- a/_includes/social.html +++ b/_includes/social.html @@ -1,5 +1,9 @@ diff --git a/_includes/svg_symbol.html b/_includes/svg_symbol.html deleted file mode 100644 index 5c9127ce8b..0000000000 --- a/_includes/svg_symbol.html +++ /dev/null @@ -1,3 +0,0 @@ - - {%- include social-icons/{{ include.key }}.svg -%} - diff --git a/_sass/minima/_layout.scss b/_sass/minima/_layout.scss index 8702c6ecbd..01e64ced15 100644 --- a/_sass/minima/_layout.scss +++ b/_sass/minima/_layout.scss @@ -291,6 +291,9 @@ margin: 0 auto; li { float: left; + min-width: 45px; + min-height: 45px; + text-align: center; margin: 5px 10px 5px 0; &:last-of-type { margin-right: 0 } a { diff --git a/assets/minima-social-icons.liquid b/assets/minima-social-icons.liquid deleted file mode 100644 index d2951faf4e..0000000000 --- a/assets/minima-social-icons.liquid +++ /dev/null @@ -1,18 +0,0 @@ ---- -permalink: /assets/minima-social-icons.svg ---- - - -{% comment %} - Iterate through {{ site.minima.social_links }} and render platform related SVG-symbol - unless the platform is "rss" because we need the "rss" symbol for the `Subscribe` link - in the footer and therefore inject the "rss" icon outside the iteration loop. -{% endcomment %} -{% for entry in site.minima.social_links %} - {%- assign symbol_id = entry.platform -%} - {%- unless symbol_id == "rss" -%} - {%- include svg_symbol.html key = symbol_id -%} - {% endunless %} -{%- endfor -%} - {%- include svg_symbol.html key = "rss" -%} -