surround.vimの使い方メモ
お知らせ: 新しくホームページを作りました! これから記事を増やしていくつもりなので, 良かったら見てみて下さい!! ホームページはこちらになります.
surround.vimの使い方メモ
ずっと使いこなしたいと思っていたのですが、あまり操作法がわからずという感じでした。ひとまず、基本的な操作が分かったので、自分の復習もかねて、まとめてみます。
導入はNeoBundleだととても簡単で、おすすめです!以下の一文を.vimrcに書いて、:NeoBundleInstall
をするだけ!
NeoBundle 'surround.vim'
では、導入はされていることにして、まず次の一文から始めます。
Hello World!
まずはこの文の全体に'(シングルクォート)
をつけます。
方法は、yss'
と打ちます。もちろんノーマルモードの状態で打ちます。
'Hello World!'
になりました。
次は'(シングルクォート)
を消します。
ds'
と打ちます。
Hello World!
元に戻りました。
次は、ヴィジュアルモードで囲んだ部分を'(シングルクォート)
で囲って見ましょう。まずH
の上でv
を押します。その後l
を押して、o
の上までカーソルをずらします。カーソルがo
の上に来たら、S'(Sは大文字!)
を押します。
'Hello' World!
こうなりました。では、次は'
で囲まれた部分を消してみましょう。
カーソルが'Hello'
の上のどこかにある状況で、di'
とうてば、
'' World!
みたいになります。
ではちょっと戻って、
'Hello' World!
という状態にしましょう。今から、'(シングルクォート)
を"(ダブルクォート)
に変えます。カーソルが'Hello
の上の何処かにある状態で、cs'"
と押します。
"Hello" World!
となりました。
あと、一つの単語だけを'
で囲みたい場合は、ysiw'
とかもできます。たとえば上の文の状態のときに、Hello
の上にカーソルを持ってきて、ysiw'
とすると
"'Hello'" World!
となります。
基本操作はこんな感じです。最後に、表にまとめます。
コマンド | 動作 |
---|---|
ds' | 文を囲んでいる' を消す |
di' | ' で囲まれた部分を消す |
cs'" | ' を" に変更 |
S' | ヴィジュアルモードで選択した部分を' で囲む |
yss' | 文を' で囲む |
ysiw' | カーソルがある単語を' で囲む |
'
の部分はいろいろ変えられます。タグを付けたいときは、'
の代わりにt
とうつと、コマンド入力欄にフォーカスが移動して、<
と書いてある状態になります。なのでそこでp
とおして、enter
を押すと、
<p>Hello World!</p>
となります。
タグを消したい場合は、dst
とすれば消えます。
ちなみに、パッと覚えにくかったので、覚えるときは、
ds ・・・ d(delete)s(surround)
di ・・・ d(delete)i(inside)
cs ・・・ c(change)s(surround)
yss ・・・y(yank)s(surround)s(sentence)
ysiw ・・・ y(yank)s(surrond)iw(inner word)
みたいに覚えてます。ホントは違うかもしれないけど、覚えやすかったので(笑)