2010-11-24 8 views
5

私はVS 2010でviemuを使用しています.C#ソースコード内のメソッド全体を削除する信頼できるコマンドはありますか?ここでメソッド全体を削除するコマンドはありますか?

私が試してみました物事は、次のとおりです。

  • 動きが}コマンドと]]は方法を選ぶには十分にスマートではありません。時々、彼らは正しい量のテキストをつかむことがあります。

  • 私はメソッドの中からメソッドdiBを実行すると、メソッドの本体全体が削除されます。それほど悪くないですが、署名と外側の括弧を削除する必要があります。私はd*を行い、その後(すなわちpublicprivate、など)可視性修飾子にカーソルを移動すると、次のメソッドは、同じ可視性を持っている場合

  • 、それは全体の方法を殺すでしょう。

どのvi/viemuのエキスパートがこれを行う方法がありますか?

+3

メソッドの左側のマイナス記号をクリックしてメソッドを折りたたんで、折りたたまれたメソッド行全体を強調表示し、Deleteキーを押します。 –

+0

それは悪くないです、これを答えにする必要があります。メソッドを 'CTRL + M、M'で折りたたんで、そこから' dd'だけを実行することもできます。 –

答えて

2

Vimではこれが私のやり方です。 viemuが十分に互換性があるかどうかはわかりませんが、

  1. メソッド宣言(アクセシビリティ修飾子など)の先頭に移動します。
  2. vを入力してビジュアルモードを開始します。
  3. メソッド本体を開始する中括弧の上にカーソルを置きます。
  4. を入力して、カーソルを該当する中かっこに移動します。
  5. dを入力して、選択したものすべてを削除します。

これは、自動または何も超大型のではないのですが、それは動作しますし、中に筋肉の記憶キック一度行うことは比較的容易である。

+0

メソッドの最初の行に移動し、 '^ vf {%d' – shellholic

+0

ニースはコンパクトで再現性があります。それを行うカスタムコマンドを書くことができます。 – cdhowie

+0

あなたの答えはviemuでうまくいきますが、シェルホールのようには見えません。私はCTRL + M、M、そしてddが好きですが、これはVisual Studio固有のものです。そして、viemuを使う理由の1つは、私がVSから枝分かれするのを助けることです。 –

1

dap(段落を削除します)、空を含まない簡単な方法のために動作しますライン。空行を含むメソッドの場合は、diBdap(内部ブロックを削除してから段落を削除する)を使用する必要があります。より使いやすくするために、rcファイルにマッピングを作成することができます。例::nmap <C-d> diBdap

+0

あなたはdasが何であるかを明確にしたいかもしれません。さもなければ、これは役に立ちません。 –

+0

あなたはdasについて詳しく説明できますか?私は 'd'が削除コマンドであることを知っています、' as 'はどのような動きですか? viemu 2010とgvim 7.3のWindowsでは、 'das'は連続したテキストブロックを削除します。したがって、メソッドに空の行がある場合は空の行で停止します。メソッドに空行がない場合、 'das'はそれを正しく削除します。 –

2

私はzaddを使ってそれを折りたたみ、その折り畳みを削除します(宣言も得られます)。

削除するメソッド/ if文のレベルの内側にいる場合、もう1つの方法はda{ddです。他のいくつかの提案より少し簡単に入力できます。それはカーソルが現在ある{ブラケットペアの周りを削除し、次にddを残っている関数宣言を削除すると言います。

メソッド内のコントロール構造の中にネストされている場合は、その前に数値を入力して、その多くのレベルを削除できます。

+0

(これはvimで動作しますが、VSについてはわかりませんが、これはありませんが、これらはおそらくかなり基本的なコマンドのようです) –

+0

これはviemuでほとんど動作します。基本的に 'da {kdd'、あなた自身の行にカッコを入れていると仮定します。 –

関連する問題