Como desabilitar o aviso do gnuclient do Emacs no kill-buffer

2

Quando eu executo M-x kill-buffer para um buffer que foi openend via gnuclient , primeiro recebo este prompt ...

Kill buffer (default 'my-buffer-name'): 

Então eu recebo um segundo prompt / mensagem ...

Buffer 'my-buffer-name' belongs to gnuserv client(s); kill anyway? (yes or no) 

Como posso desativar a segunda mensagem gnuserv / client ? (Eu não preciso disso).

    
por Peter.O 22.08.2012 / 20:34

1 resposta

1

O script a seguir funciona para ambos com gnuclient ou emacsclient , embora sua docstring (original) diga "Kill buffer, levando o gnuclient em conta." ... de emacswiki: KillKey

(defun my-kill ()
  "Kill buffer, taking gnuclient into account."
  (interactive)
  (if (buffer-modified-p)
      (error "Buffer has unsaved changes")
    (if server-buffer-clients
 (server-edit)
      (kill-buffer (current-buffer)))))

O acima aborda a questão, como solicitado, mas além disso, tenho trabalhado em torno do problema usando o servidor do emacs e emacsclient (vs. gnuclient, como mencionado na pergunta).

Com essa nova combinação servidor / cliente, eu posso abrir arquivos no emacs, a partir de um shell bash, como se fossem abertos (visitados) dentro do próprio emacs.

Em um script de inicialização, por exemplo. chamado e , este comando básico faz o truque; não há mais avisos irritantes quando eu mato o buffer ...

Também tem a vantagem de permitir recursos como restaurar o VisibleBookmarks , etc para funcionar para esse arquivo / buffer.

emacsclient -e "(find-file \"$1\")" &>/dev/null

Eu acho que algo similar poderia ser feito com o servidor / cliente GNU, mas eu gosto bastante do emacsclient , então eu vou correr com ele.

    
por 08.09.2012 / 01:31