將vim的UltiSnips的快捷鍵徹底從tab鍵中分離


  在我之前的<<vim之補全1>>和<<vim之補全2>>中曾經成功的將vim的supertab和UltiSnips共用一個tab鍵, 這樣做的優點的兩種補全的觸發都變得比較方便, 存在的問題有如下幾點:

1. supertab不能使用最新版本, 必須使用vim.org中出現的2.0版.

2. UltiSnips雖然可以和supertab正常的共用的tab鍵, 但由於兩個插件的共同作用導致tab鍵在正常的supertab(保持默認的<ctrl+p>模式)觸發后是上選功能但在其他補全方式中卻神奇的變成的下選功能. 重點是shift+tab鍵也變成的下選功能.

3. 兩者共用的tab鍵有時候還是會出現相互誤用的問題.

綜合上面的問題, 現在決定兩二者的tab鍵功能模式取消, 保持supertab的tab鍵功能. 將UltiSnips的快捷鍵從tab中徹底分離.

通過閱讀UltiSnips的幫助文檔最終實現了這個想法, 具體配置和說明如下:

"UltiSnips

"插入模式下直接通過ii鍵來觸發UltiSnips的代碼塊補全
let g:UltiSnipsExpandTrigger="ii"

"iI彈出UltiSnips的可用列表,不常用的, 所以這里設置成了特殊的iI映射
let g:UltiSnipsListSnippets="iI"

"II跳轉的到下一個代碼塊可編輯區
let g:UltiSnipsJumpForwardTrigger="II"

"OO跳轉到上一個代碼塊可編輯區

let g:UltiSnipsJumpBackwardTrigger="OO"

之所以用上面的這些特殊的雙鍵映射是因為"ii"是我現在剩下不多的無沖突,易操作,不容易影響正常輸入的王牌雙鍵映射了. 這些鍵集中在i和o鍵, 易於記憶和操作

更多的原因請參見<<vim之補全1>>和<<vim之補全2>>.

通過上面的設置之后, UltiSnips對tab鍵就徹底沒有影響了, 我們可以正常使用最新版的supertab. 同時tab的所有功能都跟隨supertab設置.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM