Öffnen Sie einen Emacs-Puffer, wenn ein Befehl versucht, einen Editor im Shell-Modus zu öffnen

Ich verwende gern den Emacs-Shell-Modus, der jedoch einige Mängel aufweist. Eine davon ist, dass es nicht klug genug ist, einen neuen Puffer zu öffnen, wenn ein Shell-Befehl versucht, einen Editor aufzurufen. Zum Beispiel mit der UmgebungsvariablenVISUAL einstellenvim Ich bekomme folgendes vonsvn propedit:

$ svn propedit svn:externals . 
"svn-prop.tmp" 2L, 149C[1;1H
~                                                                               [4;1H~                                                                               [5;1H~                                                                               [6;1H~                                                                               [7;1H~            
...

(Es mag schwierig sein, es anhand der Darstellung zu sagen, aber es ist ein schreckliches, hässliches Durcheinander.)

MitVISUAL einstellen"emacs -nw", Ich bekomme

$ svn propedit svn:externals .
emacs: Terminal type "dumb" is not powerful enough to run Emacs.
It lacks the ability to position the cursor.
If that is not the actual type of terminal you have,
use the Bourne shell command `TERM=... export TERM' (C-shell:
`setenv TERM ...') to specify the correct type.  It may be necessary
to do `unset TERMINFO' (C-shell: `unsetenv TERMINFO') as well.svn: system('emacs -nw svn-prop.tmp') returned 256

(Es funktioniert mitVISUAL auf just setzenemacs, aber nur in einem Emacs X-Fenster, nicht in einer Terminalsitzung.)

Gibt es eine Möglichkeit, im Shell-Modus das Richtige zu tun und im Auftrag des Befehlszeilenprozesses einen neuen Puffer zu öffnen?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage