Esta es ciertamente una pregunta superficial.
Aunque ansi-termcomienza a comportarse correctamente cuando lo abro por primera vez, parece degradarse a un modo 'editable' después de algunos comandos, por ejemplo, cuando lo hago C-a(inicio de línea) seguido de C-k(línea de cierre), borra todo el mensaje.
Para mi cordura estética, ¿hay alguna manera de hacer que las indicaciones y la salida anterior no sean editables (para shell)? (Actualizado para excluir el término ansi dadas las diferencias significativas).
Estoy usando zsh en Emacs 24.4; El sistema operativo es LXDE (Ubuntu 14.04) a través de Virtual Box.
(Lo ideal sería poder mover el cursor ...)

C-c C-j. Intente descubrir ese valor predeterminado o cambie al modo char conC-c C-k.shell-mode/term-moderespectivamente no se deriva / nocomint-mode, aquí hace dos preguntas muy diferentes al mismo tiempo. ¿Te importaría dividir esto en dos preguntas separadas?Respuestas:
los modos derivados de comint (como
shell,ielm...) admiten funciones de filtro, el siguiente fragmento hace que la salida y el mensaje sean de solo lectura:En cuanto a
ansi-term(que no se deriva de comint ), presenta dos modos de operación,char modeque se mantienen lo más veraz posible para los enlaces del shell y el software que se ejecuta en él, yline modeque le permite editar el búfer como lo desee. Por lo general, debe permanecer enchar mode(vinculado aC-c C-k) y ocasionalmente cambiar aline mode(vinculado aC-c C-j) para editar la salida del comando.fuente
Cuando se mezcla
termconshell-mode, la variablecomint-use-prompt-regexpparece establecerse ocasionalmente. Esto provoca un comportamiento un poco como el que ha descrito: en el modo shell C-a irá al principio de la línea, C-kmatará toda la línea, incluida la solicitud.Una solución simple es restablecer
comint-use-prompt-regexpcon C-: (setq comint-use-prompt-regexp nil), obligando al modo shell a usar propiedades de texto que las teclas de movimiento del cursor conocen.Hay una descripción de cómo funciona esto en el manual de GNU Emacs aquí: https://www.gnu.org/software/emacs/manual/html_node/emacs/Shell-Prompts.html
fuente
Intenta personalizar la variable
comint-prompt-read-onlyat.Esto afectará
shell-modey otros derivados decomint-mode, pero noterm-mode.fuente