diff --git a/.cargo/config.toml b/.cargo/config.toml
index 5a69aef4e2..95ea9fad7f 100644
--- a/.cargo/config.toml
+++ b/.cargo/config.toml
@@ -1,4 +1,5 @@
#paths = ["../vfox.rs"]
+#paths = ["../usage/lib"]
[env]
RUST_TEST_THREADS = '1'
diff --git a/Cargo.lock b/Cargo.lock
index 4cf1305765..75e32dc57b 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -256,7 +256,7 @@ checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -353,9 +353,9 @@ checksum = "d2c54ff287cfc0a34f38a6b832ea1bd8e448a330b3e40a50859e6488bee07f22"
[[package]]
name = "bitflags"
-version = "2.6.0"
+version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
+checksum = "1be3f42a67d6d345ecd59f675f3f012d6974981560836e938c22b424b85ce1be"
[[package]]
name = "block-buffer"
@@ -566,9 +566,9 @@ dependencies = [
[[package]]
name = "clap"
-version = "4.5.25"
+version = "4.5.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b95dca1b68188a08ca6af9d96a6576150f598824bdb528c1190460c2940a0b48"
+checksum = "a8eb5e908ef3a6efbe1ed62520fb7287959888c88485abe072543190ecc66783"
dependencies = [
"clap_builder",
"clap_derive",
@@ -576,9 +576,9 @@ dependencies = [
[[package]]
name = "clap_builder"
-version = "4.5.25"
+version = "4.5.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ab52925392148efd3f7562f2136a81ffb778076bcc85727c6e020d6dd57cf15"
+checksum = "96b01801b5fc6a0a232407abc821660c9c6d25a1cafc0d4f85f29fb8d9afc121"
dependencies = [
"anstream",
"anstyle",
@@ -595,7 +595,7 @@ dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -606,9 +606,9 @@ checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6"
[[package]]
name = "clap_mangen"
-version = "0.2.25"
+version = "0.2.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "acbfe6ac42a2438d0968beba18e3c35cacf16b0c25310bc22b1f5f3cffff09f4"
+checksum = "724842fa9b144f9b89b3f3d371a89f3455eea660361d13a554f68f8ae5d6c13a"
dependencies = [
"clap",
"roff",
@@ -647,7 +647,7 @@ dependencies = [
"nom",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -699,7 +699,7 @@ dependencies = [
"heck 0.5.0",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -892,7 +892,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501"
dependencies = [
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -928,7 +928,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -952,7 +952,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim 0.11.1",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -963,7 +963,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806"
dependencies = [
"darling_core",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -1027,7 +1027,7 @@ checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -1040,7 +1040,7 @@ dependencies = [
"proc-macro2",
"quote",
"rustc_version",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -1095,7 +1095,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -1287,7 +1287,7 @@ dependencies = [
"pest_derive",
"regex",
"strum",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
]
[[package]]
@@ -1509,7 +1509,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -1916,7 +1916,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim 0.10.0",
- "syn 2.0.95",
+ "syn 2.0.96",
"unic-langid",
]
@@ -1930,7 +1930,7 @@ dependencies = [
"i18n-config",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -2071,7 +2071,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -2126,7 +2126,7 @@ dependencies = [
"autocfg",
"impl-tools-lib",
"proc-macro-error2",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -2138,7 +2138,7 @@ dependencies = [
"proc-macro-error2",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -2313,13 +2313,14 @@ dependencies = [
[[package]]
name = "kdl"
-version = "4.7.0"
+version = "6.2.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a18038fbecda667e7ea2101bdd02af754da5e17ca2887a7649b8f3fa809d8b8"
+checksum = "6d63de1aa3d632a8dd61da7cddfc499e9f88e6265d85bd84002419c3cdd3dc8f"
dependencies = [
"miette",
- "nom",
+ "num",
"thiserror 1.0.69",
+ "winnow",
]
[[package]]
@@ -2342,7 +2343,7 @@ dependencies = [
"proc-macro2",
"quote",
"regex",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -2577,7 +2578,7 @@ checksum = "23c9b935fbe1d6cbd1dac857b54a688145e2d93f48db36010514d0f612d0ad67"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -2712,7 +2713,7 @@ dependencies = [
"tera",
"terminal_size",
"test-log",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"tokio",
"toml 0.8.19",
"toml_edit",
@@ -2773,7 +2774,7 @@ dependencies = [
"proc-macro2",
"quote",
"regex",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -2835,12 +2836,76 @@ dependencies = [
"winapi",
]
+[[package]]
+name = "num"
+version = "0.4.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23"
+dependencies = [
+ "num-bigint",
+ "num-complex",
+ "num-integer",
+ "num-iter",
+ "num-rational",
+ "num-traits",
+]
+
+[[package]]
+name = "num-bigint"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9"
+dependencies = [
+ "num-integer",
+ "num-traits",
+]
+
+[[package]]
+name = "num-complex"
+version = "0.4.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
+dependencies = [
+ "num-traits",
+]
+
[[package]]
name = "num-conv"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+[[package]]
+name = "num-integer"
+version = "0.1.46"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
+dependencies = [
+ "num-traits",
+]
+
+[[package]]
+name = "num-iter"
+version = "0.1.45"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf"
+dependencies = [
+ "autocfg",
+ "num-integer",
+ "num-traits",
+]
+
+[[package]]
+name = "num-rational"
+version = "0.4.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
+dependencies = [
+ "num-bigint",
+ "num-integer",
+ "num-traits",
+]
+
[[package]]
name = "num-traits"
version = "0.2.19"
@@ -2910,7 +2975,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -3069,7 +3134,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc"
dependencies = [
"memchr",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"ucd-trie",
]
@@ -3093,7 +3158,7 @@ dependencies = [
"pest_meta",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -3172,7 +3237,7 @@ checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -3306,7 +3371,7 @@ dependencies = [
"proc-macro-error-attr2",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -3340,7 +3405,7 @@ dependencies = [
"rustc-hash 2.1.0",
"rustls",
"socket2",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"tokio",
"tracing",
]
@@ -3359,7 +3424,7 @@ dependencies = [
"rustls",
"rustls-pki-types",
"slab",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"tinyvec",
"tracing",
"web-time",
@@ -3661,7 +3726,7 @@ dependencies = [
"proc-macro2",
"quote",
"rust-embed-utils",
- "syn 2.0.95",
+ "syn 2.0.96",
"walkdir",
]
@@ -3717,9 +3782,9 @@ dependencies = [
[[package]]
name = "rustls"
-version = "0.23.20"
+version = "0.23.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5065c3f250cbd332cd894be57c40fa52387247659b14a2d6041d121547903b1b"
+checksum = "8f287924602bf649d949c63dc8ac8b235fa5387d394020705b80c4eb597ce5b8"
dependencies = [
"once_cell",
"ring",
@@ -3969,7 +4034,7 @@ checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4052,7 +4117,7 @@ dependencies = [
"darling",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4090,7 +4155,7 @@ checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4304,7 +4369,7 @@ dependencies = [
"proc-macro2",
"quote",
"rustversion",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4326,9 +4391,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.95"
+version = "2.0.96"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46f71c0377baf4ef1cc3e3402ded576dccc315800fbc62dfc7fe04b009773b4a"
+checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80"
dependencies = [
"proc-macro2",
"quote",
@@ -4352,7 +4417,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4517,7 +4582,7 @@ checksum = "5999e24eaa32083191ba4e425deb75cdf25efefabe5aaccb7446dd0d4122a3f5"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4537,11 +4602,11 @@ dependencies = [
[[package]]
name = "thiserror"
-version = "2.0.10"
+version = "2.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3ac7f54ca534db81081ef1c1e7f6ea8a3ef428d2fc069097c079443d24124d3"
+checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc"
dependencies = [
- "thiserror-impl 2.0.10",
+ "thiserror-impl 2.0.11",
]
[[package]]
@@ -4552,18 +4617,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
name = "thiserror-impl"
-version = "2.0.10"
+version = "2.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9e9465d30713b56a37ede7185763c3492a91be2f5fa68d958c44e41ab9248beb"
+checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4658,7 +4723,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4783,7 +4848,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -4884,7 +4949,7 @@ dependencies = [
"serial_test",
"strum",
"tempfile",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"url",
"which 7.0.1",
"xz2",
@@ -5032,14 +5097,14 @@ checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da"
[[package]]
name = "usage-lib"
-version = "1.7.4"
+version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ab923f719b3048bd1cd2fb738fca978ed2a60756ce15cdad639fc40645adad9c"
+checksum = "af82e9e433b8f3ab2471b1f3041774ab9a1299c855f4cf2448e2370a333d7356"
dependencies = [
"clap",
"heck 0.5.0",
"indexmap 2.7.0",
- "itertools 0.13.0",
+ "itertools 0.14.0",
"kdl",
"log",
"miette",
@@ -5049,7 +5114,7 @@ dependencies = [
"shell-words",
"strum",
"tera",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"versions",
"xx",
]
@@ -5117,7 +5182,7 @@ dependencies = [
"serde",
"serde_json",
"tempfile",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"tokio",
"url",
"xx",
@@ -5190,7 +5255,7 @@ dependencies = [
"log",
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
"wasm-bindgen-shared",
]
@@ -5225,7 +5290,7 @@ checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -5365,7 +5430,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -5376,7 +5441,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -5568,9 +5633,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]]
name = "winnow"
-version = "0.6.22"
+version = "0.6.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39281189af81c07ec09db316b302a3e67bf9bd7cbf6c820b50e35fee9c2fa980"
+checksum = "c8d71a593cc5c42ad7876e2c1fda56f314f3754c084128833e64f1345ff8a03a"
dependencies = [
"memchr",
]
@@ -5634,7 +5699,7 @@ dependencies = [
"reqwest",
"sha2",
"tar",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"tokio",
"xz2",
"zip",
@@ -5675,7 +5740,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
"synstructure",
]
@@ -5697,7 +5762,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -5717,7 +5782,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
"synstructure",
]
@@ -5738,7 +5803,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -5760,7 +5825,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.95",
+ "syn 2.0.96",
]
[[package]]
@@ -5785,7 +5850,7 @@ dependencies = [
"pbkdf2",
"rand",
"sha1",
- "thiserror 2.0.10",
+ "thiserror 2.0.11",
"time",
"zeroize",
"zopfli",
diff --git a/Cargo.toml b/Cargo.toml
index 8aefafd6c6..0419c8db60 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -138,8 +138,7 @@ toml = { version = "0.8", features = ["parse"] }
toml_edit = { version = "0.22", features = ["parse"] }
ubi = { version = "0.3", default-features = false }
url = "2"
-# usage-lib = { path = "../usage/lib", features = ["clap", "docs"] }
-usage-lib = { version = "1", features = ["clap", "docs"] }
+usage-lib = { version = "2", features = ["clap", "docs"] }
versions = { version = "6", features = ["serde"] }
# vfox = { path = "../vfox.rs" }
vfox = { version = "1", default-features = false }
diff --git a/completions/mise.bash b/completions/mise.bash
index 17905b1c0f..a357998ce6 100644
--- a/completions/mise.bash
+++ b/completions/mise.bash
@@ -22,5 +22,9 @@ _mise() {
return 0
}
-shopt -u hostcomplete && complete -o nospace -o bashdefault -o nosort -F _mise mise
+if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
+ shopt -u hostcomplete && complete -o nospace -o bashdefault -o nosort -F _mise mise
+else
+ shopt -u hostcomplete && complete -o nospace -o bashdefault -F _mise mise
+fi
# vim: noet ci pi sts=0 sw=4 ts=4 ft=sh
diff --git a/completions/mise.fish b/completions/mise.fish
index 77959c3b6a..6e9ced7aab 100644
--- a/completions/mise.fish
+++ b/completions/mise.fish
@@ -9,4 +9,9 @@ end
if ! set -q _usage_spec_mise_2025_1_3
set -g _usage_spec_mise_2025_1_3 (mise usage | string collect)
end
-complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_1_3" -- (commandline -cop) (commandline -t))'
+set -l tokens
+if commandline -x >/dev/null 2>&1
+ complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_1_3" -- (commandline -xpc) (commandline -t))'
+else
+ complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_1_3" -- (commandline -opc) (commandline -t))'
+end
diff --git a/e2e/tasks/test_task_deps b/e2e/tasks/test_task_deps
index 2d377d7d6e..40359231e1 100644
--- a/e2e/tasks/test_task_deps
+++ b/e2e/tasks/test_task_deps
@@ -47,8 +47,8 @@ Source: ~/workdir/mise.toml
Depends on: hello:*
Usage Spec:
- name "hello:all"
- bin "hello:all"'
+ name hello:all
+ bin hello:all'
echo '' >mise.toml
diff --git a/e2e/tasks/test_task_info b/e2e/tasks/test_task_info
index ef2d58957f..5fbc8f510c 100644
--- a/e2e/tasks/test_task_info
+++ b/e2e/tasks/test_task_info
@@ -7,8 +7,8 @@ Source: ~/workdir/mise-tasks/build.sh
File: ~/workdir/mise-tasks/build.sh
Usage Spec:
- name "build"
- bin "build"'
+ name build
+ bin build'
assert_contains "mise task info build.sh --json" '"name": "build"'
diff --git a/e2e/tasks/test_task_usage b/e2e/tasks/test_task_usage
index 44c4555bb5..50f8a680fd 100644
--- a/e2e/tasks/test_task_usage
+++ b/e2e/tasks/test_task_usage
@@ -10,7 +10,7 @@ assert_json_partial_array "mise task ls --json" "name,description,source" "[
\"source\": \"$PWD/mise-tasks/test.sh\"
}
]"
-assert "mise task ls --usage" 'cmd "test" help="sh"'
+assert "mise task ls --usage" 'cmd test help=sh'
assert "mise task add --file test --description no-sh"
assert "mise task ls" "test no-sh
@@ -45,5 +45,5 @@ assert_json_partial_array "mise task ls --json" "name,description,source" "$(
EOF
)"
-assert "mise task ls --usage" 'cmd "test" help="no-sh"
-cmd "test.sh" help="sh"'
+assert "mise task ls --usage" 'cmd test help=no-sh
+cmd test.sh help=sh'
diff --git a/mise.lock b/mise.lock
index 272c12ab10..ca16b702eb 100644
--- a/mise.lock
+++ b/mise.lock
@@ -41,7 +41,7 @@ version = "0.2.3"
backend = "cargo:toml-cli"
[tools."cargo:usage-cli"]
-version = "1.7.4"
+version = "2.0.0"
backend = "cargo:usage-cli"
[tools.cosign]
diff --git a/mise.usage.kdl b/mise.usage.kdl
index 8fe5170f00..a410862b52 100644
--- a/mise.usage.kdl
+++ b/mise.usage.kdl
@@ -1,1878 +1,989 @@
min_usage_version "1.3"
-name "mise"
-bin "mise"
+name mise
+bin mise
about "The front-end to your dev env"
-long_about r"
-mise is a tool for managing runtime versions. https://github.com/jdx/mise
-
-It's a replacement for tools like nvm, nodenv, rbenv, rvm, chruby, pyenv, etc.
-that works for any language. It's also great for managing linters/tools like
-jq and shellcheck.
-
-It is inspired by asdf and uses asdf's plugin ecosystem under the hood:
-https://asdf-vm.com/"
+long_about "\nmise is a tool for managing runtime versions. https://github.com/jdx/mise\n\nIt's a replacement for tools like nvm, nodenv, rbenv, rvm, chruby, pyenv, etc.\nthat works for any language. It's also great for managing linters/tools like\njq and shellcheck.\n\nIt is inspired by asdf and uses asdf's plugin ecosystem under the hood:\nhttps://asdf-vm.com/"
usage "Usage: mise [OPTIONS] [TASK] [COMMAND]"
-flag "-C --cd" help="Change directory before running command" global=true {
- arg "
"
+flag "-C --cd" help="Change directory before running command" global=#true {
+ arg
}
-flag "-c --continue-on-error" help="Continue running tasks even if one fails" hide=true
-flag "-n --dry-run" help="Dry run, don't actually do anything" hide=true
-flag "-E --env" help="Set the environment for loading `mise..toml`" var=true global=true {
- arg ""
+flag "-c --continue-on-error" help="Continue running tasks even if one fails" hide=#true
+flag "-n --dry-run" help="Dry run, don't actually do anything" hide=#true
+flag "-E --env" help="Set the environment for loading `mise..toml`" var=#true global=#true {
+ arg
}
-flag "-f --force" help="Force the operation" hide=true
-flag "-i --interleave" help="Set the log output verbosity" hide=true
-flag "-j --jobs" help="How many jobs to run in parallel [default: 8]" global=true {
- arg ""
+flag "-f --force" help="Force the operation" hide=#true
+flag "-i --interleave" help="Set the log output verbosity" hide=#true
+flag "-j --jobs" help="How many jobs to run in parallel [default: 8]" global=#true {
+ arg
}
-flag "-p --prefix" hide=true
-flag "--output" {
- arg "