簡體   English   中英

VIM:自動完成插件可與gtags一起使用

[英]VIM: autocomplete plugin to work with gtags

對於我的大型C項目,我剛剛從ctags遷移到gtags。 但是我找不到任何可以與gtags一起工作的vim自動完成插件。 gtags如此廣泛地被使用,並且比ctags更有效。 我確定我在這里錯過了一些東西。 有人必須將gtags與任何自動完成插件集成在一起。

我必須為此編寫自己的插件。 如果有人需要,這里是鏈接。 https://github.com/kanwar-saad/gtagsomnicomplete

我為Vim寫了一個簡單的'omnifunc' ,它使用GNU global來完成:

augroup GlobalComplete
  autocmd!
  autocmd FileType c setlocal omnifunc=GlobalComplete
augroup END

function! GlobalComplete(findstart, base)
  if a:findstart == 1
    return s:LocateCurrentWordStart()
  else
    return split(system('global -c ' . a:base), '\n')
  endif
endfunction

function! s:LocateCurrentWordStart()
  let l:line = getline('.')
  let l:start = col('.') - 1
  while l:start > 0 && l:line[l:start - 1] =~# '\a'
    let l:start -= 1
  endwhile
  return l:start
endfunction

也可以看看:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM