[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" """