Как получить подсказку в SLIME?

Я только что установил SLIME в Emacs, но иногда, когда я набираю текст, я получаю сообщение об ошибке, и появляется отладчик, и я выхожу из него, но когда я возвращаюсь к REPL, я ничего не могу оценить. Я тоже не могу получить подсказку.

Я хотел бы что-то вроде Ctrl-C в версии Lisp для командной строки, которую я использую (SBCL).

Я просто застрял в чем-то вроде

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

Ничто, кажется, не возвращает меня к * подскажите, и ничего не оценивает.

Освободи меня!! Как я могу получить подсказку обратно в SLIME REPL?

1 ответ

Когда буфер открылся, вы, вероятно, увидели буфер с содержимым, которое выглядит примерно так (я создал это, оценивая (+1 'foo)

Аргумент Y не является НОМЕРОМ: FOO [Условие типа SIMPLE-TYPE-ERROR]

Перезапуски: 0: [RETRY] ​​Повторить запрос оценки SLIME REPL. 1: [*ABORT] Возврат к верхнему уровню SLIME. 2: [ABORT] Прервать поток (#)

Обратный след: 0: (SB-KERNEL:TWO-ARG-+ 1 FOO) 1: (+ #) [больше, опционально] 2: (SB-INT:SIMPLE-EVAL-IN-LEXENV (+ 1 (QUOTE FOO)) #)

Если вы просто закроете этот буфер (возможно, нажав C-xk<RET>) тогда вам не будет выдан новый запрос сразу. Если вы нажмете кнопку возврата еще раз в REPL, вы получите новое приглашение.

Тем не мение. Правильный способ выхода из отладчика - ввести номер одного из перезапусков или перейти к строке перезапуска, которую вы хотите выполнить, и затем нажать клавишу возврата.

Другие вопросы по тегам