安裝方式:
cd ~/.vim/bundle
# vim-sexp will maintain the balanced state of matched character
git clone git://github.com/tpope/vim-sexp-mappings-for-regular-people.git
git clone git://github.com/guns/vim-sexp.git
git clone git://github.com/tpope/vim-repeat.git
git clone git://github.com/tpope/vim-surround.git
會需要一口氣裝好幾個,是因為要裝了另外三個,有簡單易懂的 mapping 快捷鍵之後,才會容易上手。
Text object 選擇功能:
ae -> an element dae 刪除所見的 element
af -> a form daf 刪除所見的 form
移動功能:
W 向前移動一個 sexp
B 向後移動一個 sexp
其它功能:
dsf delete surrounding form 刪去包圍 form 的括號
cseb surround element in parentheses 新增包圍 element 的括號
cse[ surround element in brackets
cse{ surround element in braces
>e 在同一階層的 s-expression 裡右移 element (1 2 3) => (1 3 2)
>) slurp , 讓 s-expression 吃掉右邊外面的 element (1 2 3) 4 => (1 2 3 4)
<) barf , 讓 s-expression 吐出右邊外面的 element (1 2 3 4) => (1 2 3) 4
其它功能:
dsf delete surrounding form 刪去包圍 form 的括號
cseb surround element in parentheses 新增包圍 element 的括號
cse[ surround element in brackets
cse{ surround element in braces
>e 在同一階層的 s-expression 裡右移 element (1 2 3) => (1 3 2)
>) slurp , 讓 s-expression 吃掉右邊外面的 element (1 2 3) 4 => (1 2 3 4)
<) barf , 讓 s-expression 吐出右邊外面的 element (1 2 3 4) => (1 2 3) 4