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.

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.


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)

2

yo uso esto

(global-set-key (kbd "C-x k") (lambda ()
                              (interactive)
                              (kill-buffer (buffer-name))))

Mejora menor: (kill-buffer (current-buffer))
Jaseem

Desde c. Emacs 24.3 puede simplemente (global-set-key "\ C-xk" 'kill-this-buffer)
HörmannHH

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.