2012-05-16 17 views
6

La manera normal en que trabajo es tener un pequeño búfer de eshell y un búfer más grande para el código en el que estoy trabajando. Uso el buffer de eshell para hacer compilaciones y pruebas simples.Cómo hacer commit de git en los buffers de Emacs

Si quiero hacer commit de git, cuando lo ejecuto de esta manera, siempre obtengo una nueva ventana de Emacs que se abre.

¿Cómo podría obtener el compromiso de simplemente abrir un nuevo búfer en la sesión actual de Emacs?

+2

Siempre he usado vc-git para hacer mis compromisos. Tal vez deberías intentar eso. –

Respuesta

8

Supongo que su variable de entorno $ EDITOR se declara como emacs. Como no está ejecutando Emacs como daemon, comienza una nueva instancia de este. Para remediar esto, tiene dos opciones:

  1. $ para configurar su editor a usar Emacsclient

  2. uso egg o magit, interfaces de Git para Emacs.
    El huevo tiene algo de mano, ya que puedes ver los atajos, pero Magit se desarrolla más activamente.

+0

De acuerdo, eso me da cosas para buscar. Jugaré un poco. Gracias. – Vernon

+0

magit es el mejor de los clientes existentes ... –

1

Eres plátano si usas Emacs, usas git, pero no usas mago. Plátanos, digo!

+0

Lo he descargado y he leído el manual. – Vernon

+0

Me gusta esta respuesta mucho. – Mittenchops

2

Me gusta que todos mis mensajes de compilación y git/magit aparezcan en la misma ventana en el mismo marco que activó el mensaje.

Echa un vistazo a los vars same-window-regexps y same-window-buffer-names, ya que creo que eso es lo que podrías estar buscando.

Aquí es la configuración que utilizo:.

(setq mismos-window-expresiones regulares (comillas ("\ * vc \ - + \ *" "\ * Magit + \ *" "grep" "\ * compilación \ * \ (\ | < [0-9] +> \)" "\ * Ayuda \ * \ (\ | < [0-9] +> \)" "\ * Resultado del comando de shell \ * \ (\ | < [0-9] +> \) "" \ * dictem. * ")))

Espero que sea útil.

Damon