2011-04-12 49 views
4

有沒有辦法將當前緩衝區中定義的所有函數放到快速修復列表中?假設在快速修復窗口中打開Tlist(從taglist插件)。如何在快速修復窗口內創建Vim函數列表?

+0

http://vim.1045645.n5.nabble.com/Putting-all-ctags-matches-into-quickfix-td1182150.html – 2016-04-29 20:45:02

回答

2
  1. 創建一個返回所需列表的表達式。例如:

    let cmd='exctags -x '.bufname('%')." | awk '{print $4\"|\"$3\"|\",$1}'" 
    
  2. 其饋送到cexprcgetexpr

    cexpr system(cmd) 
    
3

一種替代是使用Unite Vim的。它還需要ctags,但提供緩衝區列表/跳轉,FuzzyFinder像文件打開。使用大綱插件,你有一個很好的函數列表。我一直都在使用它,不僅用於跳轉到函數定義,還用於快速查看參數。

http://cl.ly/5xok/ss-13042011.png

+0

了,你能詳細說說你是如何與團結得到這個?謝謝。 – skeept 2011-04-13 15:22:56

+2

好的。安裝'ctags',[Unite.vim](https://github.com/Shougo/unite.vim)和[Unite Outline插件](https://github.com/h1mesuke/unite-outline)後,您可以打開任何支持的文件類型(參見[http://d.hatena.ne.jp/h1mesuke/20101107/p1]我不會說日語,但截圖足夠了),fire':統一輪廓',你會得到彈出式緩衝區具有很好的輪廓,如ss。此時,您可以使用'',''或只需輸入幾個字符即可過濾列表。按回車將跳轉到選定的功能/標題。一個缺點是,這在文件中是有限的。 – tungd 2011-04-17 03:03:41

+0

你是如何在垂直裂縫中打開它的?我似乎只能水平地在上面打開它。我查看了代碼,但在Vim中並沒有這麼深入 – 2014-02-20 20:39:46