Respuestas:
Haces que el modo shell sea mejor. Mientras está en modo de término, puede cambiar del modo char (el predeterminado) al modo de línea con C-c C-j(volver al modo char con C-c C-k). el modo de línea funciona más como el modo de shell donde C-xestá el carácter de escape. Según tengo entendido, la razón para usar el modo término es que funciona más como un terminal normal que el modo shell . En principio, podría usar terminal emacs dentro del modo de término y hacer que el C-xcarácter de escape pase a esa instancia emacs. Útil si utiliza el modo de término para una sesión ssh en otra máquina.
A menudo uso el modo de término en serie para las conexiones en serie y me conviene cambiar de un lado a otro entre el modo char y el modo de línea con frecuencia. modo char cuando quiero olvidar que estoy usando emacs y solo envío todas las pulsaciones de teclas a la máquina, modo línea cuando quiero hacer algo más avanzado como copiar una parte de la sesión a otro búfer.
He estado tratando de resolver esto durante mucho tiempo, porque el término obtiene la finalización adecuada de la pestaña, incluso a partir de subcomandos, pero tener comandos de búfer ( C-x {left/right}) cambiar porque tiene un término abierto es molesto como diablos.
Esta mañana, creo que logré el éxito. C-xse comporta como normal M-xrequiere un C-xprefijo, que sigue siendo un poco molesto, pero una gran mejora de todos modos. C-cinmediatamente da como resultado C-cla subshell.
De todos modos, sin más preámbulos, pegue esto en su .emacsy disfrute del modo de término mucho más que antes:
(defun term-use-sensible-escape-char (&rest ignored)
(term-set-escape-char 24))
(advice-add 'term :after #'term-use-sensible-escape-char)
Fuentes:
https://emacs.stackexchange.com/questions/17289/in-term-mode-how-can-i-make-line-mode-the-default