Go to the first, previous, next, last section, table of contents.


Использование режима Texinfo

Вы можете редактировать Texinfo-файл любым текстовым редактором, выбранным вами по вашему усмотрению. Texinfo-файл никак не отличается от любого другого ASCII-файла. Однако, при установке GNU Emacs вы получаете возможность воспользоваться специальным режимом, называемым режимом Texinfo, который снабжает вас командами Emacs и дополнительными средствами, которые могут сильно облегчить вашу работу.

Эта глава описывает только особенности режима Texinfo GNU Emacs. Здесь не рассматриваются все возможности языка форматирования документов Texinfo. Если вы читаете это руководство с самого начала, вы, вероятно, захотите быстро пролистать эту главу и вернуться к ней уже после изучения разделов, где язык форматирования документов Texinfo описывается более детально.

Режим Texinfo дает вам специальные возможности для работы с Texinfo-файлами:

Вероятно, две наиболее полезных возможности -- это возможность быстрой вставки часто используемых @-команд и возможность создания меню и указателей на ноды.

Обычные команды редактирования GNU Emacs

В большинстве случаев команды режима Text работают в режиме Texinfo точно так же, как бы они работали и в самом режиме Text. В режиме Texinfo к основным возможностям редактора GNU Emacs добавляется дополнительный набор инструментов и команд редактирования. Основное различие между режимом Text и режимом Texinfo касается заполнения текста. Переменная, отвечающая за разделение абзацев, и таблица синтаксиса переопределяются в режиме Texinfo так, чтобы команды Texinfo, которые должны стоять в своих собственных строках, не были включены в другие абзацы. Поэтому команда M-q (fill-paragraph) перезаполняет абзацы, но не смешивает команды, требующие своей строки, со смежными абзацами.

Кроме того, режим Texinfo устанавливает переменную page-delimiter равной значению texinfo-chapter-level-regexp; по умолчанию, это регулярное выражение, совпадающее с командами определения глав и их аналогов, таких как приложения. С таким значением разделителя страницы вы можете переходить от одного заголовка главы к другому с помощью команд C-x ] (forward-page) и C-x [ (backward-page) и сужать буфер до текста главы с помощью команды C-x p (narrow-to-page). (@xref{Страницы,,, @external{emacs}, Руководство по GNU Emacs}, для более подробного описания команд, работающих со страницами.)

Вы можете называть Texinfo-файл так, как пожелаете, но по соглашению в качестве расширения следует выбрать одно из этих: `.texinfo', `.texi', `.txi' или `.tex'. Для использования предпочтительно более длинное расширение, так как оно однозначно определяет тип файла. Более короткое расширение необходимо использовать в тех случаях, когда операционная система ограничивает длину имени файла. GNU Emacs автоматически входит в режим Texinfo, если вы обратитесь к файлу с расширением `.texinfo', `.txi' или `.texi'. Кроме того, Emacs переходит в режим Texinfo, если в теле файла в его первой строке присутствует текст `-*- texinfo -*-'. Если вы находитесь в другом режиме и желаете переключиться в режим Texinfo, выполните команду M-x texinfo-mode.

Естественно, как и другие возможности Emacs, режим Texinfo может быть расширен и настроен так, как вы этого пожелаете. В частности, очень легко изменить привязку ключей. Здесь описываются сделанные по умолчанию или стандартные привязки ключей.

Быстрая вставка часто используемых команд.

Режим Texinfo дает возможность быстро вставлять часто используемые @-команды в буфер редактирования. Вы можете использовать эти команды для уменьшения времени набора команд.

Чтобы вызвать команды вставки, следует дважды набрать C-c и затем нажать первый символ @-команды:

C-c C-c c
M-x texinfo-insert-@code
Вставить @code{} и поместить точку между фигурными скобками.
C-c C-c d
M-x texinfo-insert-@dfn
Вставить @dfn{} и поместить точку между фигурными скобками.
C-c C-c e
M-x texinfo-insert-@end
Вставить @end и попытаться добавить правильно следующее слово, такое как `example' или `table'. (Эта команда не может правильно обрабатывать вложенные списки, зато вставляет слово, наиболее соответствующее предшествующему списку).
C-c C-c i
M-x texinfo-insert-@item
Вставить @item и поместить точку в начале следующей строки.
C-c C-c k
M-x texinfo-insert-@kbd
Вставить @kbd{} и поместить точку между фигурными скобками.
C-c C-c n
M-x texinfo-insert-@node
Вставить @node и добавить строку комментария, перечисляющую последовательность нод `Next', `Previous' и `Up'. Оставить точку после @node.
C-c C-c o
M-x texinfo-insert-@noindent
Вставить @noindent и поместить точку в начале следующей строки.
C-c C-c s
M-x texinfo-insert-@samp
Вставить @samp{} и поместить точку между фигурными скобками.
C-c C-c t
M-x texinfo-insert-@table
Вставить @table, затем вставить SPC и поместить точку после SPC.
C-c C-c v
M-x texinfo-insert-@var
Вставить @var{} и поместить точку между фигурными скобками.
C-c C-c x
M-x texinfo-insert-@example
Вставить @example и поместить точку в начале следующей строки.
C-c C-c {
M-x texinfo-insert-braces
Вставить {} и поместить точку между фигурными скобками.
C-c C-c }
C-c C-c ]
M-x up-list
Внутри пары скобок переместить точку до тех пор, пока не встретится закрывающая скобка. Набрать C-c C-c ] проще, чем C-c C-c }, что, однако, проще запоминается; поэтому для перехода между скобками существуют два ключа. (Вы также можете переходить между двумя фигурными скобками, вводя C-f.)

Для того, что бы вставить команду, такую как @code{...} вокруг существующего слова, надо установить точку перед этим словом и ввести последовательность C-u 1 C-c C-c c. Это облегчает редактирование уже существующего обычного текста. Величина параметра, следующего за C-u, сообщает Emacs сколько слов после точки следует заключить между фигурными скобками: `1' -- только одно слово, `2' -- два слова и так далее. Используйте отрицательное число, чтобы заключить между скобками предыдущее слово или слова. Если вы оставите параметр неопределенным, то Emacs вставит строку с @-командой и поместит точку между фигурными скобками. Это сработает только для тех @-команд, которые действуют на слово или на слова внутри одной строки, вроде @kbd и @var.

Этот набор команд вставки был создан после анализа частоты, с которой различные @-команды используются в Руководстве по GNU Emacs и в Руководстве по GDB. Если вы желаете добавить ваши собственные команды быстрой вставки, вы можете привязать к ключу макрос клавиатуры, использовать сокращение или расширить код в `texinfo.el'.

C-c C-c C-d (texinfo-start-menu-description) -- это команда быстрой вставки, действие которой отличается от действия других команд вставки. Она вставляет название ноды или заголовок главы в месте для описания в пункте меню. (Пункт меню состоит из трех частей: имени пункта меню, имени ноды и описания. Требуется только имя ноды, но описание сильно помогает объяснить, о чем говорится в разделе описываемой ноды. See section Составные части меню.)

Чтобы использовать texinfo-start-menu-description, установите точку в строку пункта меню, и введите C-c C-c C-d. Команда ищет и копирует заголовок, который сопутствует имени ноды и вставляет этот заголовок как описание; затем устанавливает курсор в начале вставленного текста, так что вы можете отредактировать это текст. Эта функция не вставляет заголовок, если данный пункт меню уже содержит описание.

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

Визуализация структуры разделов файла

Вы можете визуализировать структуру разделов Texinfo-файла, используя команду C-c C-s (texinfo-show-structure). Эта команда показывает структуру разделов Texinfo-файла, перечисляя строки, которые начинаются с @-команд, а именно, с команд @chapter, @section и подобных. Эта команда создает такую же структуру, какую представляет из себя оглавление. Эти строки отображаются в другом буфере, называемом `*Occur*'. В том буфере вы можете установить курсор на одной из этих строк и воспользоваться для перехода к соответствующему разделу в Texinfo-файле последовательностью C-c C-c (occur-mode-goto-occurrence).

C-c C-s
M-x texinfo-show-structure
Показать строки @chapter, @section, и подобные строки Texinfo-файла.
C-c C-c
M-x occur-mode-goto-occurrence
Перейти к строке в Texinfo-файле, соответствующей строке под курсором в буфере `*Occur*'.

Если вы вызываете texinfo-show-structure с префиксным аргументом, набирая C-u C-c C-s, это перечислит не только строки с @-командами, такими как @chapter, @section и подобными, но также и строки @node. Вы можете использовать texinfo-show-structure с префиксным аргументом для того, чтобы проверить, являются ли указатели `Next', `Previous' и `Up' в строке @node правильными.

Часто, когда вы работаете над руководством, вам будете нужна только структура текущей главы. В этом случае вы можете выделить область буфера, структура которой вам нужна, используя команду C-x n n (narrow-to-region), и texinfo-show-structure будет действовать только в этой области. Чтобы снова увидеть весь буфер, следует использовать C-x n w (widen). (@xref{Сужение, , ,@external{emacs}, Руководство по GNU Emacs}, для получения детальной информации.)

Помимо предоставления команды визуализации структуры документа, texinfo-show-structure, режим Texinfo устанавливает значение переменной разделителя страницы таким образом, чтобы она соответствовала @-командам уровня глав. Это дает вам возможность использовать команды C-x ] (forward-page) и C-x [ (backward-page) для перемещения вперед и назад по главам, а команду C-x p (narrow-to-page) -- для сужения до главы. @xref{Страницы, , , @external{emacs}, Руководство по GNU Emacs}, для получения дополнительной информации.

Обновление нод и меню

В режиме Texinfo доступны команды для автоматического создания или обновления меню и указателей на ноды. Эти команды называются "update"-командами (командами обновления), потому что их основное применение -- обновление Texinfo-файла после его редактирования; но вы можете использовать их, чтобы вставить указатели `Next', `Previous' и `Up' в строку @node, если их там еще нет, или создать меню в файле, в котором его пока нет.

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

Вы можете использовать следующие команды обновления, чтобы

Вы можете использовать эти команды для обновления всех нод и меню в выделенной области или во всем Texinfo-файле.

Команды обновления работают только со стандартными Texinfo-файлами, которые имеют такую же структуру, как и книги. В таких файлах, строка с командой, объявляющей начало раздела, должна следовать сразу после каждой строки @node, если только это не строка @node для ноды `Top'. (Строка с командой описания структуры глав -- это строка, начинающаяся с @chapter, @section или с другой подобной команды.)

Вы можете вставить строку с командой описания структуры глав либо вслед за строкой @node, либо в строке, которая следует после одиночной строки комментария @comment, либо после одиночной строки @ifinfo. Вы не можете вставить между строкой @node и строкой с командой описания структуры глав больше одной строки; и вставить вы можете только строку @comment или строку @ifinfo.

Команды, которые действуют на весь текст в буфере, требуют, чтобы вслед за нодой `Top' следовала нода с командой @chapter или с эквивалентной по уровню командой. Команды обновления меню не будут создавать основное или главное меню для Texinfo-файла, который имеет ноды только уровня @chapter! Команды обновления меню создают меню только внутри нод для нод более низкого уровня. Чтобы создать меню глав, вы должны предоставить ноду `Top'.

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

В режиме Texinfo существует пять наиболее часто используемых команд обновления: две из них -- для обновления всех указателей нод или меню в пределах одной ноды; две -- для обновления всех указателей нод или меню во всем файле; и одна команда, texinfo-master-menu, предназначена для создания основного или главного меню для всего файла и (что не является обязательным свойством этой команды) для обновления каждой ноды и каждого меню во всем Texinfo-файле.

Команда texinfo-master-menu является основной командой:

C-c C-u m
M-x texinfo-master-menu
Создает или обновляет главное меню, которое включает в себя все другие меню (включая описания из меню, уже существующих к моменту создания основного меню, если таковые есть). При активизации этой команды с префиксным аргументом, с использованием последовательности C-u, в начале создаются или обновляются все обычные ноды и меню в текущем буфере перед созданием главного меню. (See section Нода Top и главное меню, для детального описания.) Для функционирования texinfo-master-menu требуется, чтобы Texinfo-файл содержал ноду `Top' и по крайней мере еще одну уровнем ниже. После обширного редактирования Texinfo-файла вы можете ввести следующую команду:
C-u M-x texinfo-master-menu
или
C-u C-c C-u m
Эта команда полностью обновляет все ноды и меню за один проход.

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

Далее перечислены оставшиеся основные команды обновления:

C-c C-u C-n
M-x texinfo-update-node
Вставляет указатели на ноды `Next', `Previous' и `Up' для текущей ноды (то есть модифицирует ближайшую предшествующую строку @node). Если указатели `Next', `Previous' и `Up' уже были в строке @node, то старые указатели удаляются и на их место помещаются обновленные. При запуске этой команды с аргументом (с префиксным аргументом, C-u, при интерактивном вызове), команда действует на все строки @node в выделенной области.
C-c C-u C-m
M-x texinfo-make-menu
Создает или обновляет меню в ноде, где находится точка. При вызове этой команды с аргументом (с префиксным аргументом, C-u, при интерактивном вызове), команда создает или обновляет меню для нод, которые находятся внутри выделенной области. Всякий раз, когда texinfo-make-menu обновляет существующее меню, описания из этого меню включается в новое. Это достигается с помощью копирования описаний пунктов существующего меню в те пункты нового меню, которые имеют те же имена нод. Если пункты меню различаются, то описания в новое меню не копируются.
C-c C-u C-e
M-x texinfo-every-node-update
Вставляет указатели на ноды `Next', `Previous' и `Up' для каждой ноды в данном буфере.
C-c C-u C-a
M-x texinfo-all-menus-update
Создает или обновляет все меню в данном буфере. С аргументом (с префиксным аргументом, C-u, при интерактивном вызове), перед работой над меню сначала вставляются или обновляются все указатели на ноды. Если существует главное меню, команда texinfo-all-menus-update обновляет его; но она не создает новое главное меню, если его не существует. (Для этого используйте команду texinfo-master-menu.) При работе над документом, в котором главное меню не нужно, можно сделать следующее:
C-u C-c C-u C-a
или
C-u M-x texinfo-all-menus-update
Это модифицирует все ноды и меню.

Переменная texinfo-column-for-description определяет позицию, по которой выровнены описания меню. По умолчанию она равна 32, хотя часто бывает полезно уменьшить ее до 24. Вы можете установить эту переменную с помощью команды M-x edit-options, (@xref{Edit Options, , Editing Variable Values, @external{emacs}, Руководство по GNU Emacs}) или с помощью команды M-x set-variable (@xref{Examining, , Examining and Setting Variables, @external{emacs}, Руководство по GNU Emacs}).

Также, команда texinfo-indent-menu-description может использоваться, чтобы выровнять существующие описания меню по определенной позиции. И наконец, если вы пожелаете, то вы можете использовать команду texinfo-insert-node-lines, чтобы вставить в файл недостающие строки @node. (See section Другие команды обновления, для дополнительной информации.)

Требования для обновления

Чтобы использовать команды обновления, вы должны организовать Texinfo-файл иерархически, с главами, разделами, подразделами и так далее. Когда вы создаете иерархию руководства, не `спускайтесь' больше чем на один уровень за один раз: вслед за нодой `Top' должна начинаться глава, и ни в коем случае не раздел; вслед за главой следует раздел, но не подраздел. Однако, вы можете за один раз "подняться" на любое число уровней, например от подраздела до главы.

Каждая строка @node за исключением строки для ноды `Top' должна сопровождаться строкой с командой структурирования вроде @chapter, @section или @unnumberedsubsec.

Каждая комбинация (строка @node)/(строка команды структурирования) должна выглядеть подобно этой:

@node Комментарии, Минимум, Соглашения, Обзор
@comment  node-name, next,    previous,    up
@section Комментарии

Или подобно этой (без строки @comment):

@node Комментарии, Минимум, Соглашения, Обзор
@section Комментарии

В этом примере, `Комментарии' -- это имя и ноды, и раздела. Следующая нода называется `Минимум', а предыдущая называется `Соглашения'. Раздел `Комментарии' находится внутри ноды `Обзор', которая определена как указатель`Up'. (Вместо строки @comment вы можете также вписать строку @ifinfo.)

Если файл имеет ноду `Top', то она должна назваться `top' или `Top' и быть первой нодой в файле.

Команды обновления меню создают меню разделов внутри главы, меню подразделов внутри раздела и так далее. Это означает, что если вы хотите получить меню глав, у вас должна быть нода `Top'.

Команда @command{makeinfo} может создать Info-файл из иерархически организованного Texinfo-файла, в котором отсутствуют указатели `Next', `Previous' и `Up'. Как следствие этого, если вы уверены, что ваш Texinfo-файл будет отформатирован с помощью @command{makeinfo}, команды обновления меню вам не нужны. (See section Создание Info-файла, для более детальной информации о makeinfo.) Однако, и @command{makeinfo}, и команды texinfo-format-... требуют, чтобы вы вставили в файл меню.

Другие команды обновления

Кроме пяти основных команд обновления, режим Texinfo дает доступ к несколько менее часто используемым командам обновления:

M-x texinfo-insert-node-lines
Вставляет строки @node перед @chapter @section, и другими командами структурирования, если они отсутствуют. При запуске с аргументом (с префиксным аргументом, C-u, при интерактивном вызове), команда texinfo-insert-node-lines не только вставляет строки @node, но также вставляет и названия глав или разделов в качестве имен соответствующих нод. Кроме того, она вставляет названия в качестве имен нод в уже существующие строки @node, не имеющие имен. Так как имена нод должны быть более краткими, чем названия разделов или глав, вы должны вручную отредактировать вставленные имена. Например, для того, чтобы выделить весь буфер и везде вставить строки @node и названия, следует сделать это:
C-x h C-u M-x texinfo-insert-node-lines
Эта команда вставляет в качестве имен нод в строках @node названия разделов; команда texinfo-start-menu-description (see section Быстрая вставка часто используемых команд.) вставляет названия как описания пунктов меню -- это разные действия. Однако в обоих случаях вы должны отредактировать вставленный текст.
M-x texinfo-multiple-files-update
Обновляет ноды и меню в документе, сформированном из отдельных файлов. При запуске с C-u создает и вставляет главное меню во внешний файл. При запуске с числовым аргументом, как C-u 2, перед созданием и вставкой главного меню во внешнем файле сначала модифицирует все меню и все указатели `Next', `Previous' и `Up' во всех файлах. Команда texinfo-multiple-files-update описана в приложении о включаемых файлах. See section texinfo-multiple-files-update.
M-x texinfo-indent-menu-description
Выравнивает каждое описание в меню после точки по определенному столбцу. Вы можете использовать эту команду, чтобы создать для описаний больше места. При запуске с аргументом (с префиксным аргументом, C-u, при интерактивном вызове), команда texinfo-indent-menu-description выравнивает каждое описание в каждом меню в выделенной области. Однако, эта команда не выравнивает вторые и последующие строки многострочного описания.
M-x texinfo-sequential-node-update
Вставляет имена нод, находящихся непосредственно перед и после текущей ноды как `Next' или `Previous', независимо от иерархического положения этих нод. Это означает, что следующая нода подраздела может быть следующей главой. Последовательная структура нод полезна для романов и других документов, которые следует читать последовательно. (Однако, команда Info g * позволяет вам просматривать файл последовательно, а значит, такая упорядоченность нод не является строго необходимой). При запуске с аргументом, команда texinfo-sequential-node-update последовательно обновляет все ноды в области.

Форматирование для Info

Режим Texinfo обеспечивает отдельные команды для форматирования части или всего Texinfo-файла для Info. Часто, когда вы пишете документ, вы хотите отформатировать только часть файла -- то есть некую область.

Вы можете использовать команду texinfo-format-region или makeinfo-region, чтобы отформатировать область:

C-c C-e C-r
M-x texinfo-format-region
C-c C-m C-r
M-x makeinfo-region
Форматирует текущую область для Info.

Вы можете использовать команду texinfo-format-buffer или makeinfo-buffer для того, чтобы отформатировать весь буфер:

C-c C-e C-b
M-x texinfo-format-buffer
C-c C-m C-b
M-x makeinfo-buffer
Форматирует текущий буфер для Info.

Например, после создания Texinfo-файла вы можете набрать следующее:

C-u C-c C-u m
или
C-u M-x texinfo-master-menu

Это модифицирует все ноды и меню. Затем наберите следующее, чтобы создать Info-файл:

C-c C-m C-b
или
M-x makeinfo-buffer

Для того, чтобы могли работать TeX или команды форматирования для Info, в заголовке файла должна быть строка @setfilename.

See section Создание Info-файла, для более подробного описания форматирования для Info.

Форматирование и печать

Набор и печать Texinfo-файла -- процесс многоступенчатый, в котором вы сначала создаете файл для печати (называемый DVI-файлом) и затем печатаете его. Кроме того, вы можете также создавать именные указатели. Чтобы сделать это, вы должны выполнить команду @command{texindex} после первичного выполнения команды @command{tex}; а затем выполнить команду @command{tex} снова. Или следует выполнить команду @command{texi2dvi}, которая сама автоматически создает именные указатели. (see section Форматирование с помощью texi2dvi).

Часто, когда вы пишете документ, вы хотите вывести на печать только часть файла, чтобы увидеть, как она будет выглядеть. Для этой цели вы можете использовать команду texinfo-tex-region или похожие команды. Используйте команду texinfo-tex-buffer, чтобы отформатировать весь буфер.

C-c C-t C-b
M-x texinfo-tex-buffer
Выполняет команду @command{texi2dvi} для буфера. Помимо запуска TeX для буфера, эта команда автоматически создает или обновляет именные указатели.
C-c C-t C-r
M-x texinfo-tex-region
Выполняет команду TeX для области.
C-c C-t C-i
M-x texinfo-texindex
Запускает @command{texindex}, чтобы отсортировать именные указатели Texinfo-файла, отформатированного с помощью команды texinfo-tex-region. Команда texinfo-tex-region не запускает @command{texindex} автоматически; она только выполняет команду @command{tex}. Вы должны запустить команду texinfo-tex-region во второй раз после сортировки необработанного именных указателей командой @command{texindex}. (Обычно, когда форматируют область, именные указатели не формируют; это делается только для всего буфера. Сейчас, когда существует команда @command{texi2dvi}, обсуждаемая команда практически не нужна.)
C-c C-t C-p
M-x texinfo-tex-print
Печатает файл (или часть файла), предварительно отформатированный с помощью команды texinfo-tex-buffer или texinfo-tex-region.

Для того, чтобы команда texinfo-tex-region или texinfo-tex-buffer сработала, файл должен начинаться со строки `\input texinfo' и должен включать строку @settitle. Файл должен заканчиваться командой @bye, набранной в отдельной строке. (Когда вы используете команду texinfo-tex-region, вы должны окружить @settitle строками start-of-header и end-of-header.)

See section Форматирование и печать твердой копии, для подробного описания других команд для TeX, вроде tex-show-print-queue.

Резюме по режиму Texinfo

Каждый набор команд режима Texinfo имеет привязки по умолчанию, начинающиеся с одних ключей. Все команды, созданные специально для режима Texinfo, начинаются с C-c. Ключи отчасти мнемонические.

Команды вставки

Команды вставки вызываются с помощью набора двух C-c и затем первого символа вставляемой @-команды. (Вероятно правильнее было бы для мнемоничности использовать C-c C-i, от `custom insert', но C-c C-c набирается гораздо быстрее.)

C-c C-c c       Вставить `@code'.
C-c C-c d       Вставить `@dfn'.
C-c C-c e       Вставить `@end'.
C-c C-c i       Вставить `@item'.
C-c C-c n       Вставить `@node'.
C-c C-c s       Вставить `@samp'.
C-c C-c v       Вставить `@var'.
C-c C-c {       Вставить фигурные скобки.
C-c C-c ]
C-c C-c }       Перейти за пределы огражденного скобками участка.
C-c C-c C-d     Вставить название раздела для ноды
                в месте для описания в пункте меню.

Визуализация структуры

Команда texinfo-show-structure часто используется внутри суженной области.

C-c C-s         Перечислить все заголовки.

Команда обновления главного меню

Команда texinfo-master-menu создает главное меню; может использоваться для того, чтобы модифицировать каждую ноду и каждое меню в файле.

C-c C-u m M-x texinfo-master-menu
                Создать или обновить главное меню.
C-u C-c C-u m   С C-u в качестве префиксного
                аргумента, сначала создать или обновить
                все ноды и обычные меню, а затем
                создать главное меню.

Обновление указателей

Команды обновления указателей вызываются при наборе C-c C-u и затем или C-n для texinfo-update-node, или C-e для texinfo-every-node-update.

C-c C-u C-n     Обновить ноду.
C-c C-u C-e     Обновить все ноды в буфере.

Обновление меню

Команды обновления меню вызываются при наборе C-c C-u, и затем или C-m для texinfo-make-menu, или C-a для texinfo-all-menus-update. Чтобы обновить и ноды, и меню в одно и то же время, перед набором командной последовательности C-c C-u C-a наберите C-u.

C-c C-u C-m     Создать или обновить меню.
C-c C-u C-a     Создать или обновить все
                меню в буфере.
C-u C-c C-u C-a С префиксным аргументом C-u,
                сначала создать или обновить все ноды,
                а затем создать или обновить все меню.

Форматирование для Info

Команды форматирования для Info, которые написаны на языке Emacs Lisp, вызываются при наборе C-c C-e и затем или C-r для выделенной области, или C-b для всего буфера.

Команды форматирования для Info, которые написаны на Си и основаны на программе @command{makeinfo}, вызываются при наборе C-c C-m и затем или C-r для выделенной области, или C-b для всего буфера.

Использование команды texinfo-format...:

C-c C-e C-r     Форматировать область.
C-c C-e C-b     Форматировать буфер.

Использование @command{makeinfo}:

C-c C-m C-r     Форматировать область.
C-c C-m C-b     Форматировать буфер.
C-c C-m C-l     Обновить выходной буфер makeinfo.
C-c C-m C-k     Прекратить выполнение makeinfo.

Вывод и печать

Команды набора и печати через TeX вызываются при наборе последовательности C-c C-t и затем другой управляющей последовательности: C-r для texinfo-tex-region, C-b для texinfo-tex-buffer и так далее.

C-c C-t C-r     Выполнить TeX для области.
C-c C-t C-b     Выполнить @command{texi2dvi} для буфера.
C-c C-t C-i     Выполнить @command{texindex}.
C-c C-t C-p     Напечатать DVI-файл.
C-c C-t C-q     Показать очередь заданий на принтер.
C-c C-t C-d     Удалить задание из очереди заданий на принтер.
C-c C-t C-k     Прекратить выполнение команды форматирования в TeX.
C-c C-t C-x     Выйти из приостановленного задания
                форматирования в TeX.
C-c C-t C-l     Обновить выходной буфер.

Другие команды обновления

Для вызова остальных команд обновления нет стандартных ключей, потому что они используются редко.

M-x texinfo-insert-node-lines
               Вставить пропущенные строки @node
               в области.  С префиксным аргументом C-u,
               использует названия разделов, как имена нод.
M-x texinfo-multiple-files-update
               Обновить документ, состоящий из нескольких файлов.
               С префиксным аргументом  C-u 2, создать или
               обновить все ноды или меню во всех файлах документа.
M-x texinfo-indent-menu-description
               Выровнять описания.
M-x texinfo-sequential-node-update
               Вставить указатели на ноды в строгой
               последовательности.


Go to the first, previous, next, last section, table of contents.