diff options
author | Michael Davis | 2022-02-16 13:57:20 +0000 |
---|---|---|
committer | Blaž Hrastnik | 2022-03-10 08:31:57 +0000 |
commit | 4fc991fdeca5db36bd7be7197510e62a019e1677 (patch) | |
tree | 03ce0022ba5f6aa71adf1c81214d05db8a84f035 /helix-core/src/path.rs | |
parent | 08ee949dcb904dc27aa41a62ad686c14c0a406bb (diff) |
migrate grammar fetching/building code into helix-loader crate
This is a rather large refactor that moves most of the code for
loading, fetching, and building grammars into a new helix-loader
module. This works well with the [[grammars]] syntax for
languages.toml defined earlier: we only have to depend on the types
for GrammarConfiguration in helix-loader and can leave all the
[[language]] entries for helix-core.
Diffstat (limited to 'helix-core/src/path.rs')
-rw-r--r-- | helix-core/src/path.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/helix-core/src/path.rs b/helix-core/src/path.rs index a6644465..e0c3bef6 100644 --- a/helix-core/src/path.rs +++ b/helix-core/src/path.rs @@ -1,9 +1,10 @@ +use etcetera::home_dir; use std::path::{Component, Path, PathBuf}; /// Replaces users home directory from `path` with tilde `~` if the directory /// is available, otherwise returns the path unchanged. pub fn fold_home_dir(path: &Path) -> PathBuf { - if let Ok(home) = super::home_dir() { + if let Ok(home) = home_dir() { if path.starts_with(&home) { // it's ok to unwrap, the path starts with home dir return PathBuf::from("~").join(path.strip_prefix(&home).unwrap()); @@ -20,7 +21,7 @@ pub fn expand_tilde(path: &Path) -> PathBuf { let mut components = path.components().peekable(); if let Some(Component::Normal(c)) = components.peek() { if c == &"~" { - if let Ok(home) = super::home_dir() { + if let Ok(home) = home_dir() { // it's ok to unwrap, the path starts with `~` return home.join(path.strip_prefix("~").unwrap()); } |