Чтение нескольких информационных файлов Emacs одновременно - PullRequest
15 голосов
/ 18 февраля 2010

Для чтения программной (и другой) документации, режим Emacs INFO является выдающимся.Настолько выдающийся, что я хотел бы иметь возможность читать, скажем, информационный файл Emacs Lisp и информационные файлы режима org одновременно, не возвращаясь к началу информационного дерева.Либо я пропустил что-то очевидное, либо мне понадобится взломать Emacs Lisp для достижения цели.И снова, возможно, кто-то уже сломал этот орех.Поэтому я предполагаю, что мой вопрос: каково состояние практики одновременного чтения нескольких файлов INFO в Emacs?

Ответы [ 2 ]

21 голосов
/ 18 февраля 2010

Если вы посмотрите документацию для команды 'info (по умолчанию связанной с Ch i ), вы обнаружите, что вы можете легко создавать новые буферы *info* с числовым префиксом.

C-u 1 C-h i
C-u 42 C-h i

Это создает информационные буферы с именами *info*<1> и *info*<42>.

Документация для команды 'info (выделено мной):

Введите Info, браузер документации. Необязательный аргумент file-or-node указывает файл для проверки; по умолчанию это каталог верхнего уровня Информация. Вызывается из программы, файл или узел может указывать узел Info формы `(FILENAME) NODENAME '. Необязательный аргумент буфера определяет Имя информационного буфера; буфер по умолчанию имя информация . Если буфер существует, просто переключитесь на буфер. Иначе, создать новый буфер с верхним уровнем Информационный каталог.

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

Также, по умолчанию, в буфере *info*, M-n связан с 'clone-buffer, что создаст новый буфер *info*, смотрящий на ту же страницу.

0 голосов
/ 12 января 2017

На тот случай, если вы захотите приготовить свою чашку, используя emacs lisp, доступна функция «generate-new-buffer-name»:

Эта функция возвращает имя, которое будет уникальным дляновый буфер - но не создает буфер.Он начинается с начального имени и создает имя, которое в данный момент не используется ни для одного буфера, добавляя число внутри «<…>».Он начинается с 2 и продолжает увеличивать число до тех пор, пока оно не станет именем существующего буфера.

, например,

(defun my-info-with-own-buffer ()
    (interactive)
    (info nil (generate-new-buffer-name "*info*")))

при вызове откроет свежий информационный буфер вверхний узел каталога.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...