¿Cómo puedo tener múltiples buffers de * Ayuda * con contenido diferente?

7

Usando C-h fy C-h vmuestra ayuda útil. A veces quiero comparar información. Por lo tanto, sería útil tener más de un *Help*búfer, con contenido diferente, visible al mismo tiempo.

Pero siempre que se usan los accesos directos, el contenido del *Help*búfer se sobrescribe.

¿Cómo tener más de un *Help*búfer help ( ) abierto al mismo tiempo?

jue
fuente

Respuestas:

7

Puedes usar rename-uniquely. Vaya al búfer de ayuda, llame rename-uniquely. Cambia el nombre del búfer a algo así *Help*<2>. Ahora, si abre otro búfer de ayuda, no afecta *Help*<2>.

(renombrar únicamente)

Cambie el nombre del búfer actual a un nombre similar que aún no se haya tomado.

fhdhsni
fuente
5

También puede usar el comando / función clone-buffer.

M-x clone-bufferin buffer *Help*abre un nuevo buffer *Help*<2>(o *Help*<3>si ya hay un buffer *Help*<2>, etc.).

Lo mismo, si usas M-x clone-bufferen el búfer *Help*<2>: obtienes *Help*<3>(o *Help*<4>si ya hay un búfer *Help*<3>, etc.).

Puedes usar clone-bufferprácticamente en cualquier lugar. Es muy útil en Info, por ejemplo.


(Dicho esto, personalmente ato una clave ( C-M-S-<f1>) rename-buffery la uso con bastante frecuencia. El valor predeterminado es el nombre del búfer actual, que a menudo quiero editar solo un poco para el nuevo nombre).

Dibujó
fuente
1

Gracias a las respuestas anteriores, escribí una pequeña función que clona un búfer de ayuda al presionar una tecla.
Rellene ambos fragmentos de código init.elpara que siempre esté disponible.

(defun jue-clone-buffer ()
        "jue clone current buffer. Useful to have multiple help buffers."
        (interactive)
        (clone-buffer (concat (buffer-name) "-"                 ; create name from old name and
                              (save-excursion                   ; use first word in buffer for new name
                                  (goto-char 0)
                                  (thing-at-point 'word t)))
                      t)))                                      ; show cloned buffer now

Enlace la nueva función a la tecla 'c' en modo ayuda:

(define-key help-mode-map (kbd "c") 'jue-clone-buffer)

Nota :
También puede usar esta función para otros buffers, no solo para los *Help*buffers.
Si clona un búfer por segunda vez, se <N>agrega al nombre, donde Nhay un número.

jue
fuente