
Ubuntu日本語フォーラム

ログインしていません。
Ubuntu版Firefoxについての質問なのですが、
「about:config」の"middlemouse.paste"をtrueにした状態で、ロケーションバーやWebページ等の文字列を選択状態にして、
入力フォームやロケーションバー上などでマウスをホイールクリックすると、選択状態の部分の文字がペーストされるのですが、
これは選択した文字列がFirefox内のクリップボードに自動的にコピーされているということなのでしょうか?
(Ubuntu上のクリップボードにはコピーされていないので、Firefox内で処理されているのかなと思うのですが)
※ちなみに、ホイールクリックではなく、Ctrl+Vや、コンテキストメニューの『貼り付け』でペーストした場合は、
Ubuntu上のクリップボードの文字がペーストされます。
Mac版のFirefoxは使ったことがないので判りませんが、Windows版のFirefoxでは文字を選択状態にしていても、
入力フォームやロケーションバー上などでマウスのホイールクリックをした場合、選択状態の文字ではなく、
Windows上のクリップボードにコピーされている文字がペーストされる仕様だったと思います。
Ubuntu版FirefoxもWindows版のFirefoxと同じような挙動にできないでしょうか?
---------------------
Ubuntu 10.04LTS
Firefox 3.6.14
オフライン
あちこち探してみたら、以下の記事(Q&Aのやり取り)たどり着きました。
//superuser.com/questions/68170/how-can-i-merge-the-gnome-clipboard-and-the-x-selection
firefox固有ということではなく、もともと両方(X-Windowの機能で1つのアプリに閉じた単純なテキストバッファと、gnomeやKDEで利用する多機能でアプリケーション間で利用可能なクリップボードマネージャ)ある ということのようです。
同期する場合は、上記のQ&Aでもかかれてますが、autocutsel のパッケージが適していそうです。
(autocutsel は、ubuntuのリポジトリにもありますので、ソフトウェアセンターからインストール可能かと思います。)
オフライン
上品なページでは有りませんが,-- 最初は話がかみ合っていないのがおもしろい --
結果発表 - コピーバッファ - コッソリアンケートβ
の 16 が X のセレクションの簡潔な説明になっています.
weyk さん による投稿:
X-Windowの機能で1つのアプリに閉じた単純なテキストバッファ
これが X のセレクションのことを指すならば,1つのアプリケーションで閉じてはいません.
X のセレクションは複数の X クライアント間でのデータ転送手段です.
ただしセレクションのオーナー(コピー元)が,イベントループの中で SelectionRequest イベントを適切に処理おらず,
コピーが行われない場合もあるでしょう.
Xlib Programming Manual: SelectionRequest Events
オフライン
weyk様、早速の返信ありがとうございます。
教えて頂いたautocutselをソフトウェアセンターよりインストールし、PCを再起動して試してみたのですが、
結果は同じで、ホイールクリックするとクリップボードの文字ではなく、選択状態の文字がペーストされます。
autocutselはインストールした後に何か設定をしなければいけないのかな…?とも思ったりするんですが、
(ソフトウェアセンターでの詳細情報にターミナルのような画像が載っているので)
説明文が英語(な上に説明文コピーできなのでgoogle翻訳とかも使えない…)為、いまいち使い方が解らないのですが
autocutselはインストール後、何か設定が必要なのでしょうか?
(X-Window というのは、WindowsでいうExplorerみたいなものなのでしょうか…?)
オフライン
これが X のセレクションのことを指すならば,1つのアプリケーションで閉じてはいません.
X のセレクションは複数の X クライアント間でのデータ転送手段です.
すいません、指摘のとおりです。なにか、ものすごく単純な機能と勘違いしてました。
(そもそも、1アプリに閉じるなら、X-Windowが管理する必要自体がないですよね・・・)
オフライン
まず補足:簡潔な説明として紹介した参照先 16 の
まずコピーしたい文字列をドラッグして選択するわけだが、選択が終わった瞬間に
クリップボードみたいなところ(コピーバッファ)にそれが入る。
の部分は,良く読めば間違っていました.
中クリック(=ホイールクリック)のタイミングでイベントが発生し,セレクションオーナーがその要求に応じてデータを X に送ります.
つまり,中クリックしたときに,どのクライアントもセレクションを保有していなければ X セレクション経由のコピーは起こりません.
ここから本題:
autocutsel の同期の方向は
gnome のクリップボード ← X セレクション
ですが,foobar さんの望みはきっと
gnome のクリップボード → X セレクション
の方向の同期ですよね.
補足で述べたセレクションオーナーの動作から考えると,その方向で同期するユーティリティの存在はちょっと想像がつきません.
Weyk さんご紹介の linux - How can I merge the gnome clipboard and the X selection? - Super User での最後の投稿者も,
X の再コンパイルがいるのではと書いています.
X のセレクション機能を無効にする方法は多くのユーザが求めているようですが,
[ubuntu] Disable middle-click paste (selection buffer) - Ubuntu Forums
[SOLVED] Disable middle click paste (Page 1) / Applications & Desktop Environments / Arch Linux Forums
xorg - How do I disable middle mouse button click paste? - Ask Ubuntu - Stack Exchange
すべて「中クリックを無効にすることで我慢する」の結論になっているようです.
マウスボタンの拡張機能(xbindkeys+xvkbd) - Ubuntu Japanese Wiki を利用して 中クリック に Ctrl-V を割り当てるのはどうでしょう.
オフライン
失礼しました.firefox の挙動が問題なのでしたね.
einundzwanzighundertsechs による投稿:
中クリック に Ctrl-V を割り当てるのはどうでしょう.
は撤回します.
Clipboard.autocopy - MozillaZine Knowledge Base を false に設定するのはどうでしょう.
オフライン
einundzwanzighundertsechs様、度々のアドバイスありがとうございます。
お礼が遅くなってしまい申し訳ありません。
einundzwanzighundertsechs による投稿:
Clipboard.autocopy - MozillaZine Knowledge Base を false に設定するのはどうでしょう.
試しに about:config で、"Clipboard.autocopy"をfalseに変更してみたのですが、ホイールクリックをすると、やはり選択状態の文字がペーストされます。
最初は、「Linux版Firefox自体の仕様なのかな…?」「about:configや設定ファイルを弄れば変更できるのか?」と簡単に考えていたのですが、
X Window Systemの仕様(?)というか、そう簡単には修正できないような根深い部分の問題だったんですね…。
(…というか、X Window Systemというのが何なのかもイマイチ分かってなかったりするんですが…汗)
とりあえず、自分の手には負えそうにないので、Firefoxでペーストする際にはCtrl+Vやコンテキストメニューから貼り付けるようにします…(^_^;;
せっかくアドバイスして頂いたのに自分が無知なばかりに、あまり理解できなくて申し訳ないです。
weyk様、einundzwanzighundertsechs様、どうもありがとうございました。
オフライン
10.04の環境ですが、about:configで、"clipboard.autocopy"をfalseに変更して"Firefoxを再起動"してみたら、選択状態の文字でなく、クリップボードの文字がペーストされるようになりました。
どこの設定が異なるのかはわかりませんが、ご質問の回答としては"clipboard.autocopy"をfalseに変更でいいような気がします。
ただ、個人的には、むしろホイールクリックでの選択文字のコピーは便利な機能だと思いますし、デフォルトの機能をあまり弄るべきではないのでは?とも思っています。
オフライン
foobar さん による投稿:
最初は、「Linux版Firefox自体の仕様なのかな…?」「about:configや設定ファイルを弄れば変更できるのか?」と簡単に考えていたのですが、
X Window Systemの仕様(?)というか、そう簡単には修正できないような根深い部分の問題だったんですね…。
X クライアントが中クリックを処理する一般的な流れは,
a. セレクションオーナーは自分自身 → クライアント内部で処理
b. セレクションオーナーは別のクライアント → X サーバを通して,オーナーにセレクションの内容を送るように要求
です.
この流れを「全 X クライアントについて変更したい」と言うならば,#6 で述べたようにかなり困難です.
;; 話を勝手に大きくしてしまった ;;
「特定の X クライアントについて変更したい」と言うならば,
a. はそのクライアント内部の処理で完結しているし,
b. のケースでも X サーバーに要求を送らず,gnome のクリップボードからデータを取り出す処理に変更すれば良いわけですから,
件の X クライアントがそのような「中クリック処理を変更する手段」を提供しているならば foobar さんが最初考えられていた様に簡単です.
firefox では clipboard.autocopy がその「手段」のはずなのですけど…
オフライン
よく考えたら autocutsel は firefox での clipboard.autocopy = true と同じ効果を全体に適用することになるのでは?
#4 でインストールした autocutsel は削除しましたか?
clipboard.autocopy を false に設定した効果を autocutsel が打ち消してしまっているように思われます.
オフライン