Emacs には open-rectangle と呼ばれる関数があり、長方形の領域 (つまり、Vim のビジュアル ブロック モード) を選択し、キーの組み合わせを押してその長方形をスペースで埋め、既存のコンテンツを右に押し出すことができます。
これは、垂直に配置されたテキストの列を操作する場合に非常に便利です。ビジュアルブロック+検索と置換を使用して、Vimでもこれを簡単に実行できるはずだと思います。しかし、試してみると、検索と置換が四角形にバインドされない理由がわかりません。
:'<,'>s/\^/ /
これは、この選択された領域を開く代わりに、実際には行全体をインデントします。私は置き換えてみました:
:'<,'>s/\v(.*)/ \1/
しかし、それは同じ効果があります。選択したブロックの各行をスペース + 選択した領域のみに置き換えたいことをパターンに理解させるにはどうすればよいですか? 文字を変更するなどの単純な置換は機能しますが、^
orを使用.*
すると、期待どおりに機能しません。
「I」を押してスペースを挿入してドロップを通常モードに戻す機能があることは認識していますが、多くの行にわたって大量にインデントしている場合は判断が難しくなります。