Come posso fare in modo che quando premo C-xC-bper accedere all'elenco buffer quel buffer si focalizzi automaticamente invece di doverlo passare manualmente con C-xo? Non riesco a trovare una variabile che personalizzi questo.
Come posso fare in modo che quando premo C-xC-bper accedere all'elenco buffer quel buffer si focalizzi automaticamente invece di doverlo passare manualmente con C-xo? Non riesco a trovare una variabile che personalizzi questo.
Risposte:
È possibile sostituire il comando list-buffers
che viene eseguito con C-x C-b
una funzione che fa ciò che si desidera. In questo caso buffer-menu-other-window
apre l'elenco dei buffer in un'altra finestra con lo stato attivo. L'aggiunta del seguente frammento al file init dovrebbe essere rimappato C-x C-b
alla nuova funzione.
(define-key global-map [remap list-buffers] 'buffer-menu-other-window)
Qui global-map
rappresenta la mappa di tasti in cui C-x C-b
è associato un comando, list-buffers
il comando originale e buffer-menu-other-window
il nuovo comando.
buffer-menu
, se non si desidera utilizzare un'altra finestra.
global-set-key
pure: (global-set-key [remap list-buffers] #'buffer-menu-other-window)
. global-set-key
è semplicemente un involucro sottile in giro define-key
.
Un'alternativa è passare a ibuffer, che non condivide questo problema.
ibuffer fa parte di GNU Emacs, quindi nelle ultime versioni di Emacs dovresti solo aggiungere
(global-set-key (kbd "C-x C-b") 'ibuffer)
al tuo file init.