Spec-Zone.ru › Fish 3.7

fish_opt - создание спецификации опции для команды argparse

Синтаксис

fish_opt [(-slor | --multiple-vals=) OPTNAME]
fish_opt --help

Описание

Эта команда предоставляет способ создания спецификаций опций, подходящих для использования с командой argparse. Конечно, вы можете написать спецификации опций вручную, без использования этой команды. Но вы можете предпочесть использовать эту команду для большей ясности.

Доступны следующие argparse опции:

-s или --short

Принимает одиночную букву, используемую в качестве короткого флага определяемой опции. Эта опция обязательна.

-l или --long

Принимает строку, используемую в качестве длинного флага определяемой опции. Эта опция необязательна и не имеет значения по умолчанию. Если длинный флаг не определен, при анализе аргументов с использованием спецификации опции будет разрешен только короткий флаг.

--long-only

Определяемая опция будет разрешать использовать только имя длинного флага. Короткое имя флага всё ещё должно быть определено (т.е., необходимо указать --short), но оно не может использоваться при анализе аргументов с использованием этой спецификации опции.

-o или --optional-val

Определяемая опция может принимать значение, но оно является необязательным, а не обязательным. Если опция встречается более одного раза при анализе аргументов, сохраняется только последнее увиденное значение. Это означает, что результирующая переменная флага, созданная argparse, будет иметь ноль элементов, если со значением опции не было дано значение, в противном случае она будет содержать ровно один элемент.

-r или --required-val

Определяемая опция требует значения. Если опция встречается более одного раза при анализе аргументов, сохраняется только последнее увиденное значение. Это означает, что результирующая переменная флага, созданная argparse, будет содержать ровно один элемент.

--multiple-vals

Определяемая опция требует значения каждый раз, когда она встречается. Каждый экземпляр сохраняется. Это означает, что результирующая переменная флага, созданная argparse, будет содержать один элемент для каждого экземпляра этой опции в аргументах.

-h или --help

Отображает справку по использованию этой команды.

Примеры

Определите спецификацию одной опции для флага помощи boolean:

set -l options (fish_opt -s h -l help)
argparse $options -- $argv

То же самое, что выше, но со вторым флагом, который требует значения:

set -l options (fish_opt -s h -l help)
set options $options (fish_opt -s m -l max --required-val)
argparse $options -- $argv

То же самое, что выше, но с третьим флагом, который можно указывать несколько раз, сохраняя значение каждого увиденного экземпляра, и используется только имя длинного флага (--token) :

set -l options (fish_opt --short=h --long=help)
set options $options (fish_opt --short=m --long=max --required-val)
set options $options (fish_opt --short=t --long=token --multiple-vals --long-only)
argparse $options -- $argv

© 2005-2009 Axel Liljencrantz, 2009-2023 fish-shell contributors
Licensed under the GNU General Public License, version 2.
https://fishshell.com/docs/3.6/cmds/fish_opt.html

Spec-Zone.ru

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