java自动将内容输到光标处,vim 编辑 java javascript 自动补全{([ 以及输入分号时在行尾加分号...
"===================================括号自动关闭========================function! My_BracketComplete()let char = strpart(getline('.'), col('.')-1, 1)if (char == ")")return "/"elsereturn ")"endifendfunctiona
"===================================括号自动关闭========================
function! My_BracketComplete()
let char = strpart(getline('.'), col('.')-1, 1)
if (char == ")")
return "/"
else
return ")"
endif
endfunction
autocmd Filetype java,javascript,html imap ( ()
autocmd FileType java,javascript,html inoremap ) =My_BracketComplete()
function! My_MidComplete()
let char = strpart(getline('.'), col('.')-1, 1)
if (char == "]")
return "/"
else
return "]"
endif
endfunction
autocmd Filetype java,javascript,html imap [ []
autocmd FileType java,javascript,html inoremap ] =My_MidComplete()
autocmd Filetype java,javascript,html,css imap { {xApa}
function! My_BraceComplete()
let char = strpart(getline('.'), col('.')-1, 1)
if (char == "}")
return "/"
else
return "}"
endif
endfunction
function! My_appendSemicolon() "在句末添加分号后 ,光标仍回原位置 imap ; =My_appendSemicolon()
let nowPos=col('.') "光标下标
let endPos=col('$') "行尾下标
let len=endPos-nowPos
let line=getline('.')
if matchend(line,";//s/*$")==strlen(line) " 如果 此行以分号结尾(包括分号后面有空格的情况) 则不将分号加到末尾,而是光标处
return ";"
else
return repeat("/",len).";".repeat("/",len+1) "在行尾添加分号并回到原位置
endif
endfunction
"============================end of 括号自动关闭========================
"与omni结合使用的时候 当提示方法名的时个一般是这种情形 System.out.print(
"而不是System.out.println() 注意最后的括号,此函数要做的就是当使用提示的时候
"补上右括号
function! My_BracketComplete4omni()
let line=getline('.') "| example: line= System.ouout
let dotPos=strridx(line,".") "lengthOf(' System.')-1 最后一个点.所在的位置
let cursePos=strlen(line) "lengthOf(' System.ouout') 光标的位置
let len=cursePos-dotPos "lengthof(ouout)+1 光标到最后一个点之间 的长度
let lastCharIndex=strridx(line,'(') "得到最后一个左括号的下标,判断是否需要补上一个右括号
let bedot=strpart(line,0,dotPos) " System 最后一个点之前的部分
let afdot=strpart(line,dotPos+1,len) "ouout 最后一个点之后 的部分
let b=match(afdot,'/(/w/+/)/1') " the begin index of ouou
let e=matchend(afdot,'/(/w/+/)/1') " the end index of ouou
let ok=strpart(afdot,(e-b)/2) " out ,all the char after the first 'u' of ouout
"debug
"return repeat("/",len-1).ok."/nline:".line."/ndotPos:".dotPos."/ncursePos:".cursePos."/nlen:".len."/nlastCharIndex:".lastCharIndex."/nbedot:".bedot."/nafdot:".afdot."/nb:".b."/ne:".e."/nok:".ok."/nrep:".rep
let rep=repeat("/",strlen(ok)-1) "向前移动strlen(ok) 个长度的位置,以便删除ouout 最前面出现的重复的ou
let lenOfOk=strlen(ok)
let lenOfBetweenDotAndOk=len-lenOfOk
let rep=rep.repeat("/", lenOfBetweenDotAndOk-1) "删除ouout 最前面出现的重复的ou
let rep=rep.repeat("/",lenOfOk) "光标向后移动到最初的位置
if lastCharIndex == -1
if dotPos== -1
return " "
else
return rep
endif
else
return rep.")/"
endif
endfunction
let g:closetag_html_style=1
autocmd FileType xml,html imap > >
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType php set omnifunc=phpcomplete#CompletePHP
autocmd FileType c set omnifunc=ccomplete#Complete
autocmd Filetype java set omnifunc=javacomplete#Complete
autocmd Filetype java set completefunc=javacomplete#CompleteParamsInf
autocmd FileType java,javascript,html,css imap ; =My_appendSemicolon()
autocmd FileType java,javascript,html,css map ; i;
autocmd FileType java,javascript,html imap " "kAxappJhi
autocmd FileType java,javascript,html,vim imap ' 'kAxappJi
autocmd Filetype java,javascript inoremap . .
autocmd Filetype css inoremap : :
autocmd Filetype css,javascript,java inoremap
autocmd Filetype javascript,css inoremap =My_BracketComplete4omni()
autocmd Filetype java,javascript,css,html, inoremap =My_BracketComplete4omni()
autocmd Filetype java,javascript,css,html inoremap =My_BracketComplete4omni()
autocmd Filetype java,javascript,css,html inoremap =My_BracketComplete4omni()
autocmd Filetype java,javascript,css,html,xml inoremap a a
autocmd Filetype java,javascript,css,html,xml inoremap b b
autocmd Filetype java,javascript,css,html,xml inoremap c c
autocmd Filetype java,javascript,css,html,xml inoremap d d
autocmd Filetype java,javascript,css,html,xml inoremap e e
autocmd Filetype java,javascript,css,html,xml inoremap f f
autocmd Filetype java,javascript,css,html,xml inoremap g g
autocmd Filetype java,javascript,css,html,xml inoremap h h
autocmd Filetype java,javascript,css,html,xml inoremap i i
autocmd Filetype java,javascript,css,html,xml inoremap j j
autocmd Filetype java,javascript,css,html,xml inoremap k k
autocmd Filetype java,javascript,css,html,xml inoremap l l
autocmd Filetype java,javascript,css,html,xml inoremap m m
autocmd Filetype java,javascript,css,html,xml inoremap n n
autocmd Filetype java,javascript,css,html,xml inoremap o o
autocmd Filetype java,javascript,css,html,xml inoremap p p
autocmd Filetype java,javascript,css,html,xml inoremap q q
autocmd Filetype java,javascript,css,html,xml inoremap r r
autocmd Filetype java,javascript,css,html,xml inoremap s s
autocmd Filetype java,javascript,css,html,xml inoremap t t
autocmd Filetype java,javascript,css,html,xml inoremap u u
autocmd Filetype java,javascript,css,html,xml inoremap v v
autocmd Filetype java,javascript,css,html,xml inoremap w w
autocmd Filetype java,javascript,css,html,xml inoremap x x
autocmd Filetype java,javascript,css,html,xml inoremap y y
autocmd Filetype java,javascript,css,html,xml inoremap z z
autocmd Filetype java,javascript,css,html,xml inoremap A A
autocmd Filetype java,javascript,css,html,xml inoremap B B
autocmd Filetype java,javascript,css,html,xml inoremap C C
autocmd Filetype java,javascript,css,html,xml inoremap D D
autocmd Filetype java,javascript,css,html,xml inoremap E E
autocmd Filetype java,javascript,css,html,xml inoremap F F
autocmd Filetype java,javascript,css,html,xml inoremap G G
autocmd Filetype java,javascript,css,html,xml inoremap H H
autocmd Filetype java,javascript,css,html,xml inoremap I I
autocmd Filetype java,javascript,css,html,xml inoremap J J
autocmd Filetype java,javascript,css,html,xml inoremap K K
autocmd Filetype java,javascript,css,html,xml inoremap L L
autocmd Filetype java,javascript,css,html,xml inoremap M M
autocmd Filetype java,javascript,css,html,xml inoremap N N
autocmd Filetype java,javascript,css,html,xml inoremap O O
autocmd Filetype java,javascript,css,html,xml inoremap P P
autocmd Filetype java,javascript,css,html,xml inoremap Q Q
autocmd Filetype java,javascript,css,html,xml inoremap R R
autocmd Filetype java,javascript,css,html,xml inoremap S S
autocmd Filetype java,javascript,css,html,xml inoremap T T
autocmd Filetype java,javascript,css,html,xml inoremap U U
autocmd Filetype java,javascript,css,html,xml inoremap V V
autocmd Filetype java,javascript,css,html,xml inoremap W W
autocmd Filetype java,javascript,css,html,xml inoremap X X
autocmd Filetype java,javascript,css,html,xml inoremap Y Y
autocmd Filetype java,javascript,css,html,xml inoremap Z Z
更多推荐
所有评论(0)