aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMitja Felicijan <mitja.felicijan@gmail.com>2025-02-09 03:34:10 +0100
committerMitja Felicijan <mitja.felicijan@gmail.com>2025-02-09 03:34:10 +0100
commit24fa9b6b84b233181b9c624826be5dd901fbe7d1 (patch)
treecfbe8290017875cd4bb01a8a2188e94aeeaa6b61
parent65f8e680c62f7f22587d839d7c76adfef0dab782 (diff)
downloadmitjafelicijan.com-24fa9b6b84b233181b9c624826be5dd901fbe7d1.tar.gz
New style
-rw-r--r--static/assets/general/trigraphs.gifbin0 -> 1591995 bytes
-rw-r--r--templates/404.html131
-rw-r--r--templates/base.html277
-rw-r--r--templates/feed.xml40
-rw-r--r--templates/index.html107
-rw-r--r--templates/note.html46
-rw-r--r--templates/page.html10
-rw-r--r--templates/post.html39
8 files changed, 209 insertions, 441 deletions
diff --git a/static/assets/general/trigraphs.gif b/static/assets/general/trigraphs.gif
new file mode 100644
index 0000000..f093062
--- /dev/null
+++ b/static/assets/general/trigraphs.gif
Binary files differ
diff --git a/templates/404.html b/templates/404.html
index 58deeee..b799f4d 100644
--- a/templates/404.html
+++ b/templates/404.html
@@ -1,107 +1,30 @@
1<!doctype html> 1<!doctype html>
2<html lang="{{ .Config.Language }}"> 2<html lang="{{ .Config.Language }}">
3 <head> 3 <head>
4 <meta charset="utf-8" /> 4 <meta charset="utf-8" />
5 <meta name="viewport" content="width=device-width,initial-scale=1" /> 5 <meta name="viewport" content="width=device-width,initial-scale=1" />
6 <title>{{ block "title" . }}{{ .Config.Title }}{{ end }} - 404</title> 6 <title>{{ block "title" . }}{{ .Config.Title }}{{ end }} - 404</title>
7 <meta name="description" content="{{ block "description" . }}{{ .Config.Description }}{{ end }}"/> 7 <meta name="description" content="{{ block "description" . }}{{ .Config.Description }}{{ end }}"/>
8 <link rel="alternate" type="application/rss+xml" href="{{ .Config.BaseURL }}/index.xml" /> 8 <link rel="alternate" type="application/rss+xml" href="{{ .Config.BaseURL }}/index.xml" />
9 <link href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL69vf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv76+/8LBwQkAAAAAAAAAAAAAAAC+vb3/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+9vf/Bv78JAAAAAAAAAAAAAAAAu7q6/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7ubr/vr29CAAAAAAAAAAAy8nJAZ6foP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnqGj/6GipAoAAAAAHLjU/xcXHf/BwsL/I8XY/yPK3v8XGiD/IbjL/yPF2f8XGiD/Fxkf/yLF2f8gnK3/Fxog/62ztv8fwNf/FRcd/x271v8mz93/GRsi/xkXHf8p097/GiIp/xobIv8p0t3/KdPe/xocIv8fYmr/KNPe/xoZH/8aHCL/J87c/xy81/8VFxz/IsPZ/8zS0/8XGiD/Ir/R/yPH2/8XGiD/Fxkf/yPH2/8dd4T/GBog/yPJ3f8jyNr/uru9/xcUGv8cudb/EhITDKi5vRKlvMP/RUpOERwcHRAdOj4QHTk8EBwdHRAdNTgQHTo/EBwcHRAcHB0QSGduEKW4vf+koqQfHzg+EBqz0ewSFRv7EyMr/xq51vsTERb7ExUb+xq41fsau9j7ExUb+xiPp/sZudb7ExUb+xMVG/sZuNX/GKvI/BIUGfMdvdn/IrfL/xcaIP8n1eb/J9Dh/xkcIf8ZGR7/J8/f/xxCSv8ZGyH/J9Dg/ybQ4P8ZHCL/FSQs/yPK3/8UExj/GE1b/ybS5P8ZGB7/Ghwj/ynW5P8p2Ob/Ghwi/yWrtv8p1eH/Ghwi/xocIv8p1uT/J8XT/xkcIv8m1un/Hb7d/xUYH/8hzOr/HtHu/xcaIf8XGB//I8vi/xgxOv8XGSD/I8rg/yPK4P8XGiD/GUFL/yPP6f8SERj/Fhkh/x3A4f8AAAAAJ2f9/ydr//8mZPH/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlYu38J2v//ydo/f8AAAAAAAAAAAd8/fkFqf//Iob8sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMY39awWr//8FfP3/AAAAAAAAAAAFm/7/SfD//wR+/f8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOB/f9B7v//BaX+/wAAAAAAAAAAQ878SAyZ/v9n1v4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu9v8DDJb+/z3N/XgAAAAA3/sAAN/7AADf+wAA3/sAAAAAAAAAAAAAAAAAAN/7AAAAAAAAAAAAAAAAAAAAAAAAj/EAAI/5AACP8QAA3/sAAA==" rel="icon" type="image/x-icon" /> 9 <link href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL69vf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv76+/8LBwQkAAAAAAAAAAAAAAAC+vb3/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+9vf/Bv78JAAAAAAAAAAAAAAAAu7q6/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7ubr/vr29CAAAAAAAAAAAy8nJAZ6foP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnqGj/6GipAoAAAAAHLjU/xcXHf/BwsL/I8XY/yPK3v8XGiD/IbjL/yPF2f8XGiD/Fxkf/yLF2f8gnK3/Fxog/62ztv8fwNf/FRcd/x271v8mz93/GRsi/xkXHf8p097/GiIp/xobIv8p0t3/KdPe/xocIv8fYmr/KNPe/xoZH/8aHCL/J87c/xy81/8VFxz/IsPZ/8zS0/8XGiD/Ir/R/yPH2/8XGiD/Fxkf/yPH2/8dd4T/GBog/yPJ3f8jyNr/uru9/xcUGv8cudb/EhITDKi5vRKlvMP/RUpOERwcHRAdOj4QHTk8EBwdHRAdNTgQHTo/EBwcHRAcHB0QSGduEKW4vf+koqQfHzg+EBqz0ewSFRv7EyMr/xq51vsTERb7ExUb+xq41fsau9j7ExUb+xiPp/sZudb7ExUb+xMVG/sZuNX/GKvI/BIUGfMdvdn/IrfL/xcaIP8n1eb/J9Dh/xkcIf8ZGR7/J8/f/xxCSv8ZGyH/J9Dg/ybQ4P8ZHCL/FSQs/yPK3/8UExj/GE1b/ybS5P8ZGB7/Ghwj/ynW5P8p2Ob/Ghwi/yWrtv8p1eH/Ghwi/xocIv8p1uT/J8XT/xkcIv8m1un/Hb7d/xUYH/8hzOr/HtHu/xcaIf8XGB//I8vi/xgxOv8XGSD/I8rg/yPK4P8XGiD/GUFL/yPP6f8SERj/Fhkh/x3A4f8AAAAAJ2f9/ydr//8mZPH/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlYu38J2v//ydo/f8AAAAAAAAAAAd8/fkFqf//Iob8sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMY39awWr//8FfP3/AAAAAAAAAAAFm/7/SfD//wR+/f8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOB/f9B7v//BaX+/wAAAAAAAAAAQ878SAyZ/v9n1v4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu9v8DDJb+/z3N/XgAAAAA3/sAAN/7AADf+wAA3/sAAAAAAAAAAAAAAAAAAN/7AAAAAAAAAAAAAAAAAAAAAAAAj/EAAI/5AACP8QAA3/sAAA==" rel="icon" type="image/x-icon" />
10 <style> 10 <script defer src="https://app.tinyanalytics.io/pixel/isfRNEahfHiS2Ttp"></script>
11 :root { 11 </head>
12 --body-max-width: 860px; 12 <body>
13 --link-color: blue; 13 <main>
14 --code-background: #f8f8f8; 14 <h1>404</h1>
15 --inline-code-background: #f2f2f2; 15 <p><strong>Page not found :(</strong></p>
16 } 16 <p>The requested page could not be found. Such is life!</p>
17 17
18 *::selection { 18 <strong>Check out the following pages</strong>
19 background: var(--link-color); 19 <ul>
20 color: #ffffff; 20 <li><a href="/">Home</a></li>
21 } 21 <li><a href="/projects.html">Recent projects</a></li>
22 22 <li><a href="https://github.com/mitjafelicijan" target="_blank">Code on GitHub</a></li>
23 *::-moz-selection { 23 <li><a href="https://github.com/mitjafelicijan/probe" target="_blank">Probe repository</a></li>
24 background: var(--link-color); 24 <li><a href="https://github.com/mitjafelicijan/dotfiles" target="_blank">My dotfiles</a></li>
25 color: #ffffff; 25 <li><a href="/curriculum-vitae.html">CV</a></li>
26 } 26 <li><a href="/feed.xml">RSS</a></li>
27 27 </ul>
28 *::-webkit-selection { 28 </main>
29 background: var(--link-color); 29 </body>
30 color: #ffffff;
31 }
32
33 body {
34 padding: 2rem;
35 max-width: var(--body-max-width);
36 background: white;
37 font-family: sans-serif;
38 line-height: 1.4rem;
39 font-size: 16px;
40 display: flex;
41 flex-direction: column;
42 gap: 1em;
43 }
44
45 header nav {
46 display: flex;
47 gap: 1em;
48 }
49
50 h1 {
51 margin: 30px 0;
52 font-size: 4em;
53 line-height: 1;
54 letter-spacing: -1px;
55 }
56
57 @media only screen and (max-width: 600px) {
58 body {
59 padding: 0.5em;
60 word-wrap: break-word;
61 }
62
63 header nav {
64 gap: 0.7rem;
65 }
66
67 a {
68 word-wrap: break-word;
69 }
70 }
71 </style>
72 <script defer src="https://app.tinyanalytics.io/pixel/isfRNEahfHiS2Ttp"></script>
73 </head>
74 <body>
75 <header>
76 <nav>
77 <a href="/">Home</a>
78 <a href="https://github.com/mitjafelicijan" target="_blank">Code</a>
79 <a href="/assets/mitjafelicijan.pgp.pub.txt">PGP</a>
80 <a href="/assets/urls.txt">Newsboat</a>
81 <a href="/curriculum-vitae.html">CV</a>
82 <a href="/feed.xml">RSS</a>
83 </nav>
84 </header>
85 <main>
86 <h1>404</h1>
87 <p><strong>Page not found :(</strong></p>
88 <p>The requested page could not be found. Such is life!</p>
89 </main>
90 <footer>
91 <hr>
92 <p><big><strong>Want to comment or have something to add?</strong></big></p>
93 <p>
94 You can write me an email
95 at <a href="mailto:mitja.felicijan@gmail.com">mitja.felicijan@gmail.com</a> or
96 catch up with me <a href="https://telegram.me/mitjafelicijan" target="_blank">on Telegram</a>.
97 </p>
98 <hr>
99 <p>
100 <small>
101 This page's is also available as <a href="/feed.xml" target="_blank">RSS feed</a>.
102 Page was built with <a href="https://github.com/mitjafelicijan/jbmafp" target="_blank">jbmafp</a>.
103 </small>
104 </p>
105 </footer>
106 </body>
107</html> 30</html>
diff --git a/templates/base.html b/templates/base.html
index d1be68a..ab2bff4 100644
--- a/templates/base.html
+++ b/templates/base.html
@@ -1,215 +1,68 @@
1<!doctype html> 1<!doctype html>
2<html lang="{{ .Config.Language }}"> 2<html lang="{{ .Config.Language }}">
3 <head> 3 <head>
4 <meta charset="utf-8" /> 4 <meta charset="utf-8" />
5 <meta name="viewport" content="width=device-width,initial-scale=1" /> 5 <meta name="viewport" content="width=device-width,initial-scale=1" />
6 <title>{{ block "title" . }}{{ .Config.Title }}{{ end }}</title> 6
7 <meta name="description" content="{{ block "description" . }}{{ .Config.Description }}{{ end }}"/> 7 <title>{{ block "title" . }}{{ .Config.Title }}{{ end }}</title>
8 <link rel="alternate" type="application/rss+xml" href="{{ .Config.BaseURL }}/index.xml" /> 8 <meta name="description" content="{{ block "description" . }}{{ .Config.Description }}{{ end }}"/>
9 <link href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL69vf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv76+/8LBwQkAAAAAAAAAAAAAAAC+vb3/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+9vf/Bv78JAAAAAAAAAAAAAAAAu7q6/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7ubr/vr29CAAAAAAAAAAAy8nJAZ6foP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnqGj/6GipAoAAAAAHLjU/xcXHf/BwsL/I8XY/yPK3v8XGiD/IbjL/yPF2f8XGiD/Fxkf/yLF2f8gnK3/Fxog/62ztv8fwNf/FRcd/x271v8mz93/GRsi/xkXHf8p097/GiIp/xobIv8p0t3/KdPe/xocIv8fYmr/KNPe/xoZH/8aHCL/J87c/xy81/8VFxz/IsPZ/8zS0/8XGiD/Ir/R/yPH2/8XGiD/Fxkf/yPH2/8dd4T/GBog/yPJ3f8jyNr/uru9/xcUGv8cudb/EhITDKi5vRKlvMP/RUpOERwcHRAdOj4QHTk8EBwdHRAdNTgQHTo/EBwcHRAcHB0QSGduEKW4vf+koqQfHzg+EBqz0ewSFRv7EyMr/xq51vsTERb7ExUb+xq41fsau9j7ExUb+xiPp/sZudb7ExUb+xMVG/sZuNX/GKvI/BIUGfMdvdn/IrfL/xcaIP8n1eb/J9Dh/xkcIf8ZGR7/J8/f/xxCSv8ZGyH/J9Dg/ybQ4P8ZHCL/FSQs/yPK3/8UExj/GE1b/ybS5P8ZGB7/Ghwj/ynW5P8p2Ob/Ghwi/yWrtv8p1eH/Ghwi/xocIv8p1uT/J8XT/xkcIv8m1un/Hb7d/xUYH/8hzOr/HtHu/xcaIf8XGB//I8vi/xgxOv8XGSD/I8rg/yPK4P8XGiD/GUFL/yPP6f8SERj/Fhkh/x3A4f8AAAAAJ2f9/ydr//8mZPH/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlYu38J2v//ydo/f8AAAAAAAAAAAd8/fkFqf//Iob8sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMY39awWr//8FfP3/AAAAAAAAAAAFm/7/SfD//wR+/f8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOB/f9B7v//BaX+/wAAAAAAAAAAQ878SAyZ/v9n1v4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu9v8DDJb+/z3N/XgAAAAA3/sAAN/7AADf+wAA3/sAAAAAAAAAAAAAAAAAAN/7AAAAAAAAAAAAAAAAAAAAAAAAj/EAAI/5AACP8QAA3/sAAA==" rel="icon" type="image/x-icon" /> 9
10 <meta name="theme-color" content="#0000ff"> 10 <link rel="alternate" type="application/rss+xml" href="{{ .Config.BaseURL }}/index.xml" />
11 <style> 11 <link href="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL69vf8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv76+/8LBwQkAAAAAAAAAAAAAAAC+vb3/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL+9vf/Bv78JAAAAAAAAAAAAAAAAu7q6/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC7ubr/vr29CAAAAAAAAAAAy8nJAZ6foP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnqGj/6GipAoAAAAAHLjU/xcXHf/BwsL/I8XY/yPK3v8XGiD/IbjL/yPF2f8XGiD/Fxkf/yLF2f8gnK3/Fxog/62ztv8fwNf/FRcd/x271v8mz93/GRsi/xkXHf8p097/GiIp/xobIv8p0t3/KdPe/xocIv8fYmr/KNPe/xoZH/8aHCL/J87c/xy81/8VFxz/IsPZ/8zS0/8XGiD/Ir/R/yPH2/8XGiD/Fxkf/yPH2/8dd4T/GBog/yPJ3f8jyNr/uru9/xcUGv8cudb/EhITDKi5vRKlvMP/RUpOERwcHRAdOj4QHTk8EBwdHRAdNTgQHTo/EBwcHRAcHB0QSGduEKW4vf+koqQfHzg+EBqz0ewSFRv7EyMr/xq51vsTERb7ExUb+xq41fsau9j7ExUb+xiPp/sZudb7ExUb+xMVG/sZuNX/GKvI/BIUGfMdvdn/IrfL/xcaIP8n1eb/J9Dh/xkcIf8ZGR7/J8/f/xxCSv8ZGyH/J9Dg/ybQ4P8ZHCL/FSQs/yPK3/8UExj/GE1b/ybS5P8ZGB7/Ghwj/ynW5P8p2Ob/Ghwi/yWrtv8p1eH/Ghwi/xocIv8p1uT/J8XT/xkcIv8m1un/Hb7d/xUYH/8hzOr/HtHu/xcaIf8XGB//I8vi/xgxOv8XGSD/I8rg/yPK4P8XGiD/GUFL/yPP6f8SERj/Fhkh/x3A4f8AAAAAJ2f9/ydr//8mZPH/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAlYu38J2v//ydo/f8AAAAAAAAAAAd8/fkFqf//Iob8sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMY39awWr//8FfP3/AAAAAAAAAAAFm/7/SfD//wR+/f8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOB/f9B7v//BaX+/wAAAAAAAAAAQ878SAyZ/v9n1v4KAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADu9v8DDJb+/z3N/XgAAAAA3/sAAN/7AADf+wAA3/sAAAAAAAAAAAAAAAAAAN/7AAAAAAAAAAAAAAAAAAAAAAAAj/EAAI/5AACP8QAA3/sAAA==" rel="icon" type="image/x-icon" />
12 :root { 12
13 --link-color: blue; 13 <style>
14 --code-background: #fafafa; 14 html { scroll-padding: 2rem; }
15 --code-border: #aaa; 15 body { display: grid; gap: 2em; grid-template-columns: 14em auto; max-width: 100vw; line-height: 130%; }
16 --inline-code-background: #efefef; 16 h1, h2, h3, h4, h5, h6 { line-height: 120%; }
17 } 17 img, video, audio { max-width: 100%; }
18 18 pre { background: #f5f5f5 !important; text-wrap: wrap; padding: 0.5em; }
19 *::selection { 19 code { background: #f5f5f5; }
20 background: var(--link-color); 20 table { width: 100%; }
21 color: #ffffff; 21 @media only screen and (max-width: 720px) {
22 } 22 body { display: block; }
23 23 main { margin: 1em 0; }
24 *::-moz-selection { 24 .hide-on-mobile { display: none; }
25 background: var(--link-color); 25 }
26 color: #ffffff; 26 /* Fixes embeds going to center. */
27 } 27 article iframe { margin: 0!important; }
28 28 /* Fix desktop and mobile code when font sizes are all over the place. */
29 *::-webkit-selection { 29 pre code span { display: initial !important; }
30 background: var(--link-color); 30 </style>
31 color: #ffffff; 31 <script defer src="https://app.tinyanalytics.io/pixel/isfRNEahfHiS2Ttp"></script>
32 } 32 </head>
33 33
34 html { 34 <body>
35 scroll-padding: 2rem; 35 <aside>
36 } 36 <p>You do not learn by relaxing. You learn by violently assaulting your problem until it surrenders its mysteries to you.</p>
37 37 <strong>About</strong>
38 body { 38 <ul>
39 padding: 1em; 39 <li><a href="/">Home</a></li>
40 background: white; 40 <li><a href="/projects.html">Recent projects</a></li>
41 line-height: 1.3; 41 <li><a href="https://github.com/mitjafelicijan" target="_blank">Code on GitHub</a></li>
42 font-family: sans-serif; 42 <li><a href="https://github.com/mitjafelicijan/probe" target="_blank">Probe repository</a></li>
43 max-width: 700px; 43 <li><a href="https://github.com/mitjafelicijan/dotfiles" target="_blank">My dotfiles</a></li>
44 margin: 0 auto; 44 <li><a href="/curriculum-vitae.html">CV</a></li>
45 display: flex; 45 <li><a href="/feed.xml">RSS</a></li>
46 flex-direction: column; 46 </ul>
47 gap: 1em; 47 </aside>
48 } 48
49 49 <main>
50 header nav { 50 <div>
51 display: flex; 51 {{ block "content" . }}{{ end }}
52 align-items: center; 52 </div>
53 gap: 1em; 53
54 } 54 <footer>
55 55 <hr>
56 h1, h2, h3 { 56 <p><big><strong>Want to comment or have something to add?</strong></big></p>
57 line-height: initial; 57 <p>You can write me an email at <a href="mailto:mitja.felicijan@gmail.com">mitja.felicijan@gmail.com</a> or catch up with me <a href="https://telegram.me/mitjafelicijan" target="_blank">on Telegram</a>.</p>
58 } 58 <hr>
59 59 <p><small>This page's is also available as <a href="/feed.xml" target="_blank">RSS feed</a>. Page was built with <a href="https://github.com/mitjafelicijan/jbmafp" target="_blank">jbmafp</a>.</small></p>
60 h2, h3 { 60 </footer>
61 margin-block-start: 1em; 61 </main>
62 } 62
63 63 <script>
64 h1 { 64 document.querySelectorAll("table").forEach(t => t.setAttribute("border", 1));
65 font-size: xx-large; 65 </script>
66 line-height: 110%; 66 </body>
67 }
68
69 mark { padding: 0 0.3em; background-color: chartreuse; }
70 cap { text-transform: capitalize; }
71 ul li { padding: 0.1em 0; }
72
73 table td, table th {
74 padding: 0.1em 0.3em;
75 }
76
77 a {
78 color: var(--link-color);
79 text-decoration: none;
80 }
81
82 a:hover {
83 text-decoration: underline;
84 }
85
86 pre {
87 text-wrap: nowrap;
88 overflow-x: auto;
89 padding: 1em;
90 background: var(--code-background)!important;
91 border: 1px solid var(--code-border);
92 }
93
94 code {
95 font-family: monospace;
96 font-size: 13px;
97 padding: 2px 4px;
98 background: var(--inline-code-background)!important;
99 }
100
101 pre code {
102 background: transparent!important;
103 padding: initial;
104 border: none;
105 }
106
107 figure {
108 margin-inline-start: 0;
109 margin-inline-end: 0;
110 }
111
112 figcaption {
113 max-width: 100%;
114 text-align: center;
115 }
116
117 figcaption p {
118 margin: 0.3em 0 1.5em 0;
119 font-style: italic;
120 }
121
122 img, video, audio, table {
123 width: 100%;
124 max-width: 100%;
125 }
126
127 article iframe { /* fixes embeds going to center */
128 margin: 0!important;
129 }
130
131 audio::-webkit-media-controls-enclosure {
132 border-radius: 0;
133 }
134
135 pre { margin-block-start: 1em; margin-block-end: 1em; }
136
137 .promobox {
138 margin-top: 1em;
139 text-decoration: none;
140 display: inline-block;
141 background: blue;
142 color: white;
143 padding: 1em;
144 }
145 .promobox:hover { text-decoration: underline; }
146
147 /* Fix desktop and mobile code when font sizes are all over the place. */
148 pre code span { display: initial!important; }
149
150 @media only screen and (max-width: 1024px) {
151 body {
152 word-wrap: break-word;
153 }
154
155 header nav {
156 gap: 0.7rem;
157 }
158
159 a {
160 word-wrap: break-word;
161 }
162
163 /* Fix mobile code when font sizes are all over the place. */
164 pre code span { display: initial!important; }
165 }
166
167 @media only screen and (max-width: 720px) {
168 /* Responsive tables. */
169 table {
170 display: block;
171 overflow-y: auto;
172 }
173
174 .hide-on-mobile { display: none; }
175 }
176 </style>
177 <script defer src="https://app.tinyanalytics.io/pixel/isfRNEahfHiS2Ttp"></script>
178 </head>
179 <body>
180 <header>
181 <nav>
182 <a href="/">Home</a>
183 <a href="/projects.html">Projects</a>
184 <a href="https://github.com/mitjafelicijan" target="_blank">Code</a>
185 <a href="https://github.com/mitjafelicijan/probe" target="_blank" class="hide-on-mobile">Probe</a>
186 <a href="https://github.com/mitjafelicijan/dotfiles" target="_blank" class="hide-on-mobile">Dotfiles</a>
187 <a href="/curriculum-vitae.html">CV</a>
188 <a href="/feed.xml">RSS</a>
189 </nav>
190 </header>
191
192 <main>{{ block "content" . }}{{ end }}</main>
193
194 <footer>
195 <hr>
196 <p><big><strong>Want to comment or have something to add?</strong></big></p>
197 <p>
198 You can write me an email
199 at <a href="mailto:mitja.felicijan@gmail.com">mitja.felicijan@gmail.com</a> or
200 catch up with me <a href="https://telegram.me/mitjafelicijan" target="_blank">on Telegram</a>.
201 </p>
202 <hr>
203 <p>
204 <small>
205 This page's is also available as <a href="/feed.xml" target="_blank">RSS feed</a>.
206 Page was built with <a href="https://github.com/mitjafelicijan/jbmafp" target="_blank">jbmafp</a>.
207 </small>
208 </p>
209 </footer>
210
211 <script>
212 document.querySelectorAll("table").forEach(t => t.setAttribute("border", 1));
213 </script>
214 </body>
215</html> 67</html>
68
diff --git a/templates/feed.xml b/templates/feed.xml
index ce6ca07..794de57 100644
--- a/templates/feed.xml
+++ b/templates/feed.xml
@@ -1,23 +1,23 @@
1<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"> 1<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
2 <channel> 2 <channel>
3 <title>{{ .Config.Title }}'s posts</title> 3 <title>{{ .Config.Title }}'s posts</title>
4 <link>{{ .Config.BaseURL }}</link> 4 <link>{{ .Config.BaseURL }}</link>
5 <description>{{ .Config.Description }}</description> 5 <description>{{ .Config.Description }}</description>
6 <language>{{ .Config.Language }}</language> 6 <language>{{ .Config.Language }}</language>
7 7
8 {{ range $idx, $page := .Pages }} 8 {{ range $idx, $page := .Pages }}
9 {{ if or (eq $page.Type "post") (eq $page.Type "note") }} 9 {{ if or (eq $page.Type "post") (eq $page.Type "note") }}
10 {{ if not .Draft }} 10 {{ if not .Draft }}
11 <item> 11 <item>
12 <title>{{ $page.Title }}</title> 12 <title>{{ $page.Title }}</title>
13 <link>{{ $.Config.BaseURL }}/{{ $page.RelPermalink }}</link> 13 <link>{{ $.Config.BaseURL }}/{{ $page.RelPermalink }}</link>
14 <pubDate>{{ $page.Created.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}</pubDate> 14 <pubDate>{{ $page.Created.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}</pubDate>
15 <guid>{{ $.Config.BaseURL }}/{{ $page.RelPermalink }}</guid> 15 <guid>{{ $.Config.BaseURL }}/{{ $page.RelPermalink }}</guid>
16 <description>{{ $page.Summary }}</description> 16 <description>{{ $page.Summary }}</description>
17 <content:encoded>{{ $page.Raw }}</content:encoded> 17 <content:encoded>{{ $page.Raw }}</content:encoded>
18 </item> 18 </item>
19 {{ end }} 19 {{ end }}
20 {{ end }} 20 {{ end }}
21 {{ end }} 21 {{ end }}
22 </channel> 22 </channel>
23</rss> 23</rss>
diff --git a/templates/index.html b/templates/index.html
index f5821fc..28aa47e 100644
--- a/templates/index.html
+++ b/templates/index.html
@@ -1,60 +1,61 @@
1{{ template "base.html" . }} 1{{ template "base.html" . }}
2 2
3{{ define "content" }} 3{{ define "content" }}
4<section> 4<div>
5 <mark><small><i>You do not learn by relaxing. You learn by violently assaulting your problem until it surrenders its mysteries to you.</i></small></mark> 5 <h2>Visualizations and exploration of binary files</h2>
6</section> 6 <p>
7 Examine graphical representations of binary files using diagrams that illustrate connections between pairs of bytes (digraphs) and triplets of bytes (trigraphs).
8 Check out the <a href="https://mitjafelicijan.github.io/binary-visualization/" target="_blank">project page<a>.
9 </p>
10 <div>
11 <a href="https://mitjafelicijan.github.io/binary-visualization/" target="_blank">
12 <img src="/assets/general/trigraphs.gif">
13 </a>
14 </div>
15</div>
7 16
8<a class="promobox" href="https://mitjafelicijan.github.io/binary-visualization/" target="_blank"> 17<div>
9 Examine graphical representations of binary files using diagrams that 18 <h2>More long form, ramblings etc</h2>
10 illustrate connections between pairs of bytes (digraphs) and triplets of 19 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="More long form, ramblings etc">
11 bytes (trigraphs). 20 <meta itemprop="name" content="More long form, ramblings etc">
12</a> 21 {{ range .Pages }}
22 {{ if and (eq .Type "post") (not .Draft) }}
23 <li><a href="{{ .RelPermalink }}">{{ .Title }}</a></li>
24 {{ end }}
25 {{ end }}
26 </ul>
27</div>
13 28
14<section> 29<div>
15 <h2>More long form, ramblings etc</h2> 30 <h2>Notes?! Maybe useful</h2>
16 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="More long form, ramblings etc"> 31 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="Notes?! Maybe useful">
17 <meta itemprop="name" content="More long form, ramblings etc"> 32 <meta itemprop="name" content="Notes?! Maybe useful">
18 {{ range .Pages }} 33 {{ range .Pages }}
19 {{ if and (eq .Type "post") (not .Draft) }} 34 {{ if and (eq .Type "note") (not .Draft) }}
20 <li><a href="{{ .RelPermalink }}">{{ .Title }}</a></li> 35 <li>
21 {{ end }} 36 {{ range .Meta.tags }}<mark>{{ . }}</mark>{{ end }}
22 {{ end }} 37 <a href="{{ .RelPermalink }}">{{ .Title }}</a>
23 </ul> 38 </li>
24</section> 39 {{ end }}
40 {{ end }}
41 </ul>
42</div>
25 43
26<section> 44<div>
27 <h2>Notes?! Maybe useful</h2> 45 <h2>Small side projects I work/worked on</h2>
28 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="Notes?! Maybe useful"> 46 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="Side projects">
29 <meta itemprop="name" content="Notes?! Maybe useful"> 47 <meta itemprop="name" content="Side projects">
30 {{ range .Pages }} 48 <li role="listitem"><a href="https://github.com/mitjafelicijan/makext" target="_blank">makext</a> — QOL Extensions for GNU Make</li>
31 {{ if and (eq .Type "note") (not .Draft) }} 49 <li role="listitem"><a href="https://github.com/mitjafelicijan/binary-visualization" target="_blank">binary-visualization</a> — Visualizations and exploration of binary files</li>
32 <li> 50 <li role="listitem"><a href="https://github.com/mitjafelicijan/p9tree" target="_blank">p9tree</a> — Tree utility for 9front/Plan9 operating systems</li>
33 {{ range .Meta.tags }} 51 <li role="listitem"><a href="https://github.com/mitjafelicijan/errand" target="_blank">errand</a> — Task runner for the command line</li>
34 <mark>{{ . }}</mark> 52 <li role="listitem"><a href="https://github.com/mitjafelicijan/i3blocks" target="_blank">i3blocks</a> — Minimal i3blocks indicators</li>
35 {{ end }} 53 <li role="listitem"><a href="https://github.com/mitjafelicijan/cord.h" target="_blank">cord.h</a> — Small C library for handling strings</li>
36 <a href="{{ .RelPermalink }}">{{ .Title }}</a> 54 <li role="listitem"><a href="https://github.com/mitjafelicijan/mprogress" target="_blank">mprogress</a> — Tiny utility that displays progress bar in terminal</li>
37 </li> 55 <li role="listitem"><a href="https://github.com/mitjafelicijan/qli" target="_blank">qli</a> — Quantum Lorem Ipsum generator for command line</li>
38 {{ end }} 56 <li role="listitem"><a href="https://github.com/mitjafelicijan/journalctl-proxy" target="_blank">journalctl-proxy</a> — Exposes your systemd logs to web via web interface</li>
39 {{ end }} 57 <li role="listitem"><a href="https://github.com/mitjafelicijan/redis-marshal" target="_blank">redis-marshal</a> — Lightweight Redis UI tool</li>
40 </ul> 58 <li role="listitem"><a href="https://github.com/mitjafelicijan/dna-encoding" target="_blank">dna-encoding</a> — Tools for encoding files to DNA sequences</li>
41</section> 59 </ul>
42 60</div>
43<section>
44 <h2>Small side projects I work/worked on</h2>
45 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="Side projects">
46 <meta itemprop="name" content="Side projects">
47 <li role="listitem"><a href="https://github.com/mitjafelicijan/makext" target="_blank">makext</a> — QOL Extensions for GNU Make</li>
48 <li role="listitem"><a href="https://github.com/mitjafelicijan/binary-visualization" target="_blank">binary-visualization</a> — Visualizations and exploration of binary files</li>
49 <li role="listitem"><a href="https://github.com/mitjafelicijan/p9tree" target="_blank">p9tree</a> — Tree utility for 9front/Plan9 operating systems</li>
50 <li role="listitem"><a href="https://github.com/mitjafelicijan/errand" target="_blank">errand</a> — Task runner for the command line</li>
51 <li role="listitem"><a href="https://github.com/mitjafelicijan/i3blocks" target="_blank">i3blocks</a> — Minimal i3blocks indicators</li>
52 <li role="listitem"><a href="https://github.com/mitjafelicijan/cord.h" target="_blank">cord.h</a> — Small C library for handling strings</li>
53 <li role="listitem"><a href="https://github.com/mitjafelicijan/mprogress" target="_blank">mprogress</a> — Tiny utility that displays progress bar in terminal</li>
54 <li role="listitem"><a href="https://github.com/mitjafelicijan/qli" target="_blank">qli</a> — Quantum Lorem Ipsum generator for command line</li>
55 <li role="listitem"><a href="https://github.com/mitjafelicijan/journalctl-proxy" target="_blank">journalctl-proxy</a> — Exposes your systemd logs to web via web interface</li>
56 <li role="listitem"><a href="https://github.com/mitjafelicijan/redis-marshal" target="_blank">redis-marshal</a> — Lightweight Redis UI tool</li>
57 <li role="listitem"><a href="https://github.com/mitjafelicijan/dna-encoding" target="_blank">dna-encoding</a> — Tools for encoding files to DNA sequences</li>
58 </ul>
59</section>
60{{ end }} 61{{ end }}
diff --git a/templates/note.html b/templates/note.html
index c543773..55a29e9 100644
--- a/templates/note.html
+++ b/templates/note.html
@@ -4,34 +4,30 @@
4{{ define "description" }}{{ .Page.Summary }}{{ end }} 4{{ define "description" }}{{ .Page.Summary }}{{ end }}
5 5
6{{ define "content" }} 6{{ define "content" }}
7<section> 7<article>
8 <h1>{{ .Page.Title }}</h1> 8 <h1>{{ .Page.Title }}</h1>
9 <p><cap>{{ .Page.Type }}</cap>, {{ .Page.Created.Format "Jan 2, 2006" }}, on <a href="{{ .Config.BaseURL }}">{{ .Config.Title }}'s blog</a></p> 9 <p><cap>{{ .Page.Type }}</cap>, {{ .Page.Created.Format "Jan 2, 2006" }}, on <a href="{{ .Config.BaseURL }}">{{ .Config.Title }}'s blog</a></p>
10 <div> 10 <div>{{ .Page.HTML }}</div>
11 {{ .Page.HTML }} 11</article>
12 </div>
13</section>
14 12
15<section> 13<div>
16 <br><hr> 14 <br><hr>
17 <p><big><strong>Other notes</strong></big></p> 15 <p><big><strong>Other notes</strong></big></p>
18 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="Other notes"> 16 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="Other notes">
19 <meta itemprop="name" content="Other notes"> 17 <meta itemprop="name" content="Other notes">
20 {{ range .Pages | filterbytype "note" | random 15 }} 18 {{ range .Pages | filterbytype "note" | random 15 }}
21 {{ if not .Draft }} 19 {{ if not .Draft }}
22 <li> 20 <li>
23 {{ range .Meta.tags }} 21 {{ range .Meta.tags }}<mark>{{ . }}</mark>{{ end }}
24 <mark>{{ . }}</mark> 22 <a href="{{ .RelPermalink }}">{{ .Title }}</a>
25 {{ end }} 23 </li>
26 <a href="{{ .RelPermalink }}">{{ .Title }}</a> 24 {{ end }}
27 </li> 25 {{ end }}
28 {{ end }} 26 </ul>
29 {{ end }} 27</div>
30 </ul>
31</section>
32 28
33{{ if .Page.Meta.mathjax }} 29{{ if .Page.Meta.mathjax }}
34 <script src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js" async></script> 30 <script src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js" async></script>
35{{ end }} 31{{ end }}
36 32
37{{ end }} 33{{ end }}
diff --git a/templates/page.html b/templates/page.html
index ba87cca..8c38e82 100644
--- a/templates/page.html
+++ b/templates/page.html
@@ -4,10 +4,8 @@
4{{ define "description" }}{{ .Page.Summary }}{{ end }} 4{{ define "description" }}{{ .Page.Summary }}{{ end }}
5 5
6{{ define "content" }} 6{{ define "content" }}
7<div> 7<article>
8 <h1>{{ .Page.Title }}</h1> 8 <h1>{{ .Page.Title }}</h1>
9 <div> 9 <div>{{ .Page.HTML }}</div>
10 {{ .Page.HTML }} 10</article>
11 </div>
12</div>
13{{ end }} 11{{ end }}
diff --git a/templates/post.html b/templates/post.html
index 17f7025..6e122c6 100644
--- a/templates/post.html
+++ b/templates/post.html
@@ -4,29 +4,26 @@
4{{ define "description" }}{{ .Page.Summary }}{{ end }} 4{{ define "description" }}{{ .Page.Summary }}{{ end }}
5 5
6{{ define "content" }} 6{{ define "content" }}
7<section> 7<article>
8 <h1>{{ .Page.Title }}</h1> 8 <h1>{{ .Page.Title }}</h1>
9 <p><cap>{{ .Page.Type }}</cap>, {{ .Page.Created.Format "Jan 2, 2006" }}, on <a href="{{ .Config.BaseURL }}">{{ .Config.Title }}'s blog</a></p> 9 <p><cap>{{ .Page.Type }}</cap>, {{ .Page.Created.Format "Jan 2, 2006" }}, on <a href="{{ .Config.BaseURL }}">{{ .Config.Title }}'s blog</a></p>
10 <div> 10 <div>{{ .Page.HTML }}</div>
11 {{ .Page.HTML }} 11</article>
12 </div>
13</section>
14 12
15<section> 13<div>
16 <br><hr> 14 <br><hr>
17 <p><big><strong>Other posts</strong></big></p> 15 <p><big><strong>Other posts</strong></big></p>
18 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="Other posts"> 16 <ul itemscope itemtype="https://schema.org/SiteNavigationElement" role="list" aria-label="Other posts">
19 <meta itemprop="name" content="Other post"> 17 <meta itemprop="name" content="Other post">
20 {{ range .Pages | filterbytype "post" | random 15 }} 18 {{ range .Pages | filterbytype "post" | random 15 }}
21 {{ if not .Draft }} 19 {{ if not .Draft }}
22 <li><a href="{{ .RelPermalink }}">{{ .Title }}</a></li> 20 <li><a href="{{ .RelPermalink }}">{{ .Title }}</a></li>
23 {{ end }} 21 {{ end }}
24 {{ end }} 22 {{ end }}
25 </ul> 23 </ul>
26</section> 24</div>
27 25
28{{ if .Page.Meta.mathjax }} 26{{ if .Page.Meta.mathjax }}
29 <script src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js" async></script> 27 <script src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js" async></script>
30{{ end }} 28{{ end }}
31
32{{ end }} 29{{ end }}