
私は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 のエイリアスを使用して、プライマリ選択とクリップボード選択の両方を使用できます。