同樣來一篇 surrounder OuO
星星都來吧 (x
為什麼叫做 surrounder ?
1. 懶得學 vim-surround,超複雜(x2. 就是懶 OuO
3. 所以這個 surrounder 就是專門用來 surround (有點難翻譯@@)的~~~~ OuO
4. 就是加上包圍的符號,加括號或寫字串時頗方便,不需要自己打
安裝
Plug 'aben20807/vim-surrounder'
:PlugInstall
使用方式
目前只支援幾個符號:'', "", (), [], {}, <>如果想要加 html 的 tag 之類的去用 vim-surround 吧(我不攔你們 QuQ
一般在 normal 模式下可以按 ,s+符號 e.g. ,s" 來把光標下的單字左右加上各加上一個 "
也可以先按一個數字表示要包含幾個單字
使用 ,d 就會自動偵測在哪個符號裡面並刪除
使用 ,f+符號 可以自動修改左右的符號
e.g. ,f' 把原本的 " 換成 '
當然刪除和取代並不一定要原本只包一個單字,它會自動搜尋包在哪個裡面
最後,當然支援 visual 模式來包選取的區塊
可自訂變數
允許使用預設的按鍵配置let g:surrounder_use_default_mapping = 1加入符號的按鍵,因為我的 <leader> 是 , 所以上面都用 ,
let g:surrounder_n_add_key = "<leader>s"visual 模式加入符號的按鍵
let g:surrounder_v_add_key = "<leader>s"刪除
let g:surrounder_n_del_key = "<leader>d"取代
let g:surrounder_n_rep_key = "<leader>f"上面 gif 看到的一堆中文,覺得不想看到就把此變數設成 0 吧
let g:surrounder_show_info = 1在刪除、取代時自動偵測在哪個符號內部,但在複雜情況下會出錯
let g:surrounder_auto_detect = 1
已知問題
整行選取(shift+v)模式會從第0個位置開始包,前面會有縮排的空白有巢狀結構時,自動模式可能會先刪除(取代)外面的 e.g. 's<u[rrou]nd>',順序:', [, <
沒有留言:
張貼留言