7

{一致する中括弧}をVimdoに置き換えるプラグインまたはマクロを持っている人はいますか?endできれば、次のように1行のステートメントを作成します。

foo.each { |f| f.whatever }

の中へ:

foo.each do |f|
  f.whatever
end

その1つのケースで自分でマクロを作成することもできますが、次のように、既存の複数行の潜在的に複雑なブロックの変換も処理できるものが必要です。

foo.each { |f|
  f.bars.each { |b| b.whatever }
  hash = { a: 123, b: 456 }
}

の中へ:

foo.each do |f|
  f.bars.each { |b| b.whatever }
  hash = { a: 123, b: 456 }
end

私はvim-surroundrails.vimを見てきましたが、どちらも方法が見つかりませんでした。

4

2 に答える 2

9

この機能を実行するVim Blockleと呼ばれる Vim プラグインがあります。

プラグインをインストールしたら、カーソルを{ } doまたはに置き、endを押し<Leader>bてブロック スタイルを交換します。

于 2013-03-16T04:33:38.030 に答える