2010-02-18 11 views
15

Para leer la documentación de programación (y otros), el modo Emacs INFO es sobresaliente. Tan destacado que me gustaría poder leer, por ejemplo, el archivo de información Emacs Lisp y los archivos de información de modo orgánico sin tener que volver al principio del árbol de información. O me he perdido algo obvio o tendré que hackear algunos Emacs Lisp para lograr el objetivo. Y una vez más, alguien ya puede haber descifrado esta tuerca. Así que supongo que mi pregunta es: ¿cuál es el estado de la práctica para leer múltiples archivos INFO en Emacs simultáneamente?Lectura múltiple de archivos de información de Emacs

Respuesta

21

Si nos fijamos en la documentación para el comando 'info (obligados a C-H I por defecto), usted encontrará que usted puede crear fácilmente nuevos *info* tampones con un prefijo numérico.

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

que crea memorias intermedias información nombradas *info*<1> y *info*<42>.

documentación para el comando 'info es (el énfasis es mío):

introducir la información, el navegador de documentación. El argumento opcional archivo-o-nodo especifica el archivo a examinar; el valor predeterminado es el directorio de nivel superior de Información. Llamado desde un programa, file-o-node puede especificar un nodo de información del formulario `(NOMBRE DEL ARCHIVO) NOMBRE_NOMBRE '. El búfer de argumento opcional especifica el nombre del búfer de información ; el nombre del buffer predeterminado es info. Si existe memoria intermedia, simplemente cambie al buffer. De lo contrario, crea un nuevo búfer con el directorio de información de nivel superior .

En uso interactivo, un no numérico argumento prefijo dirige este comando para leer un nombre de archivo de la minibuffer. Un argumento de prefijo numérico selecciona un búfer de información con el prefijo número anexado al nombre del búfer de información .

también, por defecto, en la memoria intermedia *info*, M-n está obligado a 'clone-buffer, lo que creará un nuevo buffer de *info* mirando la misma página.

0

Sólo en caso de que quiera elaborar cerveza su propia taza usando Emacs Lisp no es la función de "generar-new-buffer-name" disponibles:

Esta función devuelve un nombre que sería único para un nuevo buffer-but no crea el búfer. Comienza con nombre de inicio y produce un nombre que no se usa actualmente para ningún búfer al agregar un número dentro de '< ...>'. Comienza en 2 y sigue incrementando el número hasta que no sea el nombre de un búfer existente.

por ejemplo

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

cuando se invoca se abrirá un buffer información fresca en el nodo de directorio superior.