マウスの中央ボタンを使って貼り付けるのと Shift+In を使って貼り付けるのはどう違いますか?

マウスの中央ボタンを使って貼り付けるのと Shift+In を使って貼り付けるのはどう違いますか?

マウスの中央ボタンを押すと、強調表示されたテキストが貼り付けられます。

Shift+Insもテキストを貼り付けるのに、たまにマウスボタンを中央クリックして貼り付けるのとは違う内容を貼り付ける場合があります。

Shiftマウスの中央のボタンを使って貼り付けと貼り付けの違いは何ですかInsShift+はIns+と同じバッファにアクセスしますか?CtrlV

(私はLinux Mintディストリビューションを使用しています。違いがあると思います。)

答え1

SHIFT+INSクリップボードの内容をご覧のように貼り付けてください。ここ。同様ですCTRL+V(グラフィック端末では機能しないことを除いて、マウスの中央ボタンをクリックする方法をCTRL+V使用する必要があります)。SHIFT+INS

テキストフラグメントを選択すると、上記のバッファとはまったく異なるバッファ(それぞれ別のクリップボード)にロードされ、Xorgなしでttyでマウスの中央ボタンを使用して使用できます。

Ryranは次のように書きました。highlight + middle clickxorgの問題ではありません。多くのディストリビューションは、仮想コンソール(tty)でもすぐにサポートします。 (たとえば、RedHat / Fedoraは強調表示と貼り付けの間にgpm必要です。名前付きパッケージ+サービスhighlight + middle click

まとめる:Xorgには2つの異なるクリップボードがあります。 1つはキーボードで操作でき、もう1つはマウスで操作できます。

答え2

あなたが尋ねた二つすべてではありませんが、ほとんどのLinuxシステムにはさまざまな種類のテキスト選択とデータ交換があります。 Wayland(xorgの完全な代替)の開発中に中間キーペースト(「デフォルトオプション」と呼ばれる)を維持する問題が完全に議論されたため、これは重要になりました。チームが予備選挙を維持するかどうかを議論し、詳細は保留中で、これが私が見た主題の最良の背景であることがわかりました。ここ。このStack Exchangeの投稿がランダムなURLより長く続く場合に備えて、以下の関連する背景情報をコピーしました(わかっています。そうではありません!)。

Xには、アプリケーションがランダムに選択してデータを交換できる一般的な選択メカニズムがあります。 DNDとクリップボードの両方に使用できます。歴史的に、Xで複数のクリップボードの意図された意味について少し混乱がありました。http://www.freedesktop.org/wiki/Specifications/clipboards-extension-spec/X でのやり方についてある程度一般的な合意がなされた。

  • CLIPBOARDの選択は通常、Ctrl-C / Ctrl-Vにバインドされているユーザーの明示的なコピー - 貼り付け操作に対応します。
  • PRIMARY選択は常にフォーカスされたアプリケーションで現在選択されているテキスト(または他のデータ)に対応し、マウスの中央ボタンをクリックするとPRIMARY選択をすべてのコンテキスト(通常はテキスト項目またはエディタ)に貼り付けることができます。

以下は、すでに完了した(そしてうまく機能している)Waylandの再実装の初期選択に関する議論と詳細です。

要約:マウスの中央ボタンをクリックすると、「メイン選択」バッファの内容が貼り付けられていることがわかります。このバッファは強調表示されたテキストで埋められ、最近Waylandで再実装され、xorgなどのクリップボードシステムとは異なります。

答え3

私のLinuxコンピュータでは、Shift+ pasteはIns+と同じです。マウスの選択と中央クリックは別のクリップボードです。CtrlV

答え4

[@ops この「最小評判50」というのが本当に迷惑ですね。私がいなければならない場所以外の場所で答えなければなりません! ]

@eoinoc

Xorgで単にテキストを強調表示した後は、そのテキストを貼り付けることができるキーボードショートカットはありません。そうですか?

"xsel" CLIツールを使用して、現在選択されているテキストの内容を取得できます:)

たとえば、私は特定のキーバインディングに添付した以下のスクリプトでこれを使用しています。これにより、すべてのアプリケーションで(選択した)テキストを「音声で読む」ことができます。

#!/usr/bin/env bash
FIFO=/tmp/test.wav
LANG=$(cat /tmp/CURRENT_LANG || echo "fr-FR") # "en-US"
SPEED="1.6"
MAX_VOL="130"
mkfifo "$FIFO"
xsel | sed 's/^[[:print:]]//g' | sed 's/[[:space:]][[:space:]]*/ /g' | sed '/^\s*$/d' | pico2wave -w /tmp/test.wav -l $LANG & mplayer -softvol -softvol-max $MAX_VOL -af scaletempo -speed $SPEED "$FIFO" # -volume 100 -af volume=30:0
\rm "$FIFO"

関連情報