67 lines
2.0 KiB
TOML
67 lines
2.0 KiB
TOML
[settings]
|
|
quiet = true
|
|
env_shell_expand = true
|
|
lockfile = true
|
|
|
|
[tools]
|
|
typst = "latest"
|
|
typstyle = "latest"
|
|
tinymist = "latest"
|
|
yq = "latest"
|
|
|
|
[vars]
|
|
vendor_dir = "{{config_root}}/vendor"
|
|
|
|
work_doc_config = "src/doc.toml"
|
|
work_input_file = "src/main.typ"
|
|
work_output_file = "{{config_root}}/main.pdf"
|
|
|
|
nure_package_repo = "https://gitea.linerds.us/pencelheimer/typst_nure_template.git"
|
|
nure_package_ref = "0.1.1"
|
|
nure_package_rev = "af2ba45a16f94b37cae9db0f8fdb915db545498d"
|
|
nure_package_path = "{{env.TYPST_PACKAGE_DIR}}/{{vars.nure_package_name}}/{{vars.nure_package_ver}}"
|
|
|
|
nure_package_name = "vendor/nure"
|
|
nure_package_ver = "{{vars.nure_package_ref}}"
|
|
|
|
[env]
|
|
TYPST_PACKAGE_DIR = "{{vars.vendor_dir}}/typst-packages"
|
|
TYPST_PACKAGE_PATH = "$TYPST_PACKAGE_DIR"
|
|
|
|
[tasks.watch]
|
|
depends = ["fetch-nure-package"]
|
|
run = "mise exec -- typst watch {{vars.work_input_file}} {{vars.work_output_file}}"
|
|
|
|
[tasks.compile]
|
|
depends = ["fetch-nure-package"]
|
|
run = "mise exec -- typst compile {{vars.work_input_file}} {{vars.work_output_file}}"
|
|
|
|
[tasks.clean]
|
|
run = "rm -rvif *.pdf"
|
|
|
|
[tasks.update-package-rev]
|
|
run = "mise config set vars.nure_package_rev $(git ls-remote {{vars.nure_package_repo}} refs/heads/{{vars.nure_package_ref}} | cut -f1)"
|
|
|
|
[tasks.fetch-nure-package]
|
|
silent = "stdout"
|
|
run = """
|
|
#!/usr/bin/env bash
|
|
|
|
if [ ! -d {{vars.nure_package_path}}/.git ]; then
|
|
git clone --depth 1 --revision {{vars.nure_package_rev}} {{vars.nure_package_repo}} {{vars.nure_package_path}}
|
|
else
|
|
git -C {{vars.nure_package_path}} fetch --depth 1 origin {{vars.nure_package_rev}}
|
|
git -C {{vars.nure_package_path}} checkout {{vars.nure_package_rev}}
|
|
fi
|
|
"""
|
|
|
|
[tasks.copy]
|
|
depends = ["compile"]
|
|
run = """
|
|
#!/usr/bin/env bash
|
|
|
|
final_name=$(mise exec -- yq '.type + (.number | tostring) + "_" + (.authors[0].name | split(" "))[0] + "_" + (.authors[0].edu-program + "-" + .authors[0].group) + "_" + .subject + ".pdf"' "{{vars.work_doc_config}}");
|
|
|
|
cp -v "{{vars.work_output_file}}" "$final_name"
|
|
"""
|