2016-07-15 40 views
1

我使用ms windows 首先,我真的是編程和linux的新手,問題就在這裏,我很抱歉我編輯了vim配置文件併發生了錯誤(在MS Windows上,錯誤提示「不知道」%「選項)

我想COMFILE上gvim的Java源代碼,並搜查一派..發現後,發現了一些代碼「myjava.vim」,他的配置和_vimrc代碼

和錯誤發生了

這裏是myjava.vim 這個如果配置文件爲java

〜/ vim的/ myjava.vim


set cindent 
set smartindent 
set ai 
syntax on 

" indent config 
set sw=4 sts=4 ts=8 et 

" compile and execution 
map <F6> :!java %:r<SPACE> 
map <F7> :w<ENTER>:make<ENTER> 

" compile config 
set makeprg=javac %\ 
set errorformat=%A%f:%l:\ %m,%-Z%p^,%-C%.%# 

" finding compile error 
map ,n :cn<ENTER> 
map ,p :cp<ENTER> 
map ,l :cl<ENTER> 
map ,w :cw<ENTER> 

" set block and auto annotation 
vmap ,c :s/^/\/\//g<ENTER> 
vmap ,uc :s/^\/\///g<ENTER> 

" TagList config 
nnoremap <silent> <F8> :Tlist<CR> 
nnoremap <silent> <F9> :w<CR>:TlistUpdate<CR> 
let Tlist_Inc_Winwidth=0 
let Tlist_Use_Right_Window=1 

" ctags config 
set tags=~/.javatags 
set complete=.,w,b,u,t,i 

" abbreviation config 
ab sysout System.out.println();<ESC>hi 
ab syserr System.out.println();<ESC>hi 
ab debug if (log.isDebugEnabled()) {<CR>log.debug();<CR>}<CR><ESC>kkf(a 

在第14行錯誤發生 「不知道%\選項」

這裏是_vimrc代碼 我沒有」不知道我在哪裏必須將這段代碼放在_vimrc文件中,然後放到最後。


let Tlist_Ctags_Cmd="C:\Programs\ctags554\ctags.exe" 

au BufNewFile,BufRead *.java :source ~/.vim/myjava.vim 

我chanded〜/ vim的/ myjava.vim到C:\ Program Files文件(x86)的\的Vim \ vim74 \ myjava.vim 我不知道這是正確的

這是我的_vimrc文件讀取時 _vimrc自動讀取myjava.vim * .java文件


set nocompatible 
source $VIMRUNTIME/vimrc_example.vim 
source $VIMRUNTIME/mswin.vim 
behave mswin 

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 


let Tlist_Ctags_Cmd="C:\Programs\ctags554\ctags.exe" 

au BufNewFile,BufRead *.java :source C:\Program Files (x86)\Vim\vim74\myjava.vim 

我做myjava.vim並把它放在vim74文件夾和文件夾的Vim

編輯_vimrc文件,我打開任何Java文件,Windows說,我們不知道「%\選項」

請更正我的代碼錯誤。 非常感謝您的閱讀。

+1

這是不是一個真正的問題的Java Vim的答案。如果你在http://vi.stackexchange.com上提問,你更有可能得到答案。 – VGR

+0

如果確實解決了問題,您應該考慮接受答案。主要有兩個原因:1.如果有人通過Google搜索發現這個問題,他會看到它已經解決了; 2.你通過接受答案獲得聲望:)。 – grochmal

回答

0

您收到的錯誤消息實際上是一個轉義問題。裏面的Vim一個set你需要逃避的空間:

set makeprg=javac\ % 

是正確的makeprg設置。 %是當前正在編輯的緩衝區的文件名。

此外,看看你的$VIMRUNTIME變量(只要在Vim中找到:echo $VIMRUNTIME就可以找到它)。這可能是您的系統上的變量達C:\Program Files (x86)\Vim\vim74

這樣你就可以做autocmd如下:

au BufNewFile,BufRead *.java :source $VIMRUNTIME/myjava.vim 

Vim使用正斜槓,即使在MS Windows(除非它是一個字符串,傳遞給命令行,或者設置shellslash)。


最後,@VGR是正確的它是更快獲得上http://vi.stackexchange.com(網站我們的Vim的一部分)

+0

非常感謝你XD。你救了我。 –

相關問題