Включение автозаполнения в sbcl - PullRequest
5 голосов
/ 21 марта 2011

Я недавно начал изучать lisp, и в основном я использую clisp и vim.Я также хотел попробовать sbcl, поскольку его часто рекомендуют как один из лучших бесплатных компиляторов lisp.Однако есть одна вещь, которая делает sbcl более трудным для меня: я не могу получить автозаполнение в REPL, которое есть в clisp.То есть, когда я запускаю sbcl и набираю следующее (в качестве примера),

* (requi<tab>

, где <tab> - буквенный символ табуляции, я не получаю список завершений, а скорее подробную табуляциюперсонаж.В clisp <tab> завершит предыдущую строку до * (require.

Поскольку я довольно новичок в lisp, функция автозаполнения в clisp действительно удобна, поэтому было бы очень удобно, если бы кто-нибудь мог объяснитькак получить его в sbcl.

Ответы [ 3 ]

6 голосов
/ 22 марта 2011

Одним из способов получения автозаполнения repl в SBCL является использование linedit, из http://common -lisp.net / project / linedit / .Второй - использовать rlwrap, оболочку readline, с подходящим файлом дополнений.(Я думаю, будет справедливо сказать, что ни один из них не используется так часто, как emacs, который, конечно, также предоставляет завершающий REPL с рядом других полезных функций.)

4 голосов
/ 21 марта 2011

Я не знаю, как получить автозавершение REPL в SBCL, но я нахожу, что взаимодействие с моей средой lisp изнутри SLIME довольно удобно, и в этот момент вы можете использовать Cc Ci для автозаполнения.

0 голосов
/ 06 сентября 2015

Если вы хотите использовать sbcl, emacs и slime, следуйте этой инструкции Modern Common Lisp on Linux . В руководстве упоминается установка quicklisp и особенно (ql:quickload "quicklisp-slime-helper"), elispscript, который заставляет слизь выполнять автозаполнение и многое другое.

...