2011-12-21 9 views
4

Я хотел бы добавить документацию для функций bash, чтобы пользователи могли искать функции с помощью man. Не должно быть видимой разницы между моими функциями и действительными командами.Документирование функций bash

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

+1

Мы говорим о _real_ shell _functions_, которые определены с помощью 'foo() {echo foo; } 'или мы говорим о _programs_ (которые _may_ реализуются скриптом оболочки), которые установлены где-то в каталоге' */bin'? –

+0

действительные функции оболочки –

ответ

1

Реальные функции оболочки - это не, задокументированные отдельными man страницами, но по help встроенной команде. Вам придется переопределить это. Но даже я бы не стал искать информацию.

Просто создайте нормальные страницы для людей и выбросьте их в /usr/local/man/manX или /usr/local/share/man/manX - независимо от того, что уже предусмотрено в вашем дистрибутиве. Проверьте /etc/manpath.config, что этот каталог уже упоминается там. Таким образом, никто не должен возиться в своих файлах запуска с переменной среды MANPATH.

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

После этого происходит социальная часть: Скажите всем в каждый Повод о том, что документация. Под каждый Я имею в виду каждый, а не только подходит. :-)

3

Если у вас есть созданные страницы вашего человека (что само по себе является задачей), то то, что вы можете сделать, это разместить их где-нибудь в системе, например /usr/local/man (или где угодно, на самом деле), а затем отредактировать общесистемную переменную $MANPATH чтобы включить это местоположение. Тогда страницы руководства будут доступны.

Смежные вопросы