diff --git a/prepends/quote.typ b/prepends/quote.typ
new file mode 100644
index 0000000..bba122d
--- /dev/null
+++ b/prepends/quote.typ
@@ -0,0 +1,15 @@
+// Typst version 14.0.2 outputs a block quote as a
followed by
+// a
for the attribution. This makes it difficult to target the
+// attribution for styling. This snippet instead uses a
and
+// a wrapped in a block.
+#show quote.where(block: true): it => {
+ let inner = html.elem("blockquote", it.body)
+ if it.attribution != none {
+ html.elem("figure", {
+ inner
+ html.elem("figcaption", it.attribution)
+ })
+ } else {
+ inner
+ }
+}
diff --git a/rust-toolchain.toml b/rust-toolchain.toml
new file mode 100644
index 0000000..9cab269
--- /dev/null
+++ b/rust-toolchain.toml
@@ -0,0 +1,3 @@
+[toolchain]
+channel = "stable"
+
diff --git a/shell.nix b/shell.nix
deleted file mode 100644
index afd09a7..0000000
--- a/shell.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ pkgs ? import {} }:
-
-pkgs.mkShell {
- buildInputs = with pkgs; [
- cargo
- rustc
- rust-analyzer
- ];
-}
-