summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-04-05chore: Rewrite readme as markdownHEADmasterLinnnus
I'll be uploading the project to GitHub soon. GitHub renders Markdown nicely.
2024-04-05fix(creole): Horizontal rule eats all inputLinnnus
2024-04-05feat: Render every commit into subfolderLinnnus
2024-04-04feat(creole): Add horizontal ruleLinnnus
2024-04-04test(creole): Add test for inline ttLinnnus
2024-04-04feat(creole): Basic support for listsLinnnus
2024-04-01fix: Escape quotes in print_escaped()Linnnus
2024-03-07test(creole): Document behavior for empty bold/emphasisLinnnus
I don't know whether this should be considered a bug or not. I think it's pretty reasonable behavior to not recognize empty tags, since the writer probably isn't thinking about their function in the markup if there's nothing inside.
2024-03-07feat(creole): Add nowiki blocksLinnnus
2024-03-07docs(creole): Add WikiWay inspirationLinnnus
2024-02-17refactor(creole): Use starts_with everywhereLinnnus
2024-02-17feat(creole): support inline nowikiLinnnus
2024-02-17feat(creole): handle escaped raw URLsLinnnus
2024-02-17test(creole): add case for markup in named linkLinnnus
2024-02-17fix(creole): Handle escapes properlyLinnnus
A faulty boolean expression was to blame. This patch also adds the necessary tests to prevent relapses (i forgot det technical term).
2024-02-17feat(creole): Support strong/boldLinnnus
2024-02-17chore: avoid sign warningsLinnnus
2024-02-17feat: Add creole utilityLinnnus
This patch a) gives the different binaries' main() files more meaning full names and b) adds the creole binary, which works like smu except for my dialect of Creole (which should hopefully approach proper Creole as this repo matures).
2024-02-16feat(creole): Add emphasisLinnnus
2024-02-16fix(creole): Add special case for "." at end of raw URLLinnnus
2024-02-16test(creole): Add test for empty inputLinnnus
2024-02-16feat(creole): Support raw URLsLinnnus
2024-02-14build: Use stdenv from llvmPackagesLinnnus
This patch updates the flake to use llvmPackages.stdenv rather than the default pkgs.stdenv. This fixes an issue on MacOS where the ASAN runtime library isn't found. I have no idea why.
2024-02-14chore: Update gitignoreLinnnus
2024-02-14feat(creole): Support [[https://example.com|links]]Linnnus
This patch adds support for freelinks. This patch also introduced hprint() – a function to print text while escaping HTML characters. This isn't very DRY since that's also implemented in do_replacements(), but the abstraction necessary to reuse this functionality introduced disproportional amount of mental overhead.
2024-02-14test(creole): Show input markup on failing testsLinnnus
This patch also introduces print_escaped_ze() – an alternative to print_escaped() that takes a zero-terminated string. I do this because I almost made a silly copy/paste mistake with a line like: print_escaped(stdout, tests[i].input, strlen(tests[i].output));
2024-02-12feat: Change suffixes when convertingLinnnus
2024-02-04feat(creole): escape special HTML charactersLinnnus
2024-02-04test(creole): Highlight current testsLinnnus
2024-02-04feat(creole): Add basic paragraphsLinnnus
In the future, we may need to keep track of state, if encountering block-level elements ends paragraphs.
2024-02-04feat(creole): support headersLinnnus
2024-02-04build: properly delete build/Linnnus
2024-02-04build: linking errors agaist libasanLinnnus
Since -fsanitize essentially acts as -lasan, it should also be passed when linking.
2024-02-04test(creole): move creole tests to static dataLinnnus
This removes *a ton* of code for dealing with reading files and what not. Now instead we just store the test cases as a huge array in the code. I have no idea why I didn't just do this from the start??
2024-02-04feat: initial commitLinnnus
Here is a small overview of the state of the project at this first commit. I have basic Git Repo -> HTML working, and a plan for how setting up an actual server would work (mainly, NGINX + a git hook to rebuild). The main thing I'm working on right now is parsing WikiCreole, though I am starting to wonder if this is the right langauge. WikiCreole is pretty irregular and has a lot of edge cases (e.g. around emphasis).