2014-10-03 30 views
7

我使用rails.vim,但想用我自己的ultisnips覆蓋一個或兩個片段。如何配置ultisnip來覆蓋現有的代碼片段?

我已經創建了片段,但由於它們已經被rails.vim定義,所以觸發時會出現一個菜單。我想我的片段覆蓋現有的片段以避免菜單。

+0

您確定這些片段是由rails.vim定義的嗎?我在代碼中看到的唯一片段是[this line](https://github.com/tpope/vim-rails/blob/master/autoload/rails.vim#L4611),它啓用了每個「rails」片段UltiSnips會發現。也許你應該從Honza的庫中刪除默認的導航片段? – romainl 2014-10-03 07:00:25

+0

@romainl你說得對 - 它們是在'〜/ .vim/bundle/snippets.vim/snippets/ruby​​.snippets'中定義的。我想選擇性地禁用我重寫的。你知道一個簡單的方法來實現這個嗎? (我寧願避免編輯/分支snippets.vim,如果我可以幫助它)。 – Zubin 2014-10-07 11:25:15

+0

不,我沒有使用UltiSnips甚至分叉的SnipMate的經驗,但是個人配置的重點是拒絕個性化它? – romainl 2014-10-07 12:24:31

回答

8

解決方案是使用priority指令。所有片段默認優先級爲0.因此,將此添加到我的自定義片段的頂部可解決問題:

# top of custom snippets file 
priority 1