Procs
proc getCacheDir(): string {....raises: [], tags: [ReadEnvEffect], forbids: [].}
-
Returns the cache directory of the current user for applications.
This makes use of the following environment variables:
- On Windows: getEnv("LOCALAPPDATA")
- On macOS: getEnv("XDG_CACHE_HOME", getEnv("HOME") / "Library/Caches")
- On other platforms: getEnv("XDG_CACHE_HOME", getEnv("HOME") / ".cache")
See also:
Source Edit proc getCacheDir(app: string): string {....raises: [], tags: [ReadEnvEffect], forbids: [].}
-
Returns the cache directory for an application app.
- On Windows, this uses: getCacheDir() / app / "cache"
- On other platforms, this uses: getCacheDir() / app
proc getConfigDir(): string {....gcsafe, extern: "nos$1", tags: [ReadEnvEffect, ReadIOEffect], raises: [], forbids: [].}
-
Returns the config 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_CONFIG_HOME environment variable if it is set, otherwise it returns the default configuration directory ("~/.config/").
An OS-dependent trailing slash is always present at the end of the returned string: \\ on Windows and / on all other OSs.
See also:
- getHomeDir proc
- getDataDir proc
- getTempDir proc
- paths: expandTilde proc
- paths: getCurrentDir proc
- dirs: setCurrentDir proc
proc getDataDir(): string {....gcsafe, extern: "nos$1", tags: [ReadEnvEffect, ReadIOEffect], raises: [], forbids: [].}
-
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
- paths: expandTilde proc
- paths: getCurrentDir proc
- dirs: setCurrentDir proc
proc getHomeDir(): string {....gcsafe, extern: "nos$1", tags: [ReadEnvEffect, ReadIOEffect], raises: [], forbids: [].}
-
Returns the home directory of the current user.
This proc is wrapped by the paths: expandTilde proc for the convenience of processing paths coming from user configuration files.
See also:
- getDataDir proc
- getConfigDir proc
- getTempDir proc
- paths: expandTilde proc
- paths: getCurrentDir proc
- dirs: setCurrentDir proc
Example:
import std/os assert getHomeDir() == expandTilde("~")
Source Edit proc getTempDir(): string {....gcsafe, extern: "nos$1", tags: [ReadEnvEffect, ReadIOEffect], raises: [], forbids: [].}
-
Returns the temporary directory of the current user for applications to save temporary files in.
On Windows, it calls GetTempPath. On Posix based platforms, it will check TMPDIR, TEMP, TMP and TEMPDIR environment variables in order. On all platforms, /tmp will be returned if the procs fails.
You can override this implementation by adding -d:tempDir=mytempname to your compiler invocation.
Note: This proc does not check whether the returned path exists.
See also:
- getHomeDir proc
- getConfigDir proc
- paths: expandTilde proc
- paths: getCurrentDir proc
- dirs: setCurrentDir proc