Emacs - matar el búfer sin aviso

15

Me pregunto cómo se puede hacer, por lo que Emacs no muestra el mensaje preguntándome si realmente quiero matar el búfer actual con el atajo Cx k .

Lo interesante es que la misma acción realizada a través de la barra de herramientas elimina el búfer al instante sin avisar al usuario. ¿Alguna solución? Gracias.

Jarek
fuente

Respuestas:

16

Por defecto, Emacs no le pregunta si desea matar el búfer. Te pregunta qué búfer quieres matar.

Si no quieres que te pregunten qué búfer quieres matar, puedes usar esto:

(global-set-key (kbd "C-x k") 'kill-this-buffer)

Si se le solicita confirmación, entonces hay algo en su .emacs (o la inicialización específica del sitio). Intente ejecutar emacs -qpara verificar Emacs sin sus .emacs.

Nota: verificado con Emacs 23.2.

Trey Jackson
fuente
2
'kill-this-buffer es parte de emacs y debería usarse en su lugar.
Jaseem
10

Puede averiguar qué hace esa entrada de menú C-h ky luego hacer clic en la entrada. Resulta ser un comando llamado kill-this-buffer .

Luego puede vincular ese comando a una combinación de teclas:

(global-set-key "\C-xk" 'kill-this-buffer)
nschum
fuente
2

yo uso esto

(global-set-key (kbd "C-x k") (lambda ()
                              (interactive)
                              (kill-buffer (buffer-name))))
un poco héroe
fuente
Mejora menor: (kill-buffer (current-buffer))
Jaseem
Desde c. Emacs 24.3 puede simplemente (global-set-key "\ C-xk" 'kill-this-buffer)
HörmannHH