¿Hacer que la lista de búferes se enfoque?

11

¿Cómo puedo hacer que cuando presione C-xC-bpara acceder a la lista de búferes ese búfer se enfoque automáticamente en lugar de tener que cambiar a él manualmente C-xo? No puedo encontrar una variable que personalice esto.

Chris
fuente
2
Esto es puramente editorial, pero nunca he entendido cómo se supone que es útil tener la lista desenfocada. Entonces sí, buena pregunta.
Avdi

Respuestas:

9

Puede reemplazar el comando list-buffersque se ejecuta con C-x C-buna función que hace lo que desea. En este caso buffer-menu-other-windowabre la lista de búferes en otra ventana con foco. Agregar el siguiente fragmento a su archivo init debería reasignarse C-x C-ba la nueva función.

 (define-key global-map [remap list-buffers] 'buffer-menu-other-window)

Aquí global-maprepresenta el mapa de teclas donde C-x C-bestá vinculado a un comando, list-buffersel comando original y buffer-menu-other-windowel nuevo comando.

Vamsi
fuente
44
O buffer-menu, si no quieres usar otra ventana.
Dibujó
Felicitaciones por usar la reasignación sobre global-set-key.
@metaturso Puede reasignar con global-set-keyasí: (global-set-key [remap list-buffers] #'buffer-menu-other-window). global-set-keyes simplemente una envoltura delgada alrededor define-key.
Albahaca
7

Una alternativa es cambiar a ibuffer, que no comparte este problema.

ibuffer es parte de GNU Emacs, por lo que en las versiones recientes de Emacs solo debería agregar

(global-set-key (kbd "C-x C-b") 'ibuffer)

a su archivo de inicio.

Dave
fuente
1
Esto es lo que hago también, pero la redacción de su respuesta hace que parezca más que una cuestión de preferencia.
nispio
Ciertamente lo hace.
Dave