M-x cua-mode コマンドは、他の多くのアプリケーションで採用されている Common User Access (CUA) システムと互換性のあるキーバインドを設定します。
CUAモードが有効な場合、キー C-x、C-c、C-v、および C-z
は、それぞれ切り取り(キル)、コピー、貼り付け(ヤンク)、および元に戻すコマンドを実行します。C-x
および C-c
キーは、リージョンがアクティブな場合にのみ切り取りとコピーを行います。それ以外の場合はプレフィックスキーとして動作するため、C-x C-c のような標準的なEmacsコマンドも引き続き動作します。なお、これにより変数 mark-even-if-inactive は C-x および
C-c に対しては効果を持たないことに注意してください(リージョンの操作 を参照)。
マークが有効な状態で C-x C-f のような Emacs コマンドを入力するには、次のいずれかの方法を使用してください。Shift とプレフィックスキーを組み合わせて保持する(例:S-C-x C-f)か、プレフィックスキーを素早く2回入力する(例:C-x C-x C-f)かです。
以下に述べるCUAモードのその他の機能は維持したまま、CUAモードによる標準Emacsバインディングの上書きを無効にするには、変数 cua-enable-cua-keys に nil
を設定してください。
CUAモードでは、デフォルトでDelete-Selectionモード(編集用マウスコマンドを参照)が有効になり、入力したテキストがアクティブ領域を置き換えます。この動作なしでCUAを使用するには、変数
cua-delete-selection に nil を設定してください。
CUAモードでは、矩形のハイライト表示により、矩形のサポート機能が強化されています。C-RET で矩形を開始し、移動コマンドで拡張し、C-x または C-c で切り取りやコピーを行います。RET はカーソルを矩形の次の(時計回りの)角に移動させるため、任意の方向に簡単に拡張できます。入力した通常のテキストは、矩形内の各行の左側または右側(カーソルと同じ側)に挿入されます。
cua-rectangle-mark-modeコマンドを呼び出すことで、CUAを有効にせずにこの矩形サポートを利用できます。また、標準コマンドのrectangle-mark-modeもあります。Rectanglesを参照してください。
CUAでは、kill、copy、yankコマンドに1桁の数値プレフィックスを指定することで、テキストや矩形をレジスタ間で簡単にコピーできます。例えば、C-1 C-cは領域をレジスタ1にコピーし、C-2 C-vはレジスタ2の内容をヤンクします。
CUAモードにはグローバルマーク機能もあり、バッファ間でのテキストの移動やコピーが簡単に行えます。C-S-SPC を使用してグローバルマークのオン/オフを切り替えます。グローバルマークがオンの状態では、キルまたはコピーしたすべてのテキストが自動的にグローバルマークの位置に挿入され、入力したテキストは現在の位置ではなくグローバルマークの位置に挿入されます。
例えば、さまざまなバッファにある単語を特定のバッファの単語リストにコピーするには、対象バッファでグローバルマークを設定し、リストに入れたい各単語に移動してマークを付け(例:S-M-f)、C-cまたはM-wでリストにコピーし、RETを押して対象リストの単語の後に改行を挿入します。