documentor 0.1.1 → 0.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a3ea909169f89f23b597052eb3a0345a5bec689c7a5c538e54e09b8ec0cbf30a
4
- data.tar.gz: a4166a26617b934c198e7891738897062a7c127acd0862e045b60d8bc7caad4b
3
+ metadata.gz: 00e269e315db0d278489d7d7f335135d07c78a0e6860cf9b97509cfcead2c391
4
+ data.tar.gz: 6b224db6973d288918ad3aba95a795500de021d6b8b4f5090fa52d2e7a385b10
5
5
  SHA512:
6
- metadata.gz: ee7ca2b72852277ba183f2a126053b28a2246eccf5ab4293445fdea2696e2c7761936e842a85309879df212a2a3c5987ad780ece1d8cb14e415d70dc60c93ed9
7
- data.tar.gz: 3878b4bda95f011625100a095c060e49edce4282d1cf1b82fd54ddeb8fbbe3ad8de86dcbf57b821cc573c99e1e2a68cfc58e9d513e4a9283d507d6371c8d4315
6
+ metadata.gz: e1da26182635c7ab0b8a2629330016e980192d4503dfc329ea929b34d5cf856eec722ea4e48f6160b7906f6b4d7b049e74830df5ded0bacf19edf524bbc94ce3
7
+ data.tar.gz: a7d543e7e44482378e89838a6cdabec2559971b796acba8be4140ee13307800331a9ab94c1bcb24a7a54b7b7b01f2f4eea2da1a94f2159d9afd7567cd4815f40
data/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # documentor
2
2
 
3
- A minimal theme for technical blogging.
4
-
5
- TODO: Delete this and the text above, and describe your gem
3
+ A minimal theme for technical blogging. Use it as a starting point to build your own or be content with its limited capability.
6
4
 
7
5
  ## Installation
8
6
 
@@ -28,7 +26,77 @@ Or install it yourself as:
28
26
 
29
27
  ## Usage
30
28
 
31
- To translate fixed strings in the theme you need to edit the corresponding file in `./data/i18n/`, e.g. for the string in `404.html` edit `./data/i18n/404.yml`.
29
+ ### General Options
30
+
31
+ ```yaml
32
+ author_obfuscate_email: false
33
+ author_round_mugshot: true
34
+ index_show_header_latest: false
35
+ short_navigation_ignore: [index, categories, page404]
36
+ style_typewriter: true
37
+ style_force_dark: true
38
+ title: YOUR SITE
39
+ ```
40
+
41
+
42
+ ### Adding One or More Authors
43
+
44
+ ```yaml
45
+ collections:
46
+ authors:
47
+ output: true
48
+
49
+ defaults:
50
+ - scope:
51
+ path: ""
52
+ type: "authors"
53
+ values:
54
+ layout: "author"
55
+ - scope:
56
+ path: ""
57
+ type: "posts"
58
+ values:
59
+ layout: "post"
60
+ author: "default_author"
61
+ - scope:
62
+ path: ""
63
+ values:
64
+ layout: "default"
65
+ language: "de"
66
+ ```
67
+
68
+
69
+ add authors like this:
70
+
71
+ create a file like `_authors/yourname.md`:
72
+
73
+ ```md
74
+ ---
75
+ name: Your Name
76
+ author-id: your_id
77
+ email: you@email.address
78
+ github: yourgithubname
79
+ ---
80
+ Your interesting and unique bio.
81
+ ...
82
+ ```
83
+
84
+ In the front matter of your post:
85
+
86
+ ```md
87
+ ---
88
+ author-id: your_id
89
+ ...
90
+ ---
91
+ ```
92
+
93
+
94
+ ###
95
+
96
+
97
+ ### Adapting the Theme to Your Language
98
+
99
+ To translate fixed strings in the theme you need to edit the corresponding file in `./data/i18n/`, e.g. for the string in `page404.html` edit `./data/i18n/page404.yml`.
32
100
 
33
101
  ## Contributing
34
102
 
@@ -38,7 +106,7 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/random
38
106
 
39
107
  To set up your environment to develop this theme, run `bundle install`.
40
108
 
41
- Your theme is setup just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.
109
+ Your theme is setup just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve --livereload` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.
42
110
 
43
111
  When your theme is released, only the files in `_layouts`, `_includes`, `_sass` and `assets` tracked with Git will be bundled.
44
112
  To add a custom directory to your theme-gem, please edit the regexp in `documentor.gemspec` accordingly.
data/_config.yml CHANGED
@@ -1,33 +1,9 @@
1
- # url:
2
- #description: Some description or other.
3
-
4
- # add authors like this:
5
- #
6
- # create a file like `_authors/yourname.md`:
7
- #
8
- # ---
9
- # name: Your Name
10
- # author-id: your_id
11
- # email: you@email.address
12
- # github: yourgithubname
13
- # ---
14
- # Your interesting and unique bio.
15
- # ...
16
- #
17
- #
18
- # In the front matter of your post:
19
- #
20
- # ---
21
- # author-id: your_id
22
- # ...
23
- # ---
24
- #
25
-
1
+ author_obfuscate_email: false
26
2
  author_round_mugshot: true
27
3
  index_show_header_latest: false
28
4
  short_navigation_ignore: [index, categories, page404]
29
5
  style_typewriter: true
30
- style_force_dark: true
6
+ style_dark_bright: auto
31
7
  title: YOUR SITE
32
8
 
33
9
  collections:
data/_layouts/author.html CHANGED
@@ -16,7 +16,7 @@ layout: base
16
16
  {{ content }}
17
17
  <ul>
18
18
  {% if page.email %}
19
- <li>{{ site.data.i18n.author_email }}<a href="mailto:{{ page.email }}">{{ page.email }}</a></li>
19
+ <li>{{ site.data.i18n.author_email }}{% if site.author_obfuscate_email %}{{ page.email | obfuscate_email }}{% else %}<a href="mailto:{{ page.email }}">{{ page.email }}</a>{% endif %}</li>
20
20
  {% endif %}
21
21
  {% if page.github %}
22
22
  <li>{{ site.data.i18n.author_github }}<a href="https://github.com/{{ page.github }}">{{ page.github }}</a></li>
data/_layouts/base.html CHANGED
@@ -10,7 +10,7 @@
10
10
  <link rel="stylesheet" href="{{ '/assets/css/main.css' | relative_url }}" />
11
11
  </head>
12
12
 
13
- <body class="{% if site.style_typewriter %}typewriter{% endif %}{% if site.style_force_dark %} dark{% endif %}">
13
+ <body class="{% if site.style_typewriter %}typewriter{% endif %}{% if site.style_dark_bright == 'bright' %} bright{% elsif site.style_dark_dark == 'dark' %} dark{% endif %}">
14
14
  {{ content }}
15
15
  </body>
16
16
  </html>
data/assets/css/main.css CHANGED
@@ -1,3 +1,73 @@
1
+ /**
2
+ * colors
3
+ */
4
+
5
+ :root, .bright {
6
+ --color-background: #FFFFFF;
7
+ --color-surface: #FFFFFF;
8
+ --color-onsurface: #3F3F3F;
9
+ --color-surfacecontainerlowest: #F6F6F6;
10
+ --color-onsurfacecontainerlowest: #0D0D0D;
11
+ --color-surfacecontainerlow: #F5F5F5;
12
+ --color-onsurfacecontainerlow: #232323;
13
+ --color-surfacecontainer: #F2F2F2;
14
+ --color-onsurfacecontainer: #1C1C1C;
15
+ --color-surfacecontainerhigh: #EEEEEE;
16
+ --color-onsurfacecontainerhigh: #323232;
17
+ --color-surfacecontainerhighest: #6F6F6F;
18
+ --color-onsurfacecontainerhighest: #FFFFFF;
19
+ --color-primary: rgb(128,0,0);
20
+ --color-onprimary: #FFFFFF;
21
+ --color-primarycontainer: #CCCCCC;
22
+ --color-onprimarycontainer: #FFFFFF;
23
+ }
24
+
25
+ @media screen and (prefers-color-scheme: dark) {
26
+ :root {
27
+ --color-background: #121212;
28
+ --color-surface: #121212;
29
+ --color-onsurface: #F3F3F3;
30
+ --color-surfacecontainerlowest: #1F1F1F;
31
+ --color-onsurfacecontainerlowest: #FFFFFF;
32
+ --color-surfacecontainerlow: #212121;
33
+ --color-onsurfacecontainerlow: #FFFFFF;
34
+ --color-surfacecontainer: #3232323;
35
+ --color-onsurfacecontainer: #FFFFFF;
36
+ --color-surfacecontainerhigh: #6F6F6F;
37
+ --color-onsurfacecontainerhigh: #FFFFFF;
38
+ --color-surfacecontainerhighest: #848482;
39
+ --color-onsurfacecontainerhighest: #FFFFFF;
40
+ --color-primary: rgb(128,0,0);
41
+ --color-onprimary: #FFFFFF;
42
+ --color-primarycontainer: #CCCCCC;
43
+ --color-onprimarycontainer: #FFFFFF;
44
+ }
45
+ }
46
+
47
+ .dark {
48
+ --color-background: #121212;
49
+ --color-surface: #121212;
50
+ --color-onsurface: #F3F3F3;
51
+ --color-surfacecontainerlowest: #1F1F1F;
52
+ --color-onsurfacecontainerlowest: #FFFFFF;
53
+ --color-surfacecontainerlow: #212121;
54
+ --color-onsurfacecontainerlow: #FFFFFF;
55
+ --color-surfacecontainer: #3232323;
56
+ --color-onsurfacecontainer: #FFFFFF;
57
+ --color-surfacecontainerhigh: #6F6F6F;
58
+ --color-onsurfacecontainerhigh: #FFFFFF;
59
+ --color-surfacecontainerhighest: #848482;
60
+ --color-onsurfacecontainerhighest: #FFFFFF;
61
+ --color-primary: rgb(128,0,0);
62
+ --color-onprimary: #FFFFFF;
63
+ --color-primarycontainer: #CCCCCC;
64
+ --color-onprimarycontainer: #FFFFFF;
65
+ }
66
+
67
+ /**
68
+ * fonts
69
+ */
70
+
1
71
  @font-face {
2
72
  font-family: 'MenuRegular';
3
73
  src: url('../fonts/pixeldroidMenuRegular/pixeldroidMenuRegular.otf'), '../fonts/pixeldroidMenuRegular/pixeldroidMenuRegular.ttf') format('truetype'), url('../fonts/pixeldroidMenuRegular/pixeldroidMenuRegular-64.fnt') format('fnt');
@@ -11,6 +81,19 @@
11
81
  font-style: normal;
12
82
  }
13
83
 
84
+
85
+ /**
86
+ * general
87
+ */
88
+
89
+ :root {
90
+ --width-page: 90%;
91
+ --width-page-vw: 90vw;
92
+ --width-indent-page: 2rem;
93
+ --width-padding: 1rem;
94
+ }
95
+
96
+
14
97
  body {
15
98
  font-family: serif;
16
99
  color: var(--color-onsurface);
@@ -22,7 +105,7 @@ body, .container {
22
105
  }
23
106
 
24
107
  .container {
25
- width: 90%;
108
+ width: var(--width-page);
26
109
  max-width: 64rem;
27
110
  margin: auto;
28
111
  display: grid;
@@ -31,7 +114,7 @@ body, .container {
31
114
  grid-template-areas:
32
115
  "header"
33
116
  "main"
34
- "footer"
117
+ "footer";
35
118
  }
36
119
 
37
120
  /**
@@ -167,12 +250,12 @@ body, .container {
167
250
 
168
251
  .page {
169
252
  main& {
170
- padding: 0 0 0 2rem;
253
+ padding: 0 0 0 var(--width-indent-page);
171
254
  }
172
255
 
173
256
  header {
174
257
  text-align: center;
175
- margin-left: -2rem;
258
+ margin-left: calc(-1 * var(--width-indent-page));
176
259
  margin-bottom: 2rem;
177
260
 
178
261
  p {
@@ -186,10 +269,18 @@ body, .container {
186
269
 
187
270
  h2 {
188
271
  text-transform: uppercase;
189
- margin-left: -2rem;
272
+ margin-left: calc(-1 * var(--width-indent-page));
190
273
  font-weight: normal;
191
274
  }
192
275
 
276
+ a {
277
+ text-overflow: ellipsis;
278
+ overflow: hidden;
279
+ white-space: nowrap;
280
+ display: inline-block;
281
+ max-width: calc(var(--width-page-vw) - var(--width-indent-page));
282
+ }
283
+
193
284
  p, li {
194
285
  line-height: 1.5;
195
286
  }
@@ -203,11 +294,14 @@ body, .container {
203
294
  }
204
295
 
205
296
  pre {
206
- margin-left: -1rem;
207
- padding: 1rem;
297
+ margin-left: calc(-1 * var(--width-padding));
298
+ padding: var(--width-padding);
208
299
  border-style: solid;
209
300
  border-width: 0 0 0 calc(1rem / 16);
210
301
  font-family: mono;
302
+ width: calc(var(--width-page-vw) - var(--width-padding));
303
+ /*width: 300px;*/
304
+ overflow-x: auto;
211
305
  }
212
306
 
213
307
  code, pre {
@@ -1,67 +1,3 @@
1
- /* colors */
2
-
3
- :root {
4
- --color-background: #FFFFFF;
5
- --color-surface: #FFFFFF;
6
- --color-onsurface: #3F3F3F;
7
- --color-surfacecontainerlowest: #F6F6F6;
8
- --color-onsurfacecontainerlowest: #0D0D0D;
9
- --color-surfacecontainerlow: #F5F5F5;
10
- --color-onsurfacecontainerlow: #232323;
11
- --color-surfacecontainer: #F2F2F2;
12
- --color-onsurfacecontainer: #1C1C1C;
13
- --color-surfacecontainerhigh: #EEEEEE;
14
- --color-onsurfacecontainerhigh: #323232;
15
- --color-surfacecontainerhighest: #6F6F6F;
16
- --color-onsurfacecontainerhighest: #FFFFFF;
17
- --color-primary: rgb(128,0,0);
18
- --color-onprimary: #FFFFFF;
19
- --color-primarycontainer: #CCCCCC;
20
- --color-onprimarycontainer: #FFFFFF;
21
- }
22
-
23
- @media screen and (prefers-color-scheme: dark) {
24
- :root {
25
- --color-background: #121212;
26
- --color-surface: #121212;
27
- --color-onsurface: #F3F3F3;
28
- --color-surfacecontainerlowest: #1F1F1F;
29
- --color-onsurfacecontainerlowest: #FFFFFF;
30
- --color-surfacecontainerlow: #212121;
31
- --color-onsurfacecontainerlow: #FFFFFF;
32
- --color-surfacecontainer: #3232323;
33
- --color-onsurfacecontainer: #FFFFFF;
34
- --color-surfacecontainerhigh: #6F6F6F;
35
- --color-onsurfacecontainerhigh: #FFFFFF;
36
- --color-surfacecontainerhighest: #848482;
37
- --color-onsurfacecontainerhighest: #FFFFFF;
38
- --color-primary: rgb(128,0,0);
39
- --color-onprimary: #FFFFFF;
40
- --color-primarycontainer: #CCCCCC;
41
- --color-onprimarycontainer: #FFFFFF;
42
- }
43
- }
44
-
45
- .dark {
46
- --color-background: #121212;
47
- --color-surface: #121212;
48
- --color-onsurface: #F3F3F3;
49
- --color-surfacecontainerlowest: #1F1F1F;
50
- --color-onsurfacecontainerlowest: #FFFFFF;
51
- --color-surfacecontainerlow: #212121;
52
- --color-onsurfacecontainerlow: #FFFFFF;
53
- --color-surfacecontainer: #3232323;
54
- --color-onsurfacecontainer: #FFFFFF;
55
- --color-surfacecontainerhigh: #6F6F6F;
56
- --color-onsurfacecontainerhigh: #FFFFFF;
57
- --color-surfacecontainerhighest: #848482;
58
- --color-onsurfacecontainerhighest: #FFFFFF;
59
- --color-primary: rgb(128,0,0);
60
- --color-onprimary: #FFFFFF;
61
- --color-primarycontainer: #CCCCCC;
62
- --color-onprimarycontainer: #FFFFFF;
63
- }
64
-
65
1
  /* reset */
66
2
 
67
3
  *, *::before, *::after {
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: documentor
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - randomchars42
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2025-04-25 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: jekyll
@@ -24,7 +23,6 @@ dependencies:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
25
  version: '4.4'
27
- description:
28
26
  email:
29
27
  - randomchars42@users.noreply.github.com
30
28
  executables: []
@@ -66,7 +64,6 @@ homepage: https://pixelwoelkchen.de
66
64
  licenses:
67
65
  - MIT
68
66
  metadata: {}
69
- post_install_message:
70
67
  rdoc_options: []
71
68
  require_paths:
72
69
  - lib
@@ -81,8 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
81
78
  - !ruby/object:Gem::Version
82
79
  version: '0'
83
80
  requirements: []
84
- rubygems_version: 3.4.20
85
- signing_key:
81
+ rubygems_version: 3.6.8
86
82
  specification_version: 4
87
83
  summary: Down to the point theme for jekyll.
88
84
  test_files: []