<<
path:
root/public/blog.git/html/src/gen/constants.h
blob: 41b92bd111582a773f877dfa1abf068a6decf786
[raw]
[clear marker]
3METADATA_CMD_CURRENT_DT :: "now";
5METADATA_MARKER :: "META;";
6REFERENCE_MARKER :: "[!link:";
8PATTERN_PUBLISHED :: "published:";
9PATTERN_UPDATED :: "updated:";
11/** This is used by the search server. Hence the 'extern' */
12PATTERN_EXTERN_ENTRY :: "<!-- extern template: search_results -->";
14/** Note: The order is very important! @blog.jai: dispatch_metadata() */
22/** Regex pattern covers those cases:
25 2025-01-01-01-01(123456)
27 2025-01-01-01-01 ( 123456 )
29PATTERN_RE_DATETIME :: "\\d{4}-\\d{2}-\\d{2}(?:-\\d{2}-\\d{2})?\\s*\\(\\s*\\d+\\s*\\)";
32/** Allowed date formats in the header of blog posts.
35 published: 2025-05-01-01-00 Date and time
36 published: 2025-05-01 Only date
37 published: now Current DT
38 published: Empty (uses current dt)
39 Omitted (uses current dt)
43PARSER_FORMAT_DT_DELIMITER :: "-";
44PARSER_FORMAT_DATETIME_DELIMITER_COUNT :: 4;
45PARSER_FORMAT_DATE_DELIMITER_COUNT :: 2;
47/** End parser stuff */
50/** TODO(adam, 2): The whole directory management is a little bit messy, for now it's fine,
51 but maybe we need something more concise.
53 The current for creating directories also sucks. */
55/** Top level directories */
56DIR_TEMPLATES :: "templates";
59DIR_GENERIC :: "generic";
60DIR_ASSETS :: "assets";
63/** Relative to top level (don't create them) */
64SUBDIR_IMAGES :: "images";
65SUBDIR_POSTS :: "posts";
68DIR_POSTS_IMAGES :: #run tprint("%/%", DIR_POSTS, SUBDIR_IMAGES);
69DIR_WWW_IMAGES :: #run tprint("%/%", DIR_WWW, SUBDIR_IMAGES);
70DIR_WWW_POSTS :: #run tprint("%/%", DIR_WWW, SUBDIR_POSTS);
73FP_DUMP_ENTRIES_MD :: #run tprint("%/entries_md.bin", DIR_DUMPS);
74FP_DUMP_ENTRIES_HTML :: #run tprint("%/entries_html.bin", DIR_DUMPS);
75FP_DUMP_SEARCH_INDEX :: #run tprint("%/search_index.bin", DIR_DUMPS);
76FP_ASSETS_FAVICON :: #run tprint("%/logo.png", DIR_ASSETS);
77FP_WWW_FAVICON :: #run tprint("%/favicon.png", DIR_WWW);
78FP_WWW_SEARCH_RESULTS :: #run tprint("%/search_results.html", DIR_WWW);
80/** Things to create */
81DIRECTORIES_TO_CREATE :: string.[
86 /** Sub directories */
91FILES_TO_COPY :: Copy_File.[
92 .{ FP_ASSETS_FAVICON, FP_WWW_FAVICON },
96/** Website metadata */
97PAGE_URL :: "https://blog.ptrace.dev";
98PAGE_URL_POST :: #run tprint("%?ts=\%", PAGE_URL);
100PAGE_TITLE :: "ptrace blog";
102PAGE_DESCRIPTION :: "Some tech blog";
103PAGE_IMAGE_MAX_WIDTH :: 1000;
104PAGE_ENTRIES_MAX :: 25;
105PAGE_OVERVIEW_ITEMS_MAX :: 200;
107RSS_FP :: #run tprint("%/ptrace.dev.rss", DIR_WWW);
108RSS_URL :: #run tprint("%/rss", PAGE_URL);