Я настроил slimv с помощью следующей команды в Vim:Почему я получаю файл не найдена ошибка в Slimv?
let g:slimv_swank_cmd = '!gnome-terminal -e "sbcl --load ~/.vim/bundle/slimv/slime/start-swank.lisp &"'
При открытии .lisp файлов и запуск slimv, я получаю следующее сообщение об ошибке в недавно открывшемся окне терминала:
debugger invoked on a SB-INT:SIMPLE-FILE-ERROR in thread
#<THREAD "main thread" RUNNING {1002A8B203}>:
Couldn't load #P"~/.vim/bundle/slimv/slime/start-swank.lisp": file does not exist.
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE] Ignore runtime option --load "~/.vim/bundle/slimv/slime/start-swank.lisp".
1: [ABORT ] Skip rest of --eval and --load options.
2: Skip to toplevel READ/EVAL/PRINT loop.
3: [EXIT ] Exit SBCL (calling #'EXIT, killing the process).
(LOAD #P"~/.vim/bundle/slimv/slime/start-swank.lisp" :VERBOSE NIL :PRINT NIL :IF-DOES-NOT-EXIST T :EXTERNAL-FORMAT :DEFAULT)
Однако выполнение команды sbcl
с терминала работает правильно, потому что файл существует на указанном пути. Как я могу исправить эту проблему?
Попробуйте полный путь с расширением тильды. –
Это сработало. Почему бы сделать абсолютный путь абсолютным? – Jking
@Jking Поскольку ни Vim, ни 'gnome-terminal', ни' sbcl' не расшифровывают '~' по умолчанию, это делает только оболочка. – lcd047