Compare commits

..

22 Commits

Author SHA1 Message Date
haemka 186e0fd86a Write a proper README
Describes the theme's look, features, and file structure, plus the
custom pelicanconf.py settings it reads (SOCIAL, SITE_COMMIT/
SITE_BRANCH, sidebar display toggles) for anyone else adopting it.
2026-08-14 17:28:35 +00:00
haemka e76fd935e2 Show build commit/branch in the footer
Single-line addition next to the existing Pelican/Python credit,
using the same '·' delimiter as the header toggles. Only renders when
SITE_COMMIT is set (i.e. built via the CI workflow, not a plain local
build).
2026-08-14 11:09:53 +00:00
haemka bf661396df Replace LinkedIn icon with its last Simple Icons version pre-removal
Tabler Icons' brand-linkedin looked visually inconsistent with the
other five (different design language); Simple Icons never had a
filled-style alternative to offer since it was removed outright
(commit a9693e7259, per simple-icons#11372: LinkedIn's brand
guidelines don't permit third-party logo use). Using the last version
from simple-icons' own history (commit ea278fb, identical to what was
originally hand-authored here) restores visual consistency; the
underlying trademark caveat applies the same as it would to any
reproduction of this logo, deemed acceptable risk for a personal
site's social link icon.
2026-08-13 19:32:57 +00:00
haemka 3f8b62489c Replace hand-authored social icons with verified open-source SVGs
github/orcid/mastodon/bluesky/matrix: official Simple Icons paths
(CC0), fetched from simple-icons/simple-icons. linkedin: Simple Icons
no longer includes it (removed from the project entirely, likely a
brand/legal request), so sourced from Tabler Icons' brand-linkedin
(filled variant, MIT license) instead for a closer visual match to
the other filled-style icons than their outline variant.

Previous icons were reconstructed from memory as an approximation,
not verified against any actual licensed source.
2026-08-13 18:49:34 +00:00
haemka ed93e0bf87 Even out the gap above/below the About-me social-links divider
Was 8rem above / 3rem below; both now 5rem.
2026-08-13 17:47:59 +00:00
haemka 9d85c9556d Fix social-links margins being zeroed by the global ul[class] reset
The reset rule (body, h1, ..., ul[class], ol[class], ..., dd { margin:
0 }) matches via ul[class] at specificity (0,0,1,1), which beats plain
class selectors like .social-links/.social-links--large (0,0,1,0)
regardless of source order - so the margin-top values set for both the
sidebar gap and the About-me divider-to-icon gap were silently always
overridden back to 0. Prefixing both selectors with the ul type
selector ties the specificity, letting these (later in the file) win.
2026-08-13 17:38:49 +00:00
haemka b8a0d145ae Increase social link spacing further, add About-me divider
Sidebar gap 6rem -> 10rem (previous doubling still read as too small).
About-me page: add a subtle .social-links-divider <hr> between the bio
text and the icon row (8rem gap above it, 3rem below to the icons) -
11rem total separation from the text, up from 3rem, plus a visual
break as requested.
2026-08-13 17:01:31 +00:00
haemka a2cde12408 Refine social link icon spacing/sizing per feedback
Sidebar: double the standard 3rem section gap above the icon row
(6rem), horizontally centered instead of left-aligned.
About-me page: new .social-links--large variant via a
social_links_variant template var - icons at 5rem (was 1.25rem),
centered, 3rem gap from the preceding text (standard section gap,
distinct from the normal 1rem paragraph gap), wider inter-icon gap
to match the larger size.
2026-08-13 16:54:53 +00:00
haemka c2f4f4ca9f Add social link icons to sidebar and About-me page
Small monochrome icon row (GitHub, LinkedIn, ORCID, Mastodon, Bluesky,
Matrix) rendered from a SOCIAL config tuple via a shared Jinja
partial (templates/includes/social_links.html), included unconditionally
in the sidebar below the tag cloud and again on the About-me page only.
Icons are inline SVGs (templates/icons/*.svg) using fill=currentColor,
so they track the existing accent-color/dark-mode toggle for free via
--main-link-color, no JS needed.
2026-08-13 16:44:14 +00:00
haemka e1e962926e Fixed captions for SVGs, added translations for captions 2026-08-13 16:00:24 +02:00
haemka 828c7dc3b6 Added color switching, moved scripts into dedicated files 2026-08-13 14:59:41 +02:00
haemka 1bd70cb16b Added multilingual and theme switching support, fixed multiple
positioning issues, added articles to sidebar
2026-08-13 12:41:05 +02:00
haemka 6e1812c2df update category display in menu 2023-04-03 16:13:56 +02:00
haemka 8d37514d4d Fixed main content area 2023-03-30 18:44:26 +02:00
haemka 264f6be0a9 Merge branch 'master' of https://git.haemka.in/hmk/pelican-latex into HEAD 2022-09-23 17:45:04 +02:00
haemka b27cb687f9 Preparing for dark/light mode specific code highlighting 2022-09-23 17:42:41 +02:00
haemka 1a348f8e62 Fixed CSS counters in articles 2020-06-02 17:40:08 +02:00
haemka 388f527734 Fixed CSS path 2020-05-31 22:19:15 +02:00
haemka 20f50de0f0 Added dark mode 2020-05-31 22:02:32 +02:00
haemka a5d0f0f6ab Revert "Relative links for everything"
This reverts commit ff484f854e.
2020-05-31 21:59:18 +02:00
haemka aadcc8ee6c Relative links for everything 2020-05-31 20:16:32 +02:00
haemka 71ca73347a Initial commit 2020-05-31 15:15:28 +02:00
3 changed files with 31 additions and 2 deletions
+27 -1
View File
@@ -1,4 +1,30 @@
# Pelican LaTeX theme # Pelican LaTeX theme
A theme for pelican which mimics the look of LaTeX documents. A theme for [Pelican](https://getpelican.com/) that mimics the look and feel of a LaTeX-typeset document — serif typography (bundled Latin Modern webfonts), justified body text, and syntax-highlighted code blocks styled to match.
## Features
- Light and dark mode, plus a choice of accent color, all switchable at runtime and remembered across visits
- A serif/sans-serif font toggle for readers who prefer either look
- Sidebar navigation with pages, recent articles, categories, and a weighted tag cloud
- Built-in support for multilingual sites built with Pelican's `i18n_subsites` plugin, including a language switcher and per-page translation links
- Lightbox viewer for images, and inline SVG handling that lets diagrams adapt their colors to the current light/dark theme
- A small, optional row of social/profile link icons
## Structure
- `templates/` — Jinja2 templates for articles, pages, listing views (archives, tags, categories, authors), and shared partials
- `static/css/` — the theme's stylesheet and Pygments syntax-highlighting themes
- `static/js/` — the theme/accent/font toggles, lightbox, and SVG handling
- `static/fonts/` — the bundled Latin Modern webfonts
To use the theme, point a Pelican site's `THEME` setting at this repository (or a submodule checkout of it).
## Configuration
Beyond Pelican's standard settings, the theme reads a few of its own from `pelicanconf.py`:
- `SOCIAL` — a tuple of `(name, url, icon_slug)` entries for the social/profile link row. `icon_slug` must match an SVG file in `templates/icons/<icon_slug>.svg`; currently bundled are `github`, `linkedin`, `orcid`, `mastodon`, `bluesky`, and `matrix`. Add more by dropping in another icon file with a matching slug. Leave `SOCIAL` unset to omit the row entirely.
- `SITE_COMMIT` and `SITE_BRANCH` — optional build identifiers shown as a small line in the footer (e.g. "Build abc1234 (main)"), linked to the commit on Gitea. Meant to be set from a CI environment rather than hand-written; the footer line is omitted if `SITE_COMMIT` is empty.
The sidebar sections can also be toggled individually, following the same convention as Pelican's default theme: `DISPLAY_PAGES_ON_MENU` and `DISPLAY_CATEGORIES_ON_MENU` (both off unless set to `True`), and `DISPLAY_RECENT_ARTICLES_ON_MENU`/`DISPLAY_TAG_CLOUD_ON_MENU` (both on by default). `RECENT_ARTICLES_COUNT` caps the recent-articles list (default 10).
+3
View File
@@ -124,6 +124,9 @@
<footer id="contentinfo" class="body"> <footer id="contentinfo" class="body">
<address id="about" class="vcard body"> <address id="about" class="vcard body">
Proudly powered by <a href="http://getpelican.com/">Pelican</a>, which takes great advantage of <a href="http://python.org">Python</a>. Proudly powered by <a href="http://getpelican.com/">Pelican</a>, which takes great advantage of <a href="http://python.org">Python</a>.
{% if SITE_COMMIT %}
<span class="header-delimiter">·</span> Build <a href="https://git.haemka.in/hmk/haemka.de/commit/{{ SITE_COMMIT }}">{{ SITE_COMMIT }}</a> ({{ SITE_BRANCH }})
{% endif %}
</address><!-- /#about --> </address><!-- /#about -->
</footer><!-- /#contentinfo --> </footer><!-- /#contentinfo -->
+1 -1
View File
@@ -1 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill="currentColor" aria-hidden="true" focusable="false"><title>LinkedIn</title><path d="M17 2a5 5 0 0 1 5 5v10a5 5 0 0 1 -5 5h-10a5 5 0 0 1 -5 -5v-10a5 5 0 0 1 5 -5zm-9 8a1 1 0 0 0 -1 1v5a1 1 0 0 0 2 0v-5a1 1 0 0 0 -1 -1m6 0a3 3 0 0 0 -1.168 .236l-.125 .057a1 1 0 0 0 -1.707 .707v5a1 1 0 0 0 2 0v-3a1 1 0 0 1 2 0v3a1 1 0 0 0 2 0v-3a3 3 0 0 0 -3 -3m-6 -3a1 1 0 0 0 -.993 .883l-.007 .127a1 1 0 0 0 1.993 .117l.007 -.127a1 1 0 0 0 -1 -1"/></svg> <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" fill="currentColor" aria-hidden="true" focusable="false"><title>LinkedIn</title><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433c-1.144 0-2.063-.926-2.063-2.065 0-1.138.92-2.063 2.063-2.063 1.14 0 2.064.925 2.064 2.063 0 1.139-.925 2.065-2.064 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"/></svg>

Before

Width:  |  Height:  |  Size: 515 B

After

Width:  |  Height:  |  Size: 668 B