Spec-Zone.ru › Octave 9

Далее: Подфункции, Вверх: Файлы функций [Оглавление][Индекс]

11.10.1 Изменение пути загрузки ¶

При вызове функции Octave ищет файл, содержащий объявление функции, в списке каталогов. Этот список каталогов называется путём загрузки. По умолчанию путь загрузки содержит список каталогов, поставляемых с Octave, плюс текущую рабочую директорию. Чтобы увидеть текущий путь загрузки, вызовите функцию path без входных или выходных аргументов.

Добавить или удалить каталоги в путь загрузки можно с помощью addpath и rmpath. В качестве примера, следующий код добавляет ‘~/Octave’ в путь загрузки.

addpath ("~/Octave")

После этого каталог ‘~/Octave’ будет проверяться при поиске функций.

: addpath (dir1, …) ¶
: addpath (dir1, …, option) ¶
: oldpath = addpath (…) ¶

Добавляет указанные каталоги в путь поиска функций.

Если option равно "-begin" или 0 (по умолчанию), имя(на) каталога(ов) добавляется в начало текущего пути. Если option равно "-end" или 1, имя(на) каталога(ов) добавляется в конец текущего пути. Каталоги, добавленные в путь, должны существовать.

Помимо отдельных аргументов, принимаются списки имён каталогов, разделённые pathsep. Например:

addpath ("dir1:/dir2:~/dir3")

Добавленные пути появятся в пути загрузки в том же порядке, в котором они указаны в аргументах функции addpath. При добавлении в начало пути, последний путь в списке аргументов добавляется первым. При добавлении в конец пути, первый путь в списке аргументов добавляется первым.

Для каждого добавленного каталога, который ещё не присутствовал в пути, addpath проверяет наличие файла с именем PKG_ADD (без расширения .m) и выполняет его, если он существует.

См. также: path, rmpath, genpath, pathdef, savepath, pathsep.

: pathstr = genpath (dir) ¶
: pathstr = genpath (dir, skipdir1, …) ¶

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

Путь не включает каталоги пакетов (начинающиеся с ‘+’), каталоги старого стиля классов (начинающиеся с ‘@’), каталоги private или любые подкаталоги этих типов.

Если указаны дополнительные строковые параметры, результирующий путь будет исключать каталоги с этими именами.

См. также: path, addpath.

: rmpath (dir1, …) ¶
: oldpath = rmpath (dir1, …) ¶

Удаляет dir1, … из текущего пути поиска функций.

Помимо отдельных аргументов, принимаются списки имён каталогов, разделённые pathsep. Например:

rmpath ("dir1:/dir2:~/dir3")

Для каждого удалённого каталога rmpath проверяет наличие файла с именем PKG_DEL (без расширения .m) и выполняет его, если он существует.

См. также: path, addpath, genpath, pathdef, savepath, pathsep.

: savepath ¶
: savepath file ¶
: status = savepath (…) ¶

Сохраняет уникальную часть текущего пути поиска функций в file.

Список папок, сохранённых в file, не включает папки, добавленные для собственных функций Octave, те, которые принадлежат пакетам Octave (см. pkg load), и те, которые добавлены с помощью командной строки.

Если file опущен, Octave ищет в текущем каталоге файл проекта .octaverc для сохранения информации о пути. Если такого файла нет, используется конфигурационный файл пользователя ~/.octaverc.

При успешном выполнении savepath возвращает 0.

Функция savepath упрощает настройку файла конфигурации пользователя для восстановления рабочих путей, необходимых для конкретного экземпляра Octave. Если имя файла не указано, Octave автоматически восстанавливает сохранённые пути каталогов из соответствующего файла .octaverc при запуске. Если имя файла указано, пути можно восстановить вручную, вызвав source file.

См. также: path, addpath, rmpath, genpath, pathdef.

: path () ¶
: str = path () ¶
: str = path (path1, …) ¶

Изменяет или отображает путь загрузки Octave.

Если nargin и nargout равны нулю, отображает элементы пути загрузки Octave в удобочитаемом формате.

Если nargin равен нулю, а nargout больше нуля, возвращает текущий путь загрузки.

Если nargin больше нуля, конкатенирует аргументы, разделяя их pathsep. Устанавливает внутренний путь поиска в результат и возвращает его.

Проверка на дубликаты элементов не производится.

См. также: addpath, rmpath, genpath, pathdef, savepath, pathsep.

: val = pathdef () ¶

Возвращает путь по умолчанию для Octave.

Информация о пути извлекается из одного из четырёх источников. Возможные источники, в порядке предпочтения:

  1. .octaverc
  2. ~/.octaverc
  3. <OCTAVE_HOME>/…/<version>/m/startup/octaverc
  4. Путь Octave до изменений файлом octaverc.

См. также: path, addpath, rmpath, genpath, savepath.

: val = pathsep () ¶

Запрос символа, используемого для разделения каталогов в пути.

См. также: filesep.

: rehash () ¶

Переинициализировать кэш каталогов пути загрузки Octave.

: fname = file_in_loadpath (file) ¶
: fname = file_in_loadpath (file, "all") ¶

Возвращает абсолютное имя файла file, если он найден в списке каталогов, указанных в path.

Если файл не найден, возвращает пустую строку.

Если file уже является абсолютным именем, имя проверяется в файловой системе, а не в пути загрузки Octave. В этом случае, если file существует, он будет возвращен в fname, в противном случае возвращается пустая строка.

Если первый аргумент является массивом ячеек строк, поиск выполняется в каждом каталоге пути загрузки для элементов массива ячеек и возвращается первый совпавший элемент.

Если указан второй необязательный аргумент "all", возвращается массив ячеек, содержащий список всех файлов с одинаковым именем в пути. Если файлы не найдены, возвращается пустой массив ячеек.

См. также: file_in_path, dir_in_loadpath, path.

: pathstr = restoredefaultpath () ¶

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

Возвращает переинициализированный путь.

См. также: path, addpath, rmpath, genpath, pathdef, savepath, pathsep.

: pathstr = command_line_path () ¶

Возвращает аргумент пути, переданный Octave в командной строке при запуске интерпретатора (--path arg).

См. также: path, addpath, rmpath, genpath, pathdef, savepath, pathsep.

: dirname = dir_in_loadpath (dir) ¶
: dirname = dir_in_loadpath (dir, "all") ¶

Возвращает абсолютное имя элемента пути загрузки, соответствующего dir, если он найден в списке каталогов, указанных в path.

Если совпадение не найдено, возвращается пустая строка.

Сопоставление выполняется в конце каждого элемента пути. Например, если dir равно "foo/bar", он соответствует элементу пути "/some/dir/foo/bar", но не "/some/dir/foo/bar/baz" "/some/dir/allfoo/bar". Если dir является абсолютным именем, а не просто фрагментом пути, он сравнивается с файловой системой, а не с путем загрузки Octave. В этом случае, если dir существует, он будет возвращен в dirname, в противном случае возвращается пустая строка.

Если указан необязательный второй аргумент, возвращается массив ячеек, содержащий все совпадения, а не только первое.

См. также: file_in_path, file_in_loadpath, path.

: current_encoding = mfile_encoding () ¶
: mfile_encoding (new_encoding) ¶
: old_encoding = mfile_encoding (new_encoding) ¶

Запрос или установка кодировки, используемой для чтения m-файлов.

Входные и выходные данные — строки, обозначающие кодировку, например "utf-8".

Эта кодировка используется анализатором Octave при чтении m-файлов, если не была установлена другая кодировка для конкретного каталога, содержащего m-файлы, с помощью функции dir_encoding или в файле .oct-config в этом каталоге.

Специальное значение "system" выбирает кодировку, соответствующую системному региону.

Если кодировка m-файла изменена после того, как m-файлы уже были обработаны, для вступления изменений в силу файлы необходимо снова обработать. Это можно выполнить командой clear all.

Кроме того, эта кодировка используется для загрузки и сохранения файлов с помощью встроенного редактора в графическом интерфейсе Octave.

См. также: dir_encoding.

: current_encoding = dir_encoding (dir) ¶
: dir_encoding (dir, new_encoding) ¶
: dir_encoding (dir, "delete") ¶
: old_encoding = dir_encoding (dir, new_encoding) ¶

Запрос или установка кодировки, используемой для чтения m-файлов в каталоге dir.

Кодировка по каталогу переопределяет (глобально установленную) кодировку m-файлов, см. mfile_encoding.

Строка DIR должна соответствовать тому, как каталог отображается в пути загрузки.

Вход new_encoding должен быть допустимым идентификатором кодировки или "delete". В последнем случае любая кодировка по каталогу удаляется, и (глобально установленная) кодировка m-файлов будет использоваться для заданного dir.

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

Кодировка каталога автоматически считывается из файла .oct-config при добавлении нового пути в путь загрузки (например, с addpath). Чтобы установить кодировку для всех файлов в той же папке, этот файл должен содержать строку, начинающуюся с "encoding=" и за которой следует идентификатор кодировки.

encoding=iso8859-1

Если кодировка файла изменена после того, как файлы уже были обработаны, для вступления изменений в силу файлы необходимо снова обработать. Это можно сделать командой clear all.

См. также: addpath, path, mfile_encoding.

Далее: Подфункции, Наверх: Файлы функций [Оглавление][Индекс]

© 1996–2023 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v9.2.0/Manipulating-the-Load-Path.html

Spec-Zone.ru

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