tvl-depot/tools/cheddar
Vincent Ambo a9902dadcf feat(cheddar): Implement highlighting of CL and bug shortlinks
Implements highlighting of shortlinks like cl/123, or b/123.

Highlighting works by replacing the input Markdown using a simple
regular expression replacement.

We also considered parsing and replacing these links in the Markdown
AST, but it would have been significantly more complex (due to arena
allocation) for little upside and no obvious performance benefit.

Change-Id: I53f03fb17491046d89d0b7f605929571c11ee9a8
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3082
Tested-by: BuildkiteCI
Reviewed-by: eta <eta@theta.eu.org>
2021-05-04 15:50:26 +00:00
..
src feat(cheddar): Implement highlighting of CL and bug shortlinks 2021-05-04 15:50:26 +00:00
.gitignore feat(tools/cheddar): Check in new syntax highlighting tool 2019-12-21 04:54:57 +00:00
.skip-subtree feat(tools/cheddar): Check in new syntax highlighting tool 2019-12-21 04:54:57 +00:00
build.rs feat(cheddar): Add a build script that injects BAT_SYNTAXES 2021-05-03 20:18:33 +00:00
Cargo.lock feat(cheddar): Implement highlighting of CL and bug shortlinks 2021-05-04 15:50:26 +00:00
Cargo.toml feat(cheddar): Implement highlighting of CL and bug shortlinks 2021-05-04 15:50:26 +00:00
default.nix refactor(cheddar): Consistent use of depot.third_party vs. pkgs 2021-04-10 12:06:40 +00:00
README.md docs(cheddar): Mention cgit filter compatibility in README 2019-12-21 15:56:44 +00:00

cheddar

Cheddar is a tiny Rust tool that uses syntect to render source code to syntax-highlighted HTML.

It's invocation is compatible with cgit filters, i.e. data is read from stdin and the filename is taken from argv:

cat README.md | cheddar README.md > README.html

In fact, if you are looking at this file on git.tazj.in chances are that it was rendered by cheddar.

The name was chosen because I was eyeing a pack of cheddar-flavoured crisps while thinking about name selection.