summaryrefslogtreecommitdiff
path: root/crates/typst-cli
diff options
context:
space:
mode:
Diffstat (limited to 'crates/typst-cli')
-rw-r--r--crates/typst-cli/src/args.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/crates/typst-cli/src/args.rs b/crates/typst-cli/src/args.rs
index 2113e03c..cfd1ae08 100644
--- a/crates/typst-cli/src/args.rs
+++ b/crates/typst-cli/src/args.rs
@@ -5,6 +5,10 @@ use semver::Version;
use clap::{ArgAction, Args, Parser, Subcommand, ValueEnum};
+/// The character typically used to separate path components
+/// in environment variables.
+const ENV_PATH_SEP: char = if cfg!(windows) { ';' } else { ':' };
+
/// The Typst compiler.
#[derive(Debug, Clone, Parser)]
#[clap(name = "typst", version = crate::typst_version(), author)]
@@ -118,7 +122,7 @@ pub struct SharedArgs {
long = "font-path",
env = "TYPST_FONT_PATHS",
value_name = "DIR",
- action = ArgAction::Append,
+ value_delimiter = ENV_PATH_SEP,
)]
pub font_paths: Vec<PathBuf>,
@@ -139,7 +143,7 @@ pub struct FontsCommand {
long = "font-path",
env = "TYPST_FONT_PATHS",
value_name = "DIR",
- action = ArgAction::Append,
+ value_delimiter = ENV_PATH_SEP,
)]
pub font_paths: Vec<PathBuf>,