tvl-depot/tools/cheddar
Vincent Ambo 5e6685c689 feat(cheddar): Add a build script that injects BAT_SYNTAXES
The BAT_SYNTAXES environment variable is injected during Nix builds
and points to the build result of //third_party/bat_syntaxes, which is
included in the cheddar binary.

During development this is a bit annoying: Opening a Nix shell will
set the right variable, but it will also mess with the Cargo
environment in ways that make it annoying to use (*and* require a
pre-build of all dependencies as required by naersk).

For an easier development flow, this adds a build script that
automatically runs Nix, fetches the path to the syntax set and sets
the environment variable. It is a no-op if the variable is already
set.

This makes for a smoother development experience when working on
cheddar in a depot checkout.

Change-Id: Ib5435518897e3443247edd9f362821c0b9ff756b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3081
Tested-by: BuildkiteCI
Reviewed-by: flokli <flokli@flokli.de>
2021-05-03 20:18:33 +00:00
..
src refactor(cheddar): Split out a library with rendering logic 2021-05-03 13:57:43 +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 chore(cheddar): Bump crate dependencies 2021-03-31 22:06:50 +00:00
Cargo.toml chore(cheddar): Bump crate dependencies 2021-03-31 22:06:50 +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.