Re: [vim ] 使用gtags插件的结果不如预期

楼主: wei115 (ㄎㄎ)   2019-04-23 10:30:15
※ 引述《wei115 (NEET)》之铭言:
: 如题
: 想用gtags来看code
: 但相关插件一直不工作
: 我预期的结果是装好插件后,使用ctags的 <C-]> <C-t>可以在程式码之间跳转和返回
: 但实际上这快捷键好像和ctags冲突
: 插件的快捷键并没有取代ctags的快捷键
: 所以vim一直提示我‘E426: 找不到标签(tag):’
: 使用的插件是
: Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
: Plug 'jistr/vim-nerdtree-tabs'
: Plug 'ludovicchabant/vim-gutentags'
: Plug 'skywind3000/gutentags_plus'
: 附上vimrc
: https://ideone.com/szLBNL
: 平台是windows 10 64bit,msys2
: vim -versoin
: VIM - Vi IMproved 8.1 (2018 May 17, compiled May 31 2018 11:16:13)
: 此vimrc在笔电上可以正常运作
: 笔电平台是windows 7 64bit,msys2
: vim版本也是8.1
: 想问问看这要如何解决,谢谢
放弃了一段时间,又因为要用到,所以又重新继续搞
发现之前搞错了一些东西
首先能动的一直是ctags(gtags&gtags-cscope界面太难用了....)
我以前一直以为我用的是gtags但其实是ctags
所以一开始就没有用到gutentags_plus这个插件的功能
用的只有vim-gutentags
这是一个可以在vim8上,在后台执行tags更新的插件
他的设定
let g:gutentags_modules = ['ctags', 'gtags_cscope']
let g:gutentags_project_root = ['.root', '.git']
let g:gutentags_cache_dir = expand('~/.cache/tags')
意思是说会在打开的目录向上搜寻,直到遇到.root或.git,然后在~/.cache/tags建立
ctags和gtags的tag档
因为只要用到ctags所以改成
let g:gutentags_modules = ['ctags']
就只会建立ctags档了
照理来说,此时只要打开专案里的原始档,此插件就会自动产生tags挡了,然后自动设定
ctags
就能用<C-]> <C-t>在程式码之间跳转了
但我发现,在win10的wsl和msys2环境里,在~/.cache/tags里的tags档会呈现
!_TAG_FILE_FORMAT 2 /extended format;
作者: mars90226 (火星人)   2019-04-23 16:35:00
我最近转用lsp了,用neovim+coc.nvim+ccls来看C++ code虽然有些时候不如预期就是了,#define 包住的会找不到然后我可能没有真的让他把全部code index,有时候会找不到应该要有的东西,这部份倒是可以用grep补建议设一个mapping可以用fzf+ripgrep去搜寻cursor word很多时候只要这样就可以找到大部分的东西

Links booklink

Contact Us: admin [ a t ] ucptt.com