vim-operator-furround の挙動を少し変えた.

vim-operator-furround は, "hoge(" のようなものを yank している状態で, 選択したテキストオブジェクトに対して, "hoge({textobj})" のように hoge() で囲うオペレーターです. hoge() で囲いたい症候群にかかっているときにはドットの公式が使えて仕事が捗ります.

これの挙動を少し修正しました.

開き括弧が複数ある場合

以前は「ヤンクされた最後の文字」のみをみていたのですが途中の開き括弧も見るようにしました.

以下の表は, tako という単語に対して `(opeartor-furround-append)iw` したときの動作です.

ヤンクしている内容 実行結果 備考
hoge hoge(tako) デフォルト動作
hoge[ hoge[tako]
hoge hoge
hoge" hoge"tako"
hoge' hoge"tako'
hoge[" hoge["tako"]
hoge([" hoge(["tako"])
hoge()[" hoge()["tako"]
hoge(3, hoge(3, tako)
hoge(3, " hoge(3, "tako")

operator_furround_use_input

ヤンクレジスタの内容をみずに, input 待ちにするオプションを追加しました.
デフォルトは 0 で無効になっています.