2009-09-10 8 views
10

どのように左に、上と下にコードブロックをタブでタブ付けしますか?vim質問:コードのブロックをタブする

+0

ます。http:// stackoverflowの。com/questions/442302/tabbing-selected-section-in-vim –

+3

あなたは上下を意味しますか? –

+0

私はコードブロックを持っていて、それをブロックの下の行を取って上に挿入するように[数行]を – vehomzzz

答えて

35

私の好きなやり方は、あなたのコードブロックを(通常の[V]実際のラインモードで)選択し、>または<を押してください。

タブを複数回タップする場合は、2>または3>を繰り返します。

十分なタブが付いていない(またはタブが大きすぎる)場合は、「gv」と入力して選択内容を再選択し、もう一度やり直してください。

コードのブロックを移動するには、[V]のラインモードを選択して「d」を押します。これが「カット」操作です。

カーソルを移動したい場所に移動し、「p」を押します。これが「ペースト」操作です。

コードブロックを[V]特別なラインモードで選択し、 "="を押すことで、コードブロックを自動タブすることもできます。コマンドモードで

+5

gvは前の選択を再選択しますか? WOW - それはそれ自体では便利です... – vehomzzz

+5

コードに十分なタブがなかった場合は、ドット '.'コマンドを使って最後のIDを繰り返します。 – CMS

+0

GVのヒントを知らなかった、ありがとうこれのために! –

1

:他のコマンドとして

>

あなたはそれが適用されているしたい行の数先頭に追加できます。

+ + を>

"tab" 22行になります。

プレスあなたは、カーソルを含む内部ブロックを「再タブ」

4

にインデント化したいなら:>iB を囲む中括弧などの内部ブロックをインデントするには、実行します。>aB

をあなたは「>」を置き換えることができます「<」を左にインデントします。

自動インデントするには==(またはテキストをハイライト表示している場合は=)を押します。

1

私は、テキストを選択したままテキストを複数回インデントすることができるビジュアルモードに便利な再マップを使用します。いくつかのIDEでタブ(またはシフトタブ)を選択してインデントする方法と似ています。

はまた、あなたがvimのがしようとすると自動的に正しいインデントを決定するために持っている==使用することができ、あなたの.vimrc

" Pressing <or> will let you indent/unident selected lines 
vnoremap < <gv 
vnoremap > >gv 

に以下を追加します。 ==を押すか、またはファイル全体を選択して==を押して、すべての字下げを修正することができます(wysiwygエディタによって生成されたhtmlに関する驚異的な動作)。

0

だけビジュアルモードタイピングVで移動して<または>の文字を使用する:)

関連する問題