Определение
GNU Info — это читалка для info
-страниц.
Дополнительные комментарии
В современности почти не используется, но в основном предназначена для чтения документации к программам GNU, которые написаны в виде info
-страниц.
Читалка сложная в освоении (да, это читалка для документации, которой нужно учиться пользоваться!), но весьма полезная, потому что info
-страницы для многих утилит написаны с таким количеством примеров и с такой детализацией и глубиной, что их можно читать как захватывающую книгу.
В каждом узле, в каждом описании функции или команды скрыта своя история, представленная с юмором и остроумием.
Если времени осваивать саму читалку нет, то стоит обратиться к html
-версии тех же info
-страниц. Начать можно отсюда: GNU Coreutils 9.4
Особенности
info
-страницы имеют древовидную структуру с узлами, что позволяет создавать более сложную документацию, чем это возможно с man-страницами.
Так, поддерживаются:
- Гипертекстовые ссылки,
- Меню внутри узлов,
- Как следствие, возможность нелинейной навигации по документам (т.е. не обычное линейное пролистывание сверху-вниз, а переход на параграфы, главы и пр).
Более подробное сравнение с другими форматами можно найти, например, здесь: http://www.stargrave.org/InfoRules.html
Структура info-страниц
У документов .info
древовидная структура: каждый такой документ можно представить в виде дерева, состоящего из узлов с текстом. Большие документы удобно разбивать на такие узлы (например, сделать параграфы и главы статьи отдельными узлами).
info
собирает все доступные в системе .info
документы под общим корнем, он называется dir
.
структура info-страниц
Навигация в GNU Info
Навигация в GNU Info — это навык сам по себе, у которого, к сожалению, есть некоторый порог входа и на овладение которым придётся потратить время.
Прокрутка текста внутри узла
- Пролистывание на одну строку вниз/вверх: Используйте стрелки для перемещения вверх и вниз по тексту внутри узла.
- Прокрутка страницы: Используйте
Space
для прокрутки вниз на одну страницу иBackspace
для прокрутки вверх на одну страницу.
Переход между узлами
Переход между узлами возможен двумя способами (см. картинку выше):
- Следующий или предыдущий узел в порядке обхода в ширину:
n
(next) иp
(previous) - Следующий или предыдущий узел в порядке обхода в глубину:
]
(next) и[
(previous) - Перейти на узел
dir
:d
(dir) - Перейти на верхний узел (обычно сам
.info
документ):t
(top)
Другое
- Следующая/предыдущая ссылка: Чтобы найти следующую ссылку, нажимайте
Tab
, а для перехода на предыдущуюShift + Tab
- Выход:
q
(quit) - Короткая справка по существующим горячим клавишам:
H
(Help; выйти из неё можно с помощьюq
) - Открыть документ с руководством по использованию самой читалки
GNU info
:h
(help) - Предыдущий посещённый узел:
l
(latest). - Поиск:
s
, затем ввести поисковый запрос и нажатьEnter
. - Переход по меню [оно обычно есть в конце каждого узла]: нажать клавишу
m
, затем ввести название пункта меню и нажать Enter.
Откуда начать
Попробуйте начать с документации к командам ls
, grep
, sed
и awk
:
info ls
Пролистайте все узлы различными способами, описанными выше. Обратите внимание на то, как изменяется нумерация в заголовках при обходе узлов в ширину/в глубину.
Поймите что за узел будет открыт в результате вызова такой команды:
info '(coreutils)ls invocation'
Попробуйте составить аналогичные примеры для других утилит.
Советы и технические детали
Standalone GNU Info vs Emacs
info
-страницы можно читать с помощью читалки GNU info
или с помощью текстового редактора Emacs.
GNU Info хватит для большинства пользователей, но Emacs может оказаться более удобным.
Настройка GNU Info
Горячие клавиши и цветовую схему читалки можно настроить под себя, изменив файл .infokey
.
Форматы файлов
Файлы Info с расширением .info
обычно генерируются из файлов Texinfo (.texi). Texinfo — это система документации, позволяющая выводить данные в различных форматах, включая Info, PDF и HTML.