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'] PLUGINS = ['crtimages', 'smolnet', 'lostimages'] # Hosts that no longer exist, so their hotlinked images can never resolve. # Checked against Wayback: of twelve such images only one was ever captured, # and it now lives in content/library/. See lostimages.py. LOSTIMAGES_DEAD_HOSTS = [ 'visualberlin.org', 'mutanten.org', 'web.mac.com', 'kino.web.de', 'lh4.google.it', 'l.yimg.com', ] # 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, } # The capsule mirrors the board: same areas, same order, same words. Gemini # clients number link lines themselves, so an area is still dialled by number # over there without the plugin writing a single bracket. SMOLNET_SECTION_DIR = 'area' SMOLNET_SECTION_ORDER = BBS_AREAS SMOLNET_LABELS = { 'sections': 'Message areas', 'latest': 'Latest messages', 'archive': 'All messages', 'back': 'Main menu', 'pages': 'System', } # The address is rot13 in the HTML because of web crawlers. That defence needs # JavaScript, which Gemini does not have, and the renderer drops raw HTML, so # without this the one thing the Connect page exists to carry would vanish. SMOLNET_ROT13_ATTR = 'data-r' # 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