マウスを使用せずに emacs でブロックを選択または強調表示したいのですが、vim のビジュアル モードのようにキーボードから行います。キーボードからこれを行う最も簡単な方法は何ですか?
9 に答える
質問を正しく理解していれば、もともと長方形の領域に関するものではありません。
C-Spc
現在の位置にマークを付けます。
カーソルがその後どこにあっても、最後のマークと現在の位置の間のテキストが「選択」されます ( をアクティブtransient-mark-mode
にすることでこれを強調表示できますが、強調表示したくない場合はマークを削除する必要があることも意味します)。
次のようなコマンドを使用して、その領域を操作できます。
C-w
. . 地域を殺します。これにより、リージョンが削除され、キル リングに入れられます。
C-y
. . ヤンク。これにより、kill リングから最後のスニペットが挿入されます。
M-y
. . サイクルキルリング。の直後にC-y
、ヤンクされた部分がキルリングの他のスニペットに置き換えられます。
M-w
. . リージョンをキル リングに保存します。と同様C-w
ですが、削除しません。
これはあくまでも基本的な使い方です。マークには他にも用途があります。チュートリアル ( C-h t
) をお勧めします。
emacs の region-rectangle を見てください。
要するに、 - でいつものように選択を開始し、Control-Spaceでリージョンを削除し、 Control-で削除されたブロックをx r kペースト (またはヤンク)します。Controlx r y
Emacs 24.4 には、rectangle-mark-modeが追加されました。それを呼び出す Cx スペース。
記事「長方形の選択範囲の操作」、特にコメント セクションを参照してください。「CUA 長方形サポート」というタイトルのCUA モード ドキュメントのセクションも参照してください。vimeo にも素敵なビデオがあります。
Control-を使用Spaceしてマークを設定し、カーソルを移動します。
選択項目transient-mark-mode
が強調表示されます。M- x transient-mark-mode
.
カスタマイズを使用して、デフォルトでこのモードを有効にするように Emacs をセットアップできます。M- x customize-option
RET transient-mark-mode
.
Edin Salkovicの回答を拡張するために、CUAモードを使用している場合は、を使用して視覚的なブロック選択を開始できます。CUAのドキュメントで説明されているブロック選択を制御するためのショートカットはたくさんあります。