diff options
Diffstat (limited to 'src/dirs.rs')
-rw-r--r-- | src/dirs.rs | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/dirs.rs b/src/dirs.rs index 45674e3..2ffbb33 100644 --- a/src/dirs.rs +++ b/src/dirs.rs @@ -1,9 +1,20 @@ +static PROJECT_DIRS: once_cell::sync::Lazy<directories::ProjectDirs> = + once_cell::sync::Lazy::new(|| { + directories::ProjectDirs::from("", "", "nbsh").unwrap() + }); + pub fn config_file() -> std::path::PathBuf { config_dir().join("config.toml") } +pub fn history_file() -> std::path::PathBuf { + data_dir().join("history") +} + fn config_dir() -> std::path::PathBuf { - let project_dirs = - directories::ProjectDirs::from("", "", "nbsh").unwrap(); - project_dirs.config_dir().to_path_buf() + PROJECT_DIRS.config_dir().to_path_buf() +} + +fn data_dir() -> std::path::PathBuf { + PROJECT_DIRS.data_dir().to_path_buf() } |