2010-08-17 10 views
20

A menudo tengo varios búferes de comint abiertos a la vez, por ejemplo, tendré un búfer de SQLi abierto en una base de datos y un búfer de shell abierto en varios lugares. A veces, sin ningún motivo que pueda detectar, todos estos búferes comienzan a compartir un historial de comandos de búfer común, de modo que M-p extraerá mi último comando SQL en un búfer en modo shell, y así sucesivamente.¿Por qué mis búferes de comentarios de emacs a veces parecen compartir el mismo historial?

¿Cómo puedo solucionar esto? ¿Qué demonios está causando?

+0

El historial se almacena en comint-input-ring y esta es una variable local de buffer. No puedo reproducir tu problema. ¿Podría proporcionar un caso de prueba que reproduzca el problema cada vez? –

+0

Lamentablemente, no; sucede sin un patrón discernible. –

+0

¿Cuál es el valor de la variable comint-input-ring-file-name? Comint puede almacenar el historial en un archivo donde cada entrada está separada por \ n. Si tus comandos tienen \ n en él, podría ser un problema. –

Respuesta

0

Parece que hay algo más en su sistema del que no tiene conocimiento. Una posibilidad puede ser algo en sus archivos .emacs se está mezclando entre memorias intermedias sin su conocimiento. Otra posibilidad es que inadvertidamente estés moviendo datos a través de tu sistema de copiar y pegar.

1

¿Ha salido de alguna de las shells o sesiones de SQL? Mucho tiempo desde que utilicé emacs, pero me parece recordar que cuando terminaba un shell, los comandos formaban parte de una 'lista de historial de comandos globales'.

nota - Un shell puede salir, pero el búfer seguirá allí en emacs.

Cuestiones relacionadas