flux.vision, tobias.raayoni-last.com and randogoth.com. They were one site until October 2026, serving four audiences from a single dated list, which is the only format that can hold unrelated things at once. flux.vision is recovered from the Wayback Machine, where it had sat since being deleted in 2021: 90 articles, closed and maintained rather than updated. tobias.raayoni-last.com is the professional record, 97 articles back to 1999. randogoth.com is the technical work, 41 articles across six areas, served as an ANSI bulletin board. History starts here deliberately. The development history, the 266-row inventory that records why each article went where it did, the Wayback pipelines, the pruned articles, the source archives and the full-size images are kept beside the repo rather than in it, so a clone is the web presence and not the argument that produced it. REFACTOR.md is gitignored for the same reason. See README.md for where that material lives, and keep it: the sort is not reproducible from these three directories alone. Each site documents itself in its own README, including the traps that cost time and look like nothing when you get them wrong.
77 lines
2.6 KiB
Python
77 lines
2.6 KiB
Python
AUTHOR = 'randogoth'
|
|
SITENAME = 'RANDOGOTH'
|
|
SITEURL = ''
|
|
PATH = 'content'
|
|
TIMEZONE = 'Asia/Jerusalem'
|
|
DEFAULT_LANG = 'en'
|
|
|
|
# An ANSI bulletin board. The TuiCSS theme that came over from TRL was a DOS
|
|
# *application*: grey chrome, dialogs, a menu bar. A board is a different thing,
|
|
# and the one actually wanted here. mc-pelican stays in the tree as the fallback.
|
|
THEME = 'bbs'
|
|
PLUGIN_PATHS = ['plugins']
|
|
PLUGINS = ['crtimages']
|
|
|
|
# The sections are message areas, numbered so they can be dialled by key the way
|
|
# a board's main menu works. No descriptions: the names are the whole listing,
|
|
# as they were on a real board, and working out what an area holds is the point.
|
|
BBS_AREAS = {
|
|
'RANDOM': 1, 'PLACE': 2, 'MINIMAL': 3,
|
|
'MACHINES': 4, 'GONZO': 5, 'ENDTIMES': 6,
|
|
}
|
|
|
|
# Articles live flat in content/; assets are carved out of that.
|
|
ARTICLE_PATHS = ['']
|
|
ARTICLE_EXCLUDES = ['pages', 'library', 'images', 'files']
|
|
PAGE_PATHS = ['pages']
|
|
STATIC_PATHS = ['library', 'images', 'files']
|
|
|
|
# Flat slugs, for the reason TRL learned the hard way: sections get reworked and
|
|
# every reassignment moves a URL. The section lives in the listing, not the path.
|
|
ARTICLE_URL = '{slug}.html'
|
|
ARTICLE_SAVE_AS = '{slug}.html'
|
|
PAGE_URL = '{slug}.html'
|
|
PAGE_SAVE_AS = '{slug}.html'
|
|
CATEGORY_URL = 'section/{slug}.html'
|
|
CATEGORY_SAVE_AS = 'section/{slug}.html'
|
|
CATEGORIES_SAVE_AS = 'sections.html'
|
|
TAG_URL = 'tag/{slug}.html'
|
|
TAG_SAVE_AS = 'tag/{slug}.html'
|
|
TAGS_SAVE_AS = 'tags.html'
|
|
ARCHIVES_SAVE_AS = 'archives.html'
|
|
AUTHOR_SAVE_AS = ''
|
|
AUTHORS_SAVE_AS = ''
|
|
|
|
# Unlike the other two sites, this one is a blog, so it is paginated and it has
|
|
# feeds. People should be able to subscribe to a devlog without visiting it.
|
|
DEFAULT_PAGINATION = 15
|
|
FEED_ALL_ATOM = 'feeds/all.atom.xml'
|
|
FEED_ALL_RSS = 'feeds/all.rss.xml'
|
|
CATEGORY_FEED_ATOM = 'feeds/{slug}.atom.xml'
|
|
CATEGORY_FEED_RSS = 'feeds/{slug}.rss.xml'
|
|
TRANSLATION_FEED_ATOM = None
|
|
AUTHOR_FEED_ATOM = None
|
|
AUTHOR_FEED_RSS = None
|
|
|
|
# The eight sections are the navigation, the way a file manager shows directories.
|
|
DISPLAY_CATEGORIES_ON_MENU = True
|
|
DISPLAY_PAGES_ON_MENU = False
|
|
MENUITEMS = [
|
|
('ARCHIVES', '/archives.html'),
|
|
('TAGS', '/tags.html'),
|
|
]
|
|
|
|
# No nl2br. The recovered bodies are hard wrapped at roughly 70 characters, so it
|
|
# turns every source line into a forced break and the prose stops reflowing.
|
|
MARKDOWN = {
|
|
'extension_configs': {
|
|
'markdown.extensions.tables': {},
|
|
'markdown.extensions.footnotes': {},
|
|
'markdown.extensions.codehilite': {'css_class': 'highlight'},
|
|
'markdown.extensions.extra': {},
|
|
},
|
|
'output_format': 'html5',
|
|
}
|
|
|
|
DELETE_OUTPUT_DIRECTORY = True
|
|
CACHE_CONTENT = False
|