Spec-Zone.ru › Nim

std/private/osappdirs

Source Edit

Импорты

envvars, ospaths2

Процедуры

proc getCacheDir(): string {....raises: [], tags: [ReadEnvEffect], forbids: [].}

Возвращает каталог кэша текущего пользователя для приложений.

Используются следующие переменные окружения:

  • В Windows: getEnv("LOCALAPPDATA")
  • В macOS: getEnv("XDG_CACHE_HOME", getEnv("HOME") / "Library/Caches")
  • На других платформах: getEnv("XDG_CACHE_HOME", getEnv("HOME") / ".cache")

См. также:

  • процедура getHomeDir
  • процедура getTempDir
  • процедура getConfigDir
  • процедура getDataDir
Source Edit
proc getCacheDir(app: string): string {....raises: [], tags: [ReadEnvEffect],
                                        forbids: [].}
Возвращает каталог кэша для приложения app.
  • В Windows, используется: getCacheDir() / app / "cache"
  • На других платформах, используется: getCacheDir() / app
Source Edit
proc getConfigDir(): string {....gcsafe, extern: "nos$1",
                              tags: [ReadEnvEffect, ReadIOEffect], raises: [],
                              forbids: [].}

Возвращает каталог настроек текущего пользователя для приложений.

На ОС, не являющихся Windows, эта процедура соответствует спецификации XDG Base Directory. Таким образом, эта процедура возвращает значение переменной окружения XDG_CONFIG_HOME, если она установлена, в противном случае возвращает стандартный каталог настроек ("~/.config/").

Завершающий слэш, зависящий от ОС, всегда присутствует в конце возвращаемой строки: \\ в Windows и / на всех других ОС.

См. также:

  • процедура getHomeDir
  • процедура getDataDir
  • процедура getTempDir
  • процедура paths: expandTilde
  • процедура paths: getCurrentDir
  • процедура dirs: setCurrentDir
Source Edit
proc getDataDir(): string {....gcsafe, extern: "nos$1",
                            tags: [ReadEnvEffect, ReadIOEffect], raises: [],
                            forbids: [].}

Возвращает каталог данных текущего пользователя для приложений.

На ОС, не являющихся Windows, эта процедура соответствует спецификации XDG Base Directory. Таким образом, эта процедура возвращает значение переменной окружения XDG_DATA_HOME, если она установлена, в противном случае возвращает стандартный каталог настроек ("~/.local/share" или "~/Library/Application Support" в macOS).

См. также:

  • процедура getHomeDir
  • процедура getConfigDir
  • процедура getTempDir
  • процедура paths: expandTilde
  • процедура paths: getCurrentDir
  • процедура dirs: setCurrentDir
Source Edit
proc getHomeDir(): string {....gcsafe, extern: "nos$1",
                            tags: [ReadEnvEffect, ReadIOEffect], raises: [],
                            forbids: [].}

Возвращает домашний каталог текущего пользователя.

Эта процедура обернута процедурой paths: expandTilde для удобства обработки путей, получаемых из файлов конфигурации пользователя.

См. также:

  • процедура getDataDir
  • процедура getConfigDir
  • процедура getTempDir
  • процедура paths: expandTilde
  • процедура paths: getCurrentDir
  • процедура dirs: setCurrentDir

Пример:

import std/os
assert getHomeDir() == expandTilde("~")
Source Edit
proc getTempDir(): string {....gcsafe, extern: "nos$1",
                            tags: [ReadEnvEffect, ReadIOEffect], raises: [],
                            forbids: [].}

Возвращает временный каталог текущего пользователя для приложений для сохранения временных файлов.

В Windows, она вызывает GetTempPath. На платформах, основанных на Posix, она проверяет TMPDIR, TEMP, TMP и TEMPDIR переменные окружения по порядку. На всех платформах, /tmp будет возвращено, если процедуры не удаются.

Вы можете переопределить это реализацию добавив -d:tempDir=mytempname в вызов компилятора.

Примечание: Эта процедура не проверяет, существует ли возвращаемый путь.

См. также:

  • процедура getHomeDir
  • процедура getConfigDir
  • процедура paths: expandTilde
  • процедура paths: getCurrentDir
  • процедура dirs: setCurrentDir
Source Edit

© 2006–2024 Andreas Rumpf
Licensed under the MIT License.
https://nim-lang.org/docs/osappdirs.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API