2008-11-27 16 views
10

He estado buscando la adopción de Carbon Emacs para usar en mi Mac, y el único obstáculo con el que me he encontrado es el molesto sonido de desplazamiento cuando intenta desplazarse más allá del final del documento. He buscado en línea, pero parece que no puedo encontrar lo que debería agregar a mis archivos .emacs que evitarán que emita un pitido al desplazarse. No quiero silenciarlo por completo, solo al desplazarme. ¿Algunas ideas?Desactivar Carbon Emacs scroll beep

Respuesta

3

Deberás personalizar el ring-bell-function.

Esta página puede proporcionar pistas:

http://www.emacswiki.org/emacs/AlarmBell

+0

Por desgracia, eso no funcionará. Por ejemplo, la función de la siguiente línea tiene un "ding" codificado en él. – ShreevatsaR

+0

Hmm. ¿No podría simplemente redefinir la función de la siguiente línea en su .emacs entonces? – Svante

+0

Tendrá que redefinir no solo la siguiente línea y la línea anterior, sino también la función de desplazamiento hacia arriba, hacia abajo y un montón de funciones; muchos de los cuales están definidos en "código fuente C" y cuya fuente no se envía con Carbon Emacs. Que alguien me corrija si me equivoco. – ShreevatsaR

8
(setq visible-bell t) 

Esto hace emacs flash en lugar de la señal sonora.

+2

Cierto, pero esto silenciará todo lo que el OP quería evitar. Esto es lo que uso, la campana visual es tan útil como audible y no interfiere con la música cuando uso auriculares. Lo recomendaría a 'nadie' de todos modos. – jmanning2k

7

Utilizando las sugerencias de la Emacs wiki AlarmBell page, esto lo hace por mí:

(defun my-bell-function() 
    (unless (memq this-command 
     '(isearch-abort abort-recursive-edit exit-minibuffer 
       keyboard-quit mwheel-scroll down up next-line previous-line 
       backward-char forward-char)) 
    (ding))) 
(setq ring-bell-function 'my-bell-function) 

Si no conoce el nombre de un comando, pulse C-h k luego la tecla/acción que le gustaría obtener el nombre de.

0

Esto parece hacer el truco:

(setq ring-bell-function nil) 
+3

Corrección: 'nil' debe reemplazarse por' 'ignorar'. Esto desactivará * todo * timbre de campana. –

3

Entre la respuesta de Stephen Hassard y Kipton Barros comentario:

(setq ring-bell-function 'ignore) 

parece ser la más concisa, trabaja en emacs 24.x, y responde la pregunta original.