diff options
Diffstat (limited to 'lib/std/appdirs.nim')
-rw-r--r-- | lib/std/appdirs.nim | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/std/appdirs.nim b/lib/std/appdirs.nim index e648fe0c1..963451efe 100644 --- a/lib/std/appdirs.nim +++ b/lib/std/appdirs.nim @@ -1,5 +1,7 @@ ## This module implements helpers for determining special directories used by apps. +## .. importdoc:: paths.nim + from std/private/osappdirs import nil import std/paths import std/envvars @@ -15,6 +17,23 @@ proc getHomeDir*(): Path {.inline, tags: [ReadEnvEffect, ReadIOEffect].} = ## * `getTempDir proc`_ result = Path(osappdirs.getHomeDir()) +proc getDataDir*(): Path {.inline, tags: [ReadEnvEffect, ReadIOEffect].} = + ## Returns the data directory of the current user for applications. + ## + ## On non-Windows OSs, this proc conforms to the XDG Base Directory + ## spec. Thus, this proc returns the value of the `XDG_DATA_HOME` environment + ## variable if it is set, otherwise it returns the default configuration + ## directory ("~/.local/share" or "~/Library/Application Support" on macOS). + ## + ## See also: + ## * `getHomeDir proc`_ + ## * `getConfigDir proc`_ + ## * `getTempDir proc`_ + ## * `expandTilde proc`_ + ## * `getCurrentDir proc`_ + ## * `setCurrentDir proc`_ + result = Path(osappdirs.getDataDir()) + proc getConfigDir*(): Path {.inline, tags: [ReadEnvEffect, ReadIOEffect].} = ## Returns the config directory of the current user for applications. ## |