]>
Commit | Line | Data |
---|---|---|
f20569fa XL |
1 | extern crate dirs_sys; |
2 | ||
3 | use std::path::PathBuf; | |
4 | ||
5 | pub fn home_dir() -> Option<PathBuf> { dirs_sys::home_dir() } | |
6 | pub fn cache_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Caches")) } | |
7 | pub fn config_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Preferences")) } | |
8 | pub fn data_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Application Support")) } | |
9 | pub fn data_local_dir() -> Option<PathBuf> { data_dir() } | |
10 | pub fn executable_dir() -> Option<PathBuf> { None } | |
11 | pub fn runtime_dir() -> Option<PathBuf> { None } | |
12 | pub fn audio_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Music")) } | |
13 | pub fn desktop_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Desktop")) } | |
14 | pub fn document_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Documents")) } | |
15 | pub fn download_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Downloads")) } | |
16 | pub fn font_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Library/Fonts")) } | |
17 | pub fn picture_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Pictures")) } | |
18 | pub fn public_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Public")) } | |
19 | pub fn template_dir() -> Option<PathBuf> { None } | |
20 | pub fn video_dir() -> Option<PathBuf> { home_dir().map(|h| h.join("Movies")) } |