jekyll-theme-nix 1.0.8 → 1.1.0

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: f40c9abf12b9b0a2682935d71d972d20638ef679ff90d79deedd9720f8e57957
4
- data.tar.gz: 9e2af799fe0563994ead0d004abf5b17dedda878450812594c1c764a862d2826
3
+ metadata.gz: d93def0d664f81c9cd3d6b933e4fabeb1c6058aab2ad32eaa785cc355bc9323d
4
+ data.tar.gz: 85fc670b4d1e8bc75aba456d8d4ab4bbceb933ae0d53c4000605bd91228c96bc
5
5
  SHA512:
6
- metadata.gz: 6ab96342307ed9e93dfd9257e89f6d25d481ece5693c6d79124fa838c7a624d00c6521105762b406cdfc3f0543179461e0f3b22d6a0d7026e440cad13dc4badb
7
- data.tar.gz: 2853cabd28e2d02b483507d9ec7df9344ca2b564374ef13baea02ddd6129261b03d5e9801db851b413bc620c226857f456c72eb456ac9c618b4e1d4c615f008d
6
+ metadata.gz: 34432d06a237257c66a9359303da2654aff873390f645e5d9e3ca0590d300d2dd901f64f274eba826c480829eea397bceaf5db6be6ca7b09695a2900cc402db2
7
+ data.tar.gz: 577cbff69a5b09d1efc48d120397a47cba64f4c4f6ad71031d2f01613a94153db0d60d2e3c4805d6cddf7768e4e5e4ebbb3ba31d2ee983549104eafaf5e92756
data/README.md CHANGED
@@ -15,11 +15,11 @@ If this theme feels to bloated to you, you can try [“Nixer”](https://github.
15
15
  - Dark mode, because we want to be respectful
16
16
  - Posts
17
17
  - Pages, including custom error pages
18
- - No visible authors, categories, or tags
18
+ - No visible authors, categories, or tags on posts and pages
19
19
  - No header or footer
20
20
  - No pagination for the home page
21
21
  - A feed.xml containing an Atom feed, but no JSON or outdated RSS feeds
22
- - A sitemap.xml, because search engines should index us
22
+ - A sitemap.xml, because search engines should index us properly
23
23
  - No semantic info like Open Graph, Twitter cards, or JSON-LD, but inline Microdata
24
24
 
25
25
  ## Minutiae
@@ -48,7 +48,9 @@ Or, if you will, it could be UNIX without the “U”, because of the theme's so
48
48
 
49
49
  ## Installation
50
50
 
51
- Installation from Gem is recommended, but using a remote theme is also possible, even though it will increase build time a little, depending on your internet connection.
51
+ Installation from Gem is recommended, but using a remote theme is also possible, even though it will increase build time a little, depending on your internet connection, because the theme will be downloaded during each build. Gems are installed locally.
52
+
53
+ GitHub pages gem users need to use the remote theme method.
52
54
 
53
55
  ### Installation from Gem
54
56
 
@@ -64,7 +66,7 @@ And add this line to your Jekyll site's `_config.yml`:
64
66
  theme: jekyll-theme-nix
65
67
  ```
66
68
 
67
- Make sure that this is the only `theme:` in `_config.yml`. Afterwards run `bundle install`.
69
+ Make sure that this is the only `theme:` in `_config.yml`, and that there are no other `remote-theme:`. Afterwards run `bundle install`, and `bundle update` to update it, if there's a new version.
68
70
 
69
71
  ### Installation as Remote Theme
70
72
 
@@ -86,6 +88,8 @@ Finally, add `jekyll-remote-theme` to your plugin section in `_config.yml` as we
86
88
 
87
89
  ## Feed.xml and Sitemap.xml
88
90
 
89
- Both are included in the theme and don't need dependencies to `jekyll-feed` or `jekyll-sitemap`. For a standard Jekyll installation, they work out-of-the-box.
91
+ Both are included in the theme and don't need dependencies to `jekyll-feed` and `jekyll-sitemap` plugins. For a standard Jekyll installation, they work out-of-the-box if both files are copied to the Jekyll directory.
90
92
 
91
93
  If hosted with the Github pages plugin, those plugins are already included and will automatically be used instead. To overwrite this, both files have to be copied manually from the theme's repository root to the site's repository root.
94
+
95
+ Because feeds are generated once, they can only support one icon, which why the light variant was chosen.
data/_config.yml CHANGED
@@ -1,23 +1,42 @@
1
1
  ## Remove URL for Github Pages
2
2
  url: https://jekyll-theme-nix.michaelnordmeyer.com
3
- icon: /icon.webp
4
- icon_dark: /icon-dark.webp
5
- icon_type: image/webp
6
3
  title: Jekyll Theme Nix
7
4
  author:
8
5
  name: Michael Nordmeyer
9
6
  uri: https://jekyll-theme-nix.michaelnordmeyer.com
10
7
  description: "A barebones theme for Jekyll"
11
8
 
12
- timezone: Europe/Berlin
13
- ignore_theme_config: true
14
- exclude: [jekyll-theme-nix*, LICENSE, README.md]
15
- date_format: "%Y-%m-%d"
16
-
17
9
  plugins:
18
10
  - jekyll-include-cache
19
11
  # - jekyll-redirect-from
20
12
 
21
13
  ## Jekyll build settings
14
+ exclude: [jekyll-theme-nix*, LICENSE, Rakefile.rb, README.md]
15
+ ignore_theme_config: true # Since Jekyll 4.0, see: https://jekyllrb.com/docs/themes/#pre-configuring-theme-gems40, https://jekyllrb.com/docs/configuration/options/
22
16
  kramdown:
23
17
  show_warnings: true
18
+ syntax_highlighter_opts:
19
+ disable: true
20
+ liquid:
21
+ # Configure Liquid’s parser
22
+ error_mode: strict # default: warn
23
+ # Configure Liquid’s renderer
24
+ strict_filters: true # default: false
25
+ # strict_variables: true # default: false
26
+ sass:
27
+ style: compressed
28
+ strict_front_matter: true # default: false
29
+ timezone: Europe/Berlin # default: local timezone
30
+ # remote_theme: michaelnordmeyer/jekyll-theme-nix
31
+ # theme: jekyll-theme-nix
32
+
33
+ ## Custom theme settings to not overwrite anything from Jekyll or plugins
34
+ lang: en-US # default: en (is not by Jekyll, but used by many other plugins)
35
+ theme_settings:
36
+ # date_format: "%b %-d, %Y" # default: "%Y-%m-%d"
37
+ favicon: /icon.webp # optional, needs to be 180x180
38
+ favicon_dark: /icon-dark.webp # optional, needs to be 180x180
39
+ favicon_media_type: image/webp # mandatory, if favicon is set
40
+ feed:
41
+ posts_limit: 999
42
+ # title_separator: "|" # default: "•"
@@ -3,8 +3,8 @@
3
3
  <head>
4
4
  <meta charset="utf-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1">
6
- <link rel="icon" type="{{ site.icon_type }}" media="(prefers-color-scheme: light)" href="{{ site.icon | relative_url }}">
7
- <link rel="icon" type="{{ site.icon_type }}" media="(prefers-color-scheme: dark)" href="{{ site.icon_dark | relative_url }}">
6
+ <link rel="icon" type="{{ site.theme_settings.favicon_media_type }}" media="(prefers-color-scheme: light)" href="{{ site.theme_settings.favicon | relative_url }}">
7
+ <link rel="icon" type="{{ site.theme_settings.favicon_media_type }}" media="(prefers-color-scheme: dark)" href="{{ site.theme_settings.favicon_dark | relative_url }}">
8
8
  <style>
9
9
  :root { color-scheme: light dark; }
10
10
  html {
@@ -49,6 +49,6 @@
49
49
  <link type="application/atom+xml" rel="alternate" href="{{ '/feed.xml' | relative_url }}" title="{{ site.title | smartify }}">
50
50
  </head>
51
51
  <body>
52
- {{ content }}
52
+ {{ content }}
53
53
  </body>
54
54
  </html>
data/_layouts/error.html CHANGED
@@ -3,8 +3,8 @@
3
3
  <head>
4
4
  <meta charset="utf-8">
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1">
6
- <link rel="icon" type="{{ site.icon_type }}" media="(prefers-color-scheme: light)" href="{{ site.icon | relative_url }}">
7
- <link rel="icon" type="{{ site.icon_type }}" media="(prefers-color-scheme: dark)" href="{{ site.icon_dark | relative_url }}">
6
+ <link rel="icon" type="{{ site.theme_settings.favicon_media_type }}" media="(prefers-color-scheme: light)" href="{{ site.theme_settings.favicon | relative_url }}">
7
+ <link rel="icon" type="{{ site.theme_settings.favicon_media_type }}" media="(prefers-color-scheme: dark)" href="{{ site.theme_settings.favicon_dark | relative_url }}">
8
8
  <style>
9
9
  :root { color-scheme: light dark; }
10
10
  html {
@@ -39,7 +39,7 @@
39
39
  <h1 itemprop="headline">{{ page.title | smartify }}</h1>
40
40
  </header>
41
41
  <div itemprop="mainContentOfPage" itemscope itemtype="https://schema.org/WebPageElement">
42
- {{ content }}
42
+ {{ content }}
43
43
  </div>
44
44
  </article>
45
45
  </main>
data/_layouts/home.html CHANGED
@@ -5,13 +5,13 @@ layout: default
5
5
  <h1><a rel="author" href="{{ '/' | relative_url }}">{{ site.title }}</a></h1>
6
6
  </header>
7
7
  <main aria-label="Content" itemscope itemtype="https://schema.org/Blog">
8
- {{ content }}
8
+ {{ content }}
9
9
 
10
10
  {%- if site.posts.size > 0 -%}
11
11
  {%- if page.list_title %}
12
12
  <h2>{{ page.list_title | smartify }}</h2>
13
13
  {%- endif -%}
14
- {%- assign date_format = site.date_format | default: "%b %-d, %Y" %}
14
+ {%- assign date_format = site.theme_settings.date_format | default: "%Y-%m-%d" %}
15
15
  <ul>
16
16
  {%- for post in site.posts %}
17
17
  <li itemscope itemtype="https://schema.org/BlogPosting">
data/_layouts/page.html CHANGED
@@ -10,7 +10,7 @@ layout: default
10
10
  <h1 itemprop="headline">{{ page.title | smartify }}</h1>
11
11
  </header>
12
12
  <div itemprop="mainContentOfPage" itemscope itemtype="https://schema.org/WebPageElement">
13
- {{ content }}
13
+ {{ content }}
14
14
  </div>
15
15
  </article>
16
16
  </main>
data/_layouts/post.html CHANGED
@@ -8,11 +8,11 @@ layout: default
8
8
  <article itemscope itemtype="https://schema.org/BlogPosting">
9
9
  <header>
10
10
  <h1 itemprop="headline">{{ page.title | smartify }}</h1>
11
- {%- assign date_format = site.date_format | default: "%b %-d, %Y" %}
11
+ {%- assign date_format = site.theme_settings.date_format | default: "%Y-%m-%d" %}
12
12
  <time itemprop="datePublished" datetime="{{ page.date | date_to_xmlschema }}">{{ page.date | date: date_format }}</time>
13
13
  </header>
14
14
  <div itemprop="articleBody">
15
- {{ content }}
15
+ {{ content }}
16
16
  </div>
17
17
  </article>
18
18
  </main>
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-theme-nix
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Nordmeyer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-12-28 00:00:00.000000000 Z
11
+ date: 2024-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -30,6 +30,20 @@ dependencies:
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: '5.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: jekyll-include-cache
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: 0.2.1
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: 0.2.1
33
47
  description:
34
48
  email:
35
49
  - michaelnordmeyer@users.noreply.github.com
@@ -45,8 +59,6 @@ files:
45
59
  - _layouts/home.html
46
60
  - _layouts/page.html
47
61
  - _layouts/post.html
48
- - feed.xml
49
- - sitemap.xml
50
62
  homepage: https://github.com/michaelnordmeyer/jekyll-theme-nix
51
63
  licenses:
52
64
  - MIT
@@ -66,7 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
66
78
  - !ruby/object:Gem::Version
67
79
  version: '0'
68
80
  requirements: []
69
- rubygems_version: 3.4.17
81
+ rubygems_version: 3.5.3
70
82
  signing_key:
71
83
  specification_version: 4
72
84
  summary: A very minimalistic, single-author Jekyll theme with almost default browser
data/feed.xml DELETED
@@ -1,116 +0,0 @@
1
- ---
2
- permalink: /feed.xml
3
- sitemap: false
4
- layout: none
5
- ---
6
- <?xml version="1.0" encoding="utf-8"?>
7
- {% if page.xsl %}
8
- <?xml-stylesheet type="text/xml" href="{{ '/feed.xslt' | absolute_url }}"?>
9
- {% endif %}
10
- <feed xmlns="http://www.w3.org/2005/Atom" {% if site.lang %}xml:lang="{{ site.lang }}"{% endif %}>
11
- <link href="{{ page.url | absolute_url }}" rel="self" type="application/atom+xml" />
12
- <link href="{{ '/' | absolute_url }}" rel="alternate" type="text/html" {% if site.lang %}hreflang="{{ site.lang }}" {% endif %}/>
13
- <updated>{{ site.time | date_to_xmlschema }}</updated>
14
- <id>{{ page.url | absolute_url | xml_escape }}</id>
15
- {%- if site.icon %}
16
- <icon>{{ site.icon | absolute_url | xml_escape }}</icon>
17
- {%- endif -%}
18
- {%- assign title = site.title | default: site.name -%}
19
- {%- if page.collection and page.collection != "posts" -%}
20
- {%- assign collection = page.collection | capitalize -%}
21
- {%- assign title = title | append: site.title_separator | append: collection -%}
22
- {%- endif -%}
23
- {%- if page.category -%}
24
- {%- assign category = page.category | capitalize -%}
25
- {%- assign title = title | append: site.title_separator | append: category -%}
26
- {%- endif -%}
27
- {%- if title %}
28
- <title>{{ title | strip_html | normalize_whitespace | smartify }}</title>
29
- {%- endif -%}
30
- {%- if site.description %}
31
- <subtitle>{{ site.description | strip_html | normalize_whitespace | smartify }}</subtitle>
32
- {%- endif -%}
33
- {%- if site.author %}
34
- <author>
35
- <name>{{ site.author.name | default: site.author | xml_escape }}</name>
36
- {%- if site.author.email %}
37
- <email>{{ site.author.email | xml_escape }}</email>
38
- {%- endif -%}
39
- {%- if site.author.uri %}
40
- <uri>{{ site.author.uri | xml_escape }}</uri>
41
- {%- endif %}
42
- </author>
43
- {%- endif -%}
44
- {%- comment -%}
45
- {%- if page.tags -%}
46
- {%- assign posts = site.tags[page.tags] -%}
47
- {%- else -%}
48
- {%- assign posts = site[page.collection] -%}
49
- {%- endif -%}
50
- {%- if page.category -%}
51
- {%- assign posts = posts | where: "categories", page.category -%}
52
- {%- endif -%}
53
- {%- endcomment -%}
54
- {%- unless posts -%}
55
- {%- assign posts = site.posts -%}
56
- {%- endunless -%}
57
- {%- unless site.show_drafts -%}
58
- {%- assign posts = posts | where_exp: "post", "post.draft != true" -%}
59
- {%- endunless -%}
60
- {%- assign posts = posts | sort: "date" | reverse -%}
61
- {%- assign posts_limit = site.feed.posts_limit | default: 10 -%}
62
- {%- for post in posts limit: posts_limit %}
63
- <entry{% if post.lang %}{{" "}}xml:lang="{{ post.lang }}"{% endif %}>
64
- {%- assign post_title = post.title | strip_html | normalize_whitespace | smartify %}
65
- <title>{{ post_title }}</title>
66
- <link href="{{ post.url | absolute_url }}" rel="alternate" type="text/html" title="{{ post_title }}" />
67
- <published>{{ post.date | date_to_xmlschema }}</published>
68
- <updated>{{ post.last_modified_at | default: post.date | date_to_xmlschema }}</updated>
69
- <id>{{ post.id | absolute_url | xml_escape }}</id>
70
-
71
- {%- assign post_author = post.author | default: post.authors[0] | default: site.author -%}
72
- {%- assign post_author = site.data.authors[post_author] | default: post_author -%}
73
- {%- assign post_author_email = post_author.email | default: nil -%}
74
- {%- assign post_author_uri = post_author.uri | default: nil -%}
75
- {%- assign post_author_name = post_author.name | default: post_author %}
76
- <author>
77
- <name>{{ post_author_name | default: "" | xml_escape }}</name>
78
- {%- if post_author_email %}
79
- <email>{{ post_author_email | xml_escape }}</email>
80
- {%- endif -%}
81
- {%- if post_author_uri %}
82
- <uri>{{ post_author_uri | xml_escape }}</uri>
83
- {%- endif %}
84
- </author>
85
- {%- if post.category %}
86
- <category term="{{ post.category | xml_escape }}" />
87
- {%- elsif post.categories -%}
88
- {%- for category in post.categories %}
89
- <category term="{{ category | xml_escape }}" />
90
- {%- endfor -%}
91
- {%- endif %}
92
- {%- for tag in post.tags -%}
93
- {%- unless post.categories contains tag %}
94
- <category term="{{ tag | xml_escape }}" />
95
- {%- endunless -%}
96
- {%- endfor -%}
97
- {%- assign post_summary = post.description | default: post.excerpt -%}
98
- {%- if post_summary and post_summary != empty %}
99
- <summary>{{ post_summary | strip_html | normalize_whitespace | smartify }}</summary>
100
- {%- endif -%}
101
-
102
- {%- assign post_image = post.image.path | default: post.image -%}
103
- {%- if post_image -%}
104
- {%- unless post_image contains "://" -%}
105
- {%- assign post_image = post_image | absolute_url | xml_escape -%}
106
- {%- endunless %}
107
- <media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="{{ post_image | xml_escape }}" />
108
- <media:content xmlns:media="http://search.yahoo.com/mrss/" url="{{ post_image | xml_escape }}" medium="image" />
109
- {%- endif -%}
110
- {%- assign excerpt_only = post.feed.excerpt_only | default: site.feed.excerpt_only -%}
111
- {%- unless excerpt_only %}
112
- <content type="html" xml:base="{{ post.url | absolute_url | xml_escape }}"><![CDATA[{{ post.content | smartify }}]]></content>
113
- {%- endunless %}
114
- </entry>
115
- {%- endfor %}
116
- </feed>
data/sitemap.xml DELETED
@@ -1,44 +0,0 @@
1
- ---
2
- permalink: /sitemap.xml
3
- sitemap: false
4
- layout: none
5
- ---
6
- <?xml version="1.0" encoding="UTF-8"?>
7
- {%- if page.xsl %}
8
- <?xml-stylesheet type="text/xsl" href="{{ "/sitemap.xsl" | absolute_url }}"?>
9
- {%- endif %}
10
- <urlset
11
- xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance"
12
- xsi:schemaLocation="https://www.sitemaps.org/schemas/sitemap/0.9 https://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"
13
- xmlns="https://www.sitemaps.org/schemas/sitemap/0.9">
14
- {%- assign collections = site.collections | where_exp:'collection','collection.output != false' -%}
15
- {%- for collection in collections -%}
16
- {%- assign docs = collection.docs | where_exp:'doc','doc.sitemap != false' -%}
17
- {%- for doc in docs %}
18
- <url>
19
- <loc>{{ doc.url | replace:'/index.html','/' | absolute_url | xml_escape }}</loc>
20
- {%- if doc.last_modified_at or doc.date %}
21
- <lastmod>{{ doc.last_modified_at | default: doc.date | date_to_xmlschema }}</lastmod>
22
- {%- endif %}
23
- </url>
24
- {%- endfor -%}
25
- {%- endfor -%}
26
-
27
- {%- assign pages = site.html_pages | where_exp:'doc','doc.sitemap != false' | where_exp:'doc','doc.url != "/404.html"' -%}
28
- {%- for page in pages %}
29
- <url>
30
- <loc>{{ page.url | replace:'/index.html','/' | absolute_url | xml_escape }}</loc>
31
- {%- if page.last_modified_at %}
32
- <lastmod>{{ page.last_modified_at | date_to_xmlschema }}</lastmod>
33
- {%- endif %}
34
- </url>
35
- {%- endfor -%}
36
-
37
- {%- assign static_files = page.static_files | where_exp:'page','page.sitemap != false' | where_exp:'page','page.name != "404.html"' -%}
38
- {%- for file in static_files %}
39
- <url>
40
- <loc>{{ file.path | absolute_url | xml_escape }}</loc>
41
- <lastmod>{{ file.modified_time | date_to_xmlschema }}</lastmod>
42
- </url>
43
- {%- endfor %}
44
- </urlset>