2012-06-28 32 views
0

我跑ctags從內部gvim的是這樣的:爲什麼ctags列出兩次相同的條目?

:!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q+f . 

然後試圖跳轉到一個特定的文件(或標籤)時:

:tjump pjsua.h 

每一擊列出了兩次

tjump output

我在做什麼錯?

操作系統和版本:

  • 的Ubuntu 12.04
  • 的Vim 7.3
  • 旺盛Ctags的從5.9〜評論svn20110310
+1

我沒有這個問題。確保你沒有幾個標籤文件(檢查':set tags?'的輸出)。另外,我建議你不要手動生成你的標籤,而是使用插件Indexer:http://goo.gl/EwILz,它爲整個項目提供無痛的自動標籤生成,並使標籤保持最新狀態。 –

+0

輸出是'tags =〜/ mypath/.git/tags,。/ tags,./TAGS,tags,TAGS'並將其改爲'tags'只能解決問題。所以你是對的。但我不認爲我已經改變了默認設置,所以看起來有點奇怪,它首先是錯誤的。有任何想法嗎?順便說一句,添加評論作爲答案,我會接受它。 – tidbeck

+0

忘了指導我的帖子給你@DmitryFrank – tidbeck

回答

2

答:我沒有這個問題。請確保您沒有多個標籤文件(檢查輸出:set tags?

默認情況下,tags的值爲./tags,tags。如果你有不同的,你不知道它被改變的地方,輸入以下內容::verbose set tags?,你會看到它改變的文件名。

的,那麼,我建議你不要手動生成的標籤,但在使用插件Indexer,它整個項目(S)提供無痛自動標籤生成並保持標籤上的更新。

有關詳細信息,請參閱文章Vim: convenient code navigation for your projects,它徹底地解釋了Indexer + Vimprj的用法。

+0

使用':verbose'非常有幫助,不知道它。事實證明,這是設置該值的[逃犯](https://github.com/tpope/vim-fugitive)。 – tidbeck

+0

更新:刪除逃犯給了我'標籤=。/標籤,。/標籤,標籤,TAGS'這似乎是默認的,它也給了我重複。 – tidbeck

1

如果代碼是用FAT32 標籤標籤格式化將指向同一個文件的捲上。

$ ls -la tags TAGS 
-rwx------ 1 user user 6848879 jun 28 09:31 tags 
-rwx------ 1 user user 6848879 jun 28 09:31 TAGS 
相關問題