diff options
author | Michael Davis | 2024-01-16 19:00:06 +0000 |
---|---|---|
committer | Blaž Hrastnik | 2024-01-18 01:57:53 +0000 |
commit | 1bc7aac7805285cea9ef6dc8adcaabf87a18ce67 (patch) | |
tree | 5f88e2b7bac582d510505699915ef3a4314fef0b | |
parent | 1f916e65cff4459698d465b2f4558da1e1bf6e44 (diff) |
Use helix-stdx tilde expansion and normalization for HELIX_RUNTIME paths
Previously this wasn't possible since helix-core depends on helix-loader,
so helix-loader couldn't use helix-core's path extensions.
We use the path normalization/canonicalization for the runtime directory
provided by the HELIX_RUNTIME environment variable. This improves a
scenario where you set a path containing a tilde. Now that path will be
expanded and normalized.
-rw-r--r-- | Cargo.lock | 1 | ||||
-rw-r--r-- | helix-loader/Cargo.toml | 2 | ||||
-rw-r--r-- | helix-loader/src/lib.rs | 3 |
3 files changed, 5 insertions, 1 deletions
@@ -1114,6 +1114,7 @@ dependencies = [ "cc", "dunce", "etcetera", + "helix-stdx", "libloading", "log", "once_cell", diff --git a/helix-loader/Cargo.toml b/helix-loader/Cargo.toml index 18747538..08da7f29 100644 --- a/helix-loader/Cargo.toml +++ b/helix-loader/Cargo.toml @@ -15,6 +15,8 @@ name = "hx-loader" path = "src/main.rs" [dependencies] +helix-stdx = { path = "../helix-stdx" } + anyhow = "1" serde = { version = "1.0", features = ["derive"] } toml = "0.7" diff --git a/helix-loader/src/lib.rs b/helix-loader/src/lib.rs index 991504fb..f8fac670 100644 --- a/helix-loader/src/lib.rs +++ b/helix-loader/src/lib.rs @@ -53,7 +53,8 @@ fn prioritize_runtime_dirs() -> Vec<PathBuf> { rt_dirs.push(conf_rt_dir); if let Ok(dir) = std::env::var("HELIX_RUNTIME") { - rt_dirs.push(dir.into()); + let dir = path::expand_tilde(dir); + rt_dirs.push(path::normalize(dir)); } // If this variable is set during build time, it will always be included |