summaryrefslogtreecommitdiff
path: root/lib/generate.source.sh
AgeCommit message (Collapse)Author
2026-03-08use new themedevelopPaul Buetow
2026-03-01Move atom-to-HTML conversion from generate to atomfeed modulePaul Buetow
generate::convert_gmi_atom_to_html_atom was atom feed logic that belonged in the atomfeed module. Renamed to atomfeed::convert_to_html and simplified by removing the format parameter (always HTML). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01Extract generate::extract_title helper to eliminate duplicationPaul Buetow
Title extraction ($SED pattern + quote sanitization) was duplicated in generate, atomfeed, gemfeed, notes, and template modules. Now centralized with unit tests for heading extraction and empty files. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01Extract generate::safe_overwrite helper to eliminate DRY violationPaul Buetow
The "safe overwrite" pattern (diff -q tmp dest, then rm or mv) was duplicated in template, gemfeed (2x), and notes modules. Extracted into a shared helper with unit tests covering all three cases (no dest, identical dest, differing dest). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15Improve --generate performance with incremental builds (62s -> 2s)Paul Buetow
Add mtime-based skip logic to avoid regenerating unchanged files: - generate::fromgmi skips .gmi files where all outputs are newer - template::_generate_file skips templates when output is fresh - Diff-before-overwrite in templates, gemfeed, and notes indexes to preserve mtimes and prevent cascading cache invalidation - Global dependency check (.lastgen sentinel) for header/footer/CSS - Job throttling via wait -n capped at nproc cores - Add --force flag and FORCE_REBUILD env var to bypass skip logic - Fix misleading atom feed "empty cache" log message Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2025-12-06Fix draft HTML generation for files with unsupported source-highlight languagesPaul Buetow
- Add .tmp to exclusion pattern in cleanup to prevent race condition - Gracefully fallback to plain <pre> when source-highlight fails (e.g., yaml)
2024-12-29add links to Markdown and Gemtext versions of this page on the page headersPaul Buetow
2024-09-17theme refactoring (not the themes themselves but the structure)Paul Buetow
2024-08-25fix markdown internal link idsPaul Buetow
2024-08-24initial nicer markdown ToC supportPaul Buetow
2023-05-08Merge branch 'main' into developPaul Buetow
2023-05-08create html/gemfeed directory when its not there yetPaul Buetow
2023-04-09add gemtexter version to footerPaul Buetow
2023-03-27fix html atom feedPaul Buetow
2023-03-25draft also generates .gmi files from draft templatesPaul Buetow
2023-03-15dont add .gmi.tpl files to html and mdPaul Buetow
2023-03-15use safer bash optionsPaul Buetow
2023-03-15initial templating supportPaul Buetow
2023-03-12add xmllint supportPaul Buetow
2022-11-20add --draft switchPaul Buetow
2022-08-28then there are no notes and no feeds dont process themPaul Buetow
2022-07-30rewording and actually add filter codePaul Buetow
2022-07-02refactor the HTML extras sub-directoryPaul Buetow
2022-05-29fix md generationPaul Buetow
2022-05-29strip out the git auto commit feature - as it was partly broken and ↵Paul Buetow
difficult to fix
2022-05-29add notes section - can override CSS styles by sectionPaul Buetow
2022-05-29add external ttf fontsPaul Buetow
2022-05-28move html related content to htmlextrasPaul Buetow
2022-05-28automatically use top level HTML stylesheetPaul Buetow
2022-02-12idea about gitPaul Buetow
2022-01-20add robots to be a special filePaul Buetow
2022-01-13add mirrors to footerPaul Buetow
2022-01-13add support for codeberg pagePaul Buetow
2022-01-01gemtexter is now twice as fast (spawning sub-processes for different tasks)Paul Buetow
2021-12-26use external style.css file for HTMLPaul Buetow
2021-05-25rename packages to lib1.0.0Paul Buetow