プライマリ選択とクリップボード バッファの違いは何ですか?

プライマリ選択とクリップボード バッファの違いは何ですか?

私はWebkitブラウザの世界で調整中ですリナックスそして私は「一次選考" そして "クリップボードの選択またはバッファ" よく。

  • それらが何であり、どのような違いがあるのか​​理解したいです。
  • ドラッグ アンド ドロップによる貼り付けはどこに当てはまりますか?
  • xclipこの件におけるの仕事は正確には何でしょうか?

答え1

彼らは選択原子、 またはX原子

クライアント間通信規約マニュアルX 州の場合:

選択項目は任意の数だけ存在でき、それぞれがアトムで名前が付けられます。ただし、クライアント間の規則に準拠するには、クライアントは次の 3 つの選択項目のみを処理する必要があります。

  • 主要な
  • セカンダリー
  • クリップボード

要するに:

  • 主要な選択は、例えば端末でテキストを選択し、マウスの中ボタンを押して貼り付けるときによく使用されます。選択されたテキストはプライマリクリップボードにあります何もなしで明示的なコピーアクションが実行されます。Quick-Copy は適切な名前です。(端末エミュレータに限定されませんが、例として)
  • クリップボード主に以下に関連して使用されるMS Windowsスタイルクリップボード操作。選択+コピー。データはバッファ

詳細はこちらをご覧ください。

PRIMARYのサポートは2008年にWebKitに追加された

xclipは、X 選択 (クリップボード) 用のコマンド ライン インターフェイス (ツール) であり、従来はプライマリ クリップボードにデータを追加します。オプションで、-clipboardいずれかの引数を指定してどちらを使用するかを選択できます。


訂正: ドラッグアンドドロップはXdnd。Wikipediaにも記載がありますスペック。 それは使用していますXdnd選択PRIMARY に干渉してはなりません。

このプロトコルは少なくとも Qt と GTK によって実装されています。

答え2

ちなみに、Debian (Kali) では、さまざまな選択がさまざまな「貼り付けオプション」にどのように対応するかは次のとおりです。

echo primary | xclip -sel p
echo secondary | xclip -sel s
echo clipboard | xclip -sel c

# Ctrl + Shift + v: clipboard
# Middle click: primary
# Paste selection: (Shift + Insert): primary

# with the -o option, xclip outputs the specified "selection"
# to stdout:

xclip -o -sel p
# stdout output: "primary"

xclip -o -sel s
# stdout output: "secondary"

xclip -o -sel c
# stdout output: "clipboard"

私の場合は、VMWare VM でこれを実行しました。ホスト OS が使用/参照/受信する選択がプライマリです。

複数選択を使用しない場合は、次のように xclip のエイリアスを使用して、プライマリ選択とクリップボード選択の両方を使用できます。

xクリップ

関連情報