2014-06-16 47 views
2

我使用VIM 7.0 RHEL 5.4版,並下載cscope的插件來使用cscope多擊鍵:http://cscope.sourceforge.net/cscope_maps.vim無法通過從vim編輯器

,並在複製到路徑(一個實例時間):~/.vim/plugin/cscope_maps.vim & /usr/share/vim/vim70/autoload

和產生cscope -qbR從源文件的根目錄,&開口從同一目錄*.C文件。

根據this(point 5) & cscope_maps.vim,我應該能夠通過多個按鍵做關鍵詞搜索:CTRL-\ <option>[email protected] <option>通過將光標放到關鍵字下,我們的CTAGS做。但是我只能通過vim的命令行參數(即,:cs f d:cs f c)訪問cscope關鍵字搜索,而不能使用多鍵擊快捷鍵。

我也試過粘貼cscope_maps.vim的所有內容~/.vimrc,但它並沒有幫助

有什麼我做錯了/任何其他方法,使工作?

+0

正如你可以在'cscope_maps.vim'看它沒有提到'VIM7',所以請在'VIM7'中檢查該腳本的語法。像這裏:http://vimdoc.sourceforge.net/htmldoc/usr_41.html – Mortezaipo

+0

Vim 7.0是從2006年和_very_過時。應該可以安裝最新的7.4版本;如果你的發行版找不到合適的軟件包,在Linux上[編譯](http://www.vim.org/download.php)(例如從Mercurial源代碼)也不是很難。 –

+0

@MortezaIpo沒有提到有關'VIM7',但我假設所有'VIM6 +''cscope_maps。vim'文件放在VIM的插件文件夾中? – DragonX

回答

0

也許,你缺少的CSCOPE_DB環境變量 - 也就是說,它應指向有效cscope.out文件

要進行檢查,一旦你在vim,運行:echo $CSCOPE_DB,礦山表明: /home/me/views/myrepo/cscope.out

+0

我檢查過,沒有設置'env'。所以我將'CSCOPE_DB'自己導出到特定的'〜/ src/cscope.out'文件,即使它不工作 – DragonX

1

由於該插件的文檔中描述,該插件複製到

~/.vim/plugin/cscope_maps.vim 

autoload直銷您選擇的tory是錯誤的,這是針對插件的按需功能。

此外,/usr/share/vim/vim70/擁有默認的Vim軟件包,不要碰到任何東西(一般情況下),否則在重新安裝/升級軟件包時會遇到問題!如果您確實需要系統級插件,請檢查:help runtimepath,並在系統上找到/添加您的自己的適當位置。

+0

'〜/ .vim/plugin'路徑不存在,所以我創建了一個並粘貼了'cscope_maps .vim'文件,並從'autoload'路徑中刪除,但仍然沒有運氣 – DragonX

+1

它出現在':scriptnames'中嗎? ':echo有(「cscope」)'yield'1'嗎?映射出現在':nmap '中嗎? –

+1

是的,當我做':scriptnames'&也做':echo has(「cscope」)'yield'1'時,它確實顯示爲'7:/ root/.vim/plugin/cscope_maps.vim'。而對於':nmap '我在VIM的cmd提示符下找到了'沒有找到映射' – DragonX

0

我與cscope和Vim 7.4有同樣的問題。我可以解決它拱取消註釋在cscope_maps.vim波紋線:

set timeoutlen=4000 
set ttimeout 

BTW我跟着這個教程拱安裝cscope的VIM插件: https://wiki.archlinux.org/index.php/vim#cscope