summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* Fix panic when internal link has no path segmentsBen Bridle2025-01-18
| | | | | This was being triggered when an internal link was given as [[/]], which is admittedly an invalid link anyway.
* Fix internal links to headings on another pageBen Bridle2025-01-18
| | | | | | The heading section of the link wasn't being suffixed to the generated link target, so links to a heading on another page were just regular links to the top of that page.
* Fix invalid HTML in img and audio elementsBen Bridle2025-01-15
|
* Count only level 1 and 2 headings when checking if page needs contentsBen Bridle2025-01-15
|
* Implement image galleriesBen Bridle2025-01-15
| | | | | | Each gallery image must be kept in the three directories images/large, images/small, and images/thumb. A gallery is a fragment with the language 'gallery' containing a list of image filenames, one per line.
* Allow the use of site-local absolute URLs in external linksBen Bridle2025-01-15
| | | | | | | | | | External links with no protocol that start with a forward-slash are interpreted as being links to a file in the generated site. To make these work with the relative-paths paradigm of the generator, the slash is replaced with the page path-to-root to convert it to a relative path. This commit also fixes an issue where unlabelled links with no protocol were being given an empty label.
* Add line breaks to math blocksBen Bridle2025-01-15
| | | | | | Math blocks are used when you have multiple lines of equations. Instead of requiring the user to insert a `\\` line break after every line, line breaks are now added automatically.
* Fix broken parent linksBen Bridle2025-01-15
| | | | | Generation of parent links for pages with two or more parents before the root index was not working correctly.
* Implement redirectsBen Bridle2025-01-15
| | | | | Source files with extension .redirect will be converted into redirect pages linking to the internal-style URL in each file.
* Sanitize site and page nameBen Bridle2025-01-14
|
* Get the global HTML head from the config fileBen Bridle2025-01-14
| | | | | The value of the configuration key `html.head` is inserted into the <head> section of every generated HTML page.
* Implement a config file formatBen Bridle2025-01-14
| | | | | | If the file `toaster.conf` is found in the root of the source directory, the contents are parsed as key-value pairs. A line with no indentation is a key, and all following indented lines are the value.
* Sanitize the label of an embedded fileBen Bridle2025-01-14
| | | | | There was an issue where an apostrophe character in the label string would prematurely terminate the string.
* Parse checkbox listsBen Bridle2025-01-14
| | | | | If a list item line begins with `[ ]` or `[x]`, the token is interpreted as a checkbox and replaced with a real HTML checkbox.
* Change HTML header formatBen Bridle2025-01-14
| | | | | The header of the main index page is no longer cleared, it can be hidden with CSS by the user instead.
* Implement recipe parsingBen Bridle2025-01-14
|
* Detect duplicate headings within a pageBen Bridle2025-01-14
| | | | | | This is an issue because the duplicate headings will have identical ids, and all links to the lower heading will instead link to the upper heading.
* Rewrite link handling and add navigation features to generated HTMLBen Bridle2025-01-09
|
* Wrap table sections with <tbody>Ben Bridle2025-01-08
| | | | | Each section of a table is now wrapped with <tbody>, instead of just the entire table.
* More robust file traversal logicBen Bridle2025-01-08
| | | | | | | | | | | | | | File traversal can now cope with symbolic links. The original path to each file is preserved where before they were unintentionally canonicalized, so the source folder prefix can now be correctly stripped from the path of each source file. This commit also adds the !folder syntax from the original toaster. Directories with a !-prefix are copied without modification to the site root. A --delete option has been added to the program. When this option is set, the destination directory is first deleted if it already exists.
* Load default CSS and JavaScript files from site rootBen Bridle2025-01-07
| | | | | | | | | | | | | Instead of linking to a static path for the CSS and JavaScript files in the head of each generated HTML document, dynamically generate a relative path that backtracks to the site root before descending into the chosen directory. This ensures that all pages will link to the same set of CSS/JS files, no matter how deeply nested. This could have been accomplished through the use of absolute paths, but I want the websites generated by this program to be able to be freely mixed and matched with existing websites, which requires the use of relative paths only.
* A collection of fixesBen Bridle2025-01-07
| | | | | | Fixed a lot of issues around internal relative links and link validity checks. Added a math fragment syntax and the $$..$$ math form. Added heading link validity checks.
* Initial versionv1.0.0Ben Bridle2025-01-06