* Pass lang to shortcodes context
* Add tests for lang in shortcodes
* Lang is passed to anchor-link.html template
* Document passing lang to shortcodes/anchor-link.html
Add a test to make sure lang can be overriden by passing an explicit argument to the shortcode,
for usage in the markdown filter where the language context is not available.
* Update docs for more information on shortcodes+i18n+markdown() filter
Co-authored-by: southerntofu <southerntofu@thunix.net>
* Consider the site's output path in search_for_file
The search_for_file helper function now accepts an optional
output path. If passed, the file will also be searched there.
This is used in the get_url function to search in the
Site::output_path.
In practice, this means cachebust works for files in the
output path.
* Make output_dir required in search_for_file
* Update docs for file searching logic
* Add test for new file searching behavior
* cargo/manifests: allow user to use native-tls ...
... if `ring` can't be used on the user's platform (e.g. mips/ppc/riscv)
* CI: test for native tls build
* Add class based syntax higlighting + line numbers
* Use fork of syntect for now
* Fix tests
* Fix diff background on inline highlighter
Co-authored-by: evan-brass <evan-brass@protonmail.com>
* Add `num_format` filter for displaying formatted numbers
* Register the filter
* Update docs
* Make `locale` argument required
* Revert "Make `locale` argument required"
This reverts commit 9cdbf28591.
* Pull the default locale from the site config
* Add note about defaults to the docs
* Add missing borrow
* Move image loading code used by get_image_metadata from templates to imageproc
* resize_image: Compute image resize op beforehand and return metadata to caller
* get_image_metdata: Use a serializable response struct
* imageproc: Add integration tests
* imageproc: Assume webp is lossy
* get_image_metadata: Use webp crate for decoding WebP, image is still not very good at it
* imageproc: Test read_image_dimensions in integration tests
* imageproc: Rename read_image_dimensions() as read_image_metadata()
* imageproc: Fix a regression in hash computation
* imageproc: Don't hardcode hashes in integration tests, pattern match them instead
* imageproc: Style fixes
* imageproc: Fix integration tests on Windows (hopefully)
* Add new sorting: UpdateDate that sorts by `meta.updated`.
* Use `max(created, updated)` for sort-by-update-date
This prevents created but never updated articles from appearing at the end/not
appearing at all.