Info

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Info and the translation is 100% complete.
Other languages:

В этом руководстве показаны приёмы навигации по info-страницам, используя команду info.

Введение

Что такое info?

Большинство пользователей, вероятно, знакомы с системой документации man. Она хорошо подходит для быстрого поиска определённой информации, но не имеет механизмов для связывания man-страниц между собой. И здесь на помощь приходит info. info-страницы создаются с помощью утилиты texinfo, которая позволяет связать страницу с другими страницами, создавать меню и простую навигацию в целом. В следующем разделе мы рассмотрим устройство страниц info.

Расположение страниц info

Основные страницы info расположены в каталоге /usr/share/info. Стиль их размещения отличается от применяемого в системе man: каталог /usr/share/info содержит не очень большой набор относительно крупных файлов. Они именуются следующим образом:

КОД формат файла info
pagename.info[-node].gz

pagename — фактическое имя страницы (например, wget), [-node] — необязательный элемент, определяющий дочерний узел (обычно имя страницы и узла выводятся сверху документа info). Для экономии свободного места страницы info сжимаются с использованием схемы сжатия gzip по умолчанию. Чтобы выбрать другие алгоритмы сжатия, настройте переменную PORTAGE_COMPRESS в файле /etc/portage/make.conf. Местоположение дополнительных info-страниц может указываться в переменной среды INFOPATH (она обычно определяется через файлы в /etc/env.d/). Отметим для начала специальный файл /usr/share/info/dir, он содержит перечень всех info-страниц и отображается командой info при запуске без параметров. Чтобы начать рассматривать навигацию по info, запустите ее без параметров:

user $info

В следующая глава описывает основы навигации по справке info.

Работа со страницами info

Навигация по оглавлению

После запуска команды info экран будет примерно таким:

КОД Пример экрана info
File: dir,      Node: Top       This is the top of the INFO tree
 
  This (the Directory node) gives a menu of major topics.
  Typing "q" exits, "?" lists all Info commands, "d" returns here,
  "h" gives a primer for first-timers,
  "mEmacs<Return>" visits the Emacs manual, etc.
 
  In Emacs, you can click mouse button 2 on a menu item or cross reference
  to select it.
 
* Menu:
 
User Interface Toolkit
* GDK: (gdk).           The General Drawing Kit
* GTK: (gtk).           The GIMP Toolkit
 
GNU programming tools
* Autoconf v2.1: (autoconf).         Create source code configuration scripts.

Сейчас на экране отображается множество элементов, начинающихся со звёздочки. Это пункты оглавления, они предназначены для навигации по узлам разных уровней. Выбирать их можно двумя способами. Первый рассмотрим сейчас, второй — позже. Прежде всего, чтобы взглянуть на wget info-страницу, нажмите клавишу пока не найдёте строку с wget:

КОД Переход к пункту wget
Network Applications
* GnuTLS: (gnutls).                     Package for Transport Layer Security.
* Wget: (wget).         The non-interactive network downloader.
* certtool: (gnutls)Invoking certtool.  Manipulate certificates and keys.
* gnutls-cli: (gnutls)Invoking gnutls-cli.      GNU TLS test client.
* gnutls-cli-debug: (gnutls)Invoking gnutls-cli-debug.  GNU TLS debug client.
* gnutls-serv: (gnutls)Invoking gnutls-serv.    GNU TLS test server.
* srptool: (gnutls)Invoking srptool.    Simple SRP password tool.

Когда дойдёте до нужной строки, выберите соответствующий пункт оглавления клавишей Enter. Откроется info-страница wget:

КОД info-страница wget
File: wget.info,  Node: Top,  Next: Overview,  Up: (dir)
 
Wget 1.10.2
***********
 
This manual documents version 1.10.2 of GNU Wget, the freely available
utility for network downloads.
 
   Copyright (C) 1996-2005 Free Software Foundation, Inc.
 
* Menu:
 
* Overview::            Features of Wget.
* Invoking::            Wget command-line arguments.
* Recursive Download::  Downloading interlinked pages.
* Following Links::     The available methods of chasing links.
* Time-Stamping::       Mirroring according to time-stamps.
* Startup File::        Wget's initialization file.

В следующем разделе рассмотрим основы навигации.

Основы навигации

На экране сейчас, согласно принятой терминологии, верхний узел (Top node) страницы wget. Верхние узлы можно считать оглавлениями для соответствующих info-страниц. Для навигации по текущей странице существует несколько различных методов. Первый — стандартный способ навигации в системе info — использование клавиши Space для перемещения на страницу вперед, а клавиш Backspace или Delete для перехода на страницу назад. Этот рекомендуемый метод, поскольку при его использовании переход на следующий или предыдущий узел документа происходит автоматически. Это позволяет продвигаться по документу в линейной манере, как по man-странице. Другой способ навигации — клавиши Page up и Page down. Он работает, но, в отличие от предыдущего, не делает переходов по узлам вперёд и назад. Чтобы пропустить узел целиком без Space, Backspace и Delete, используйте клавиши [ (переход назад) и ] (переход вперёд).

Ранее упоминались два способа навигации по оглавлению. Сейчас мы опишем второй. Клавиши 1-9 можно использовать для переходов по первым девяти пунктам оглавления. Этот способ годится для быстрого изучения документов. Для примера, клавишу 3 можно использовать для перехода по пункту Recursive Download. Итак, нажмём 3 и получим экран Recursive Download:

КОД Результат: экран Recursive Download
File: wget.info,  Node: Recursive Download,  Next: Following Links,  Prev: Invoking,  Up: Top
 
3 Recursive Download
********************
 
GNU Wget is capable of traversing parts of the Web (or a single HTTP or
FTP server), following links and directory structure.  We refer to this
as to "recursive retrieval", or "recursion".

Самое время обозначить некоторые моменты. Во-первых, заголовок вверху страницы. Он отображает доступные с данной страницы переходы. Страница, отмеченная как Next:, доступна по клавише n, Prev: — по клавише p. Обратите внимание, что работает это только в рамках одного уровня. При чрезмерном использовании можно оказаться на страницах, совершенно к делу не относящихся. Лучше использовать Space, Backspace, Delete, [, ] для перемещений в линейном стиле.

Если пользователь по какой-либо причине потерялся, есть несколько способов сориентироваться. Первый — клавиша t (TOC, table of contents), она вернёт вас к верхнему уровню (оглавлению) текущей страницы. С помощью клавиши l (last) можно вернуться к предыдущей просмотренной странице. На уровень выше можно перейти по клавише u (up). В следующей главе мы перейдём к поиску.

Поиск в info-страницах

Переход к другим info-страницам

Теперь, когда пользователи умеют перемещаться по одной info-странице, важно взглянуть на способы получения доступа к другим страницам. Самый очевидный способ — перейти к нужной странице через узел dir — оглавление, включающее список всех страниц info. Чтобы перейти к узлу dir из документа любого уровня, просто нажмите d. Отсюда можно начать поиск нужной страницы. Однако, если точно известно название нужной страницы, проще использовать команду перехода к узлу. Чтобы перейти на info-страницу по имени, нажмите g (goto) — появится приглашение ко вводу — и введите название страницы в круглых скобках:

КОД Переход к info-странице по имени
* Startup File::        Wget's initialization file.
* Examples::            Examples of usage.
* Various::             The stuff that doesn't fit anywhere else.
* Appendices::          Some useful references.
* Copying::             You may give out copies of Wget and of this manual.
--zz-Info: (wget.info.gz)Top, 24 lines --Top-------------------------------
Goto node: (libc)

Это откроет страницу libc, как показано здесь:

КОД Результат команды перехода к узлу
File: libc.info,  Node: Top,  Next: Introduction,  Prev: (dir),  Up: (dir)
 
Main Menu
*********
 
This is Edition 0.10, last updated 2001-07-06, of `The GNU C Library
Reference Manual', for Version 2.3.x of the GNU C Library.
 
* Menu:
 
* Introduction::                 Purpose of the GNU C Library.

Теперь пользователи знают, как перейти к странице по её имени. В следующем разделе мы рассмотрим поиск информации по индексу info-страницы.

Поиск по индексу

Следующий пример опишет как искать функцию printf стандартной библиотеки C, используя индекс info-страницы libc. Пользователи должны находиться на странице libc — как после выполнения действий предыдущего раздела, — если это не так, используйте команду перехода к узлу. Чтобы воспользоваться поиском по индексу, нажмите клавишу i — появится приглашение ко вводу — и введите искомый термин.

КОД Ввод запроса для поиска по индексу
* Character Set Handling::       Support for extended character sets.
* Locales::                      The country and language can affect the
                                   behavior of library functions.
* Message Translation::          How to make the program speak the user's
                                   language.
--zz-Info: (libc.info.gz)Top, 1291 lines --Top-- Subfile: libc.info-1.gz-----
Index entry: printf

После ввода запроса и нажатия клавиши Enter, пользователи перейдут к libc определению printf:

КОД Результат поиска по индексу
File: libc.info,  Node: Formatted Output Functions,  Next: Dynamic Output,  Prev: Other Output Conversions,  Up: Formatted Output
 
12.12.7 Formatted Output Functions

This section describes how to call `printf' and related functions. Prototypes for these functions are in the header file `stdio.h'. Because these functions take a variable number of arguments, you _must_ declare prototypes for them before using them. Of course, the easiest way to make sure you have all the right prototypes is to just include

Пользователи успешно выполнили поиск по индексу страницы libc. Однако, иногда требуется поиск по самому содержимому страницы. Поиск по содержимому info-страницы рассматривается в следующем разделе.

Поиск по содержимому

Начнём поиск разновидности sprintf функции printf с нашей предыдущей позиции — Formatted Output Functions. Нажмите s для выполнения поиска — появится приглашение ко вводу — и введите запрос (в данном случае sprintf):

КОД Ввод поискового запроса
-- Function: int wprintf (const wchar_t *TEMPLATE, ...)
     The `wprintf' function prints the optional arguments under the
     control of the wide template string TEMPLATE to the stream
     `stdout'.  It returns the number of wide characters printed, or a
--zz-Info: (libc.info.gz)Formatted Output Functions, 127 lines --Top-- Subfile: libc.info-3.gz--
Search for string []: sprintf

Нажмите Enter и будет показан результат запроса:

КОД Результат поискового запроса
-- Function: int sprintf (char *S, const char *TEMPLATE, ...)
     This is like `printf', except that the output is stored in the
     character array S instead of written to a stream.  A null
     character is written to mark the end of the string.
 
     The `sprintf' function returns the number of characters stored in
     the array S, not including the terminating null character.

Это и есть нужная функция.

Заключение

На этом обзор команды info для просмотра info-страниц завершён. Как и всегда, приветствуются комментарии и замечания.

Дополнительные программные ресурсы

Программы в помощь тем, кто хочет просматривать info-страницы с использованием более дружественных графических интерфейсов:

  • app-text/info2html — конвертирует info-страницы в формат HTML для просмотра из браузера
  • app-text/pinfo — info-просмотрщик на ncurses
  • app-text/tkinfo — info-просмотрщик на tcl/tk
  • app-vim/info — info-просмотрщик на базе vim.

В KDE-браузере Konqueror можно открывать страницы info с помощью URI, начинающихся с info:.


This page is based on a document formerly found on our main website gentoo.org.
The following people contributed to the original document: Chris White
They are listed here because wiki history does not allow for any external attribution. If you edit the wiki article, please do not add yourself here; your contributions are recorded on each article's associated history page.