Xウィンドウシステム、PGTK、Haikuではプライマリー選択(primary selection)に、Xアプリケーションで最後に選択されたテキスト(通常はマウスのドラッグで選択される)が存在します。一般的に、このテキストは他のXアプリケーションにmouse-2をクリックして挿入することができます。プライマリー選択はクリップボードとは別のものです。プライマリー選択の内容は、より脆弱です。なぜなら、クリップボードは明示的なカットまたはコピーだけにより上書きされるのにくらべ、プライマリー選択はマウスでテキストが選択される度に上書きされるからです。
Xの下では、リージョンがアクティブ(マークとリージョンを参照してください)になればいつでも、リージョンのテキストはプライマリー選択に保存されます。これは、そのリージョンの選択がマウスでドラッグやクリック(編集のためのマウスコマンドを参照してください)されたのか、キーボードコマンド(たとえばC-SPCをタイプしてからポイントを移動したなど。マークのセットを参照してください)なのかによらず適用されます。
変数select-active-regions
をonly
に変更すると、Emacsは一時的にアクティブになったリージョン(たとえばマウスやシフト選択など。シフト選択を参照してください)だけをプライマリー選択に保存します。select-active-regions
をnil
に変更すると、Emacsはアクティブなリージョンをプライマリー選択に保存しません。
プライマリー選択をEmacsのバッファーに挿入するには、挿入したい場所でmouse-2
(mouse-yank-primary
)をクリックします。編集のためのマウスコマンドを参照してください。select-enable-primary
(クリップボードを使うを参照)がセットされていれば、そのテキストを挿入するためにEmacsの通常のyankコマンド(C-y)の使用できます。
たとえ他のプログラムによってテキストが選択された後でも、典型的なXの挙動に反そてEmacsはリージョンをアクティブに保ちます。他のプログラムがプライマリー選択にデータを置いた後は、Emacsにリージョンを非アクティブにさせるには、グローバルなマイナーモードlost-selection-mode
を有効にしてください。
MS-Windowsはプライマリー選択を提供しませんが、Emacsは単一のEmacsセッション内で選択されたテキストを内部に格納することにより、これをエミュレートします。したがってWindowsでも、プライマリー選択に関するすべての機能とコマンドは、Xと同様に機能します。しかしこれは同一セッションにおけるカットやペーストなどの場合で、Emacsセッションと他のアプリケーション間では機能しません。