5

コードのブロックをforループで囲む必要があります。これはPythonなので、インデントを処理し、タブの数を1つ増やす必要があります。Vimでこれを行う簡単な方法はありますか?

4

5 に答える 5

3

V視線モードで叩いてみて、凹ませたい部分を選択して を叩いてみてください>。その他のモーションもV良好です。

于 2012-07-24T11:21:29.527 に答える
3

<とを使用してインデントを手動で調整でき>==コード ブロックが自動的にインデントされます。

また、Vim で Python をインデントすると、より高度な自動インデントを取得するのに役立つ場合があります。

最後に、]pヤンクされたコード ブロックを挿入し、適切なレベルにインデントする便利な方法です (ブロックをヤンクし、カーソルを for ループの先頭に移動してから を押してください]p)。

于 2012-07-24T11:22:44.907 に答える
1

これを使用して、コードをインデントまたはデデントします。

于 2012-07-24T11:21:29.797 に答える
0

試すことができる最も速い方法はv i p >、インデントしたいコードのブロック内からです。これにより、Paragraph内のV isualモードラップされ、選択されたコードが>インデントされます。

于 2012-07-25T16:52:03.747 に答える
0

ここでの他の優れた回答と同様に、これを~/.vimrcファイルに追加することをお勧めします。

vnoremap < <gv
vnoremap > >gv

これにより、ビジュアル モードでテキストを選択し ( を押すv)、>またはを押し<ても、ビジュアル モードから抜け出せなくなります。

次の行は、vim に行の自動インデントを試みさせます。これは便利です。

set autoindent
set smartindent

テキストを貼り付けるときはこれを無効にする必要がありますが、そうしないとインデントが試みられます。

次のようにマッピングされたキーを使用して、貼り付けモードのオン/オフを切り替えることができます。

set pastetoggle=<F6>

F6貼り付けモードを切り替えて、自動インデントによって台無しにされずにテキストを貼り付けられるようにします。

于 2015-07-11T10:58:29.380 に答える