我刚安装了VIM和一些插件,其中一个是vim壁炉。我遇到的一个问题是壁炉找不到我的clojure代码。我将我的clojure代码放在vimfiles / bundle下(我正在运行windows)。
我按照这些说明操作:
http://kevinmccarthy.org/blog/2013/10/12/setting-up-vim-for-clojure/
当我在命令行中运行示例clojure函数时(我使用cqc),我收到以下错误:
Error detected while processing function <SNR>20_inputeval... foreplay#echo_session_eval..foreplay#session_eval...<SNR>20_eval...6:
line 38
E605: Exception not caught: Error running clojure:Error:Could not find or load main class clojure.main^@
Error detected while processing function <SNR>20_inputeval:
line 4
E71:missing :endif
这是我的.vimrc:
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin
syntax on
filetype plugin indent on
execute pathogen#infect()
set nobackup
set nowritebackup
set diffexpr=MyDiff()
function MyDiff()
let opt = '-a --binary '
if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
let arg1 = v:fname_in
if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
let arg2 = v:fname_new
if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
let arg3 = v:fname_out
if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
let eq = ''
if $VIMRUNTIME =~ ' '
if &sh =~ '\<cmd'
let cmd = '""' . $VIMRUNTIME . '\diff"'
let eq = '"'
else
let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
endif
else
let cmd = $VIMRUNTIME . '\diff'
endif
silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction
答案 0 :(得分:1)
壁炉无法设置类路径,这可能是因为您没有使用lein项目。但这不是必需的,您可以随时连接到正在运行的nrepl(可以通过lein repl
启动)并使用:Connect nrepl://localhost:port
从vim连接到它。