Surround.vim テキストを囲む - ys + 範囲 + 囲む文字列
ysiw と ysaw の違い
ysiw - iw (=inner word)
foo bar baz
↓
foo bar "baz"
ysaw - aw (=a word)
foo bar baz
↓
foo bar" baz"
行末まで囲む
foo bar baz
↓
"foo bar baz"
- カーソルを行頭に合わせる
- ys$"
- ysの後、範囲を$で行末まで指定、文字列を"に指定
( や [ で囲む時の前後のスペースを調節する
foo
↓
( foo )
- カーソルをfooのどこかに合わせる
- ysaw(
- ysの後、範囲をawで単語にして、(で囲む。この時、(はスペースを含む
foo
↓
[foo]
- カーソルをfooのどこかに合わせる
- ysaw]
- ysの後、範囲をawで単語にして、]で囲むこの時、(はスペースを含まない
複数の単語を囲む
foo = hello, world
↓
foo = "hello, world"
- カーソルをhに合わせる
- ys3w"
- ysの後、単語が3つあるので3wで範囲を指定して、囲む文字を"に指定する
ビジュアルモードで範囲を指定して囲む
foo bar baz
↓
"foo bar" baz
- foo barをビジュアルモードで範囲指定する
- S"
- 小文字のsではなく、大文字のSなので注意する
参考