Wie bekomme ich eine Eingabeaufforderung in SLIME?

709
kalaracey

Ich habe gerade SLIME in Emacs installiert, aber manchmal, wenn ich den Text eingebe, erhalte ich eine Fehlermeldung, und der Debugger wird angezeigt, und ich verlasse das Programm, aber wenn ich zur REPL zurückkomme, kann ich nichts bewerten. Ich kann die Aufforderung auch nicht zurückbekommen.

Ich möchte etwas Ctrl-Cin der Kommandozeilenversion von Lisp (SBCL).

Ich bleibe bei so etwas hängen

*  Process inferior-lisp (list 1 2 3 4)(quit) 

Nichts scheint mich auf die *Aufforderung zurückzubringen, und nichts wertet es aus.

Befreie mich!! Wie bekomme ich eine Aufforderung in SLIME REPL?

1
Wie beenden Sie den Debugger? Der Debugger von SBCL bietet eine Liste von Neustarts. Die Standardeinstellung, die in der Liste mit einem Sternchen markiert ist und durch Drücken von "q" verfügbar ist, sollte zur REPL zurückkehren. Aaron Miller vor 11 Jahren 0

1 Antwort auf die Frage

0
verdammelt

Wenn der Puffer geöffnet wurde, haben Sie wahrscheinlich einen Puffer mit einem Inhalt gesehen, der in etwa wie folgt aussieht (ich habe ihn durch Auswertung erstellt.) (+1 'foo)

Argument Y ist keine NUMMER: FOO [Bedingung vom Typ SIMPLE-TYPE-ERROR]

Neustarts: 0: [RETRY] ​​SLIME REPL-Evaluierungsanforderung erneut versuchen. 1: [* ABORT] Kehrt zur obersten Ebene von SLIME zurück. 2: [Abort] Thread abbrechen (#)

Rückverfolgung: 0: (SB-KERNEL: ZWEI-ARG- + 1 FOO) 1: (+ #) [mehr, optional] 2: (SB-INT: EINFACH-EVAL-IN-LEXENV (+ 1 (QUOTE FOO)) #)

Wenn Sie diesen Puffer einfach schließen (vielleicht durch Schlagen C-xk<RET>), erhalten Sie nicht sofort eine neue Aufforderung. Wenn Sie in der REPL erneut die Eingabetaste drücken, erhalten Sie eine neue Eingabeaufforderung.

Jedoch. Der korrekte Weg, um den Debugger zu beenden, besteht darin, die Nummer eines Neustarts einzugeben oder in die Zeile des Neustarts zu wechseln, den Sie ausführen möchten, und dann die Eingabetaste drücken.