(8つの回答)
2年前に閉鎖されました。
デスクトップマネージャーとしてFVWMでSlackware13.1(カーネル2.6)を使用しています。
過敏なマウスがマウスホイールでスクロールしているときに中ボタン(マウスホイール)のクリックを登録するコーディング時に、頻繁に問題が発生しました。
X11 / Xorg / Xfree86の組み込みクリップボードを使用してミドルクリックで貼り付けられないようにショートカットを変更する方法はありますか? +MiddleClickなどに再マッピングしたほうがいいと思います。
私はすでにフォーラムを検索し、XMODMAPを使用していくつかの提案を見つけましたが、これまでのところうまくいきませんでした。
お手数をおかけしますが、よろしくお願いいたします。
承認された回答:
X構成でButtonMappingオプションを変更できます:http://www.linuxquestions.org/questions/linux-newbie-8/disable-xorgs-highlight-to-copy-middle-click-to-paste-clipboard-647810/
オプション「ButtonMapping」「11345」
更新:スレッド内:https://askubuntu.com/questions/4507/how-do-i-disable-middle-mouse-button-click-paste
gtkへのパッチがリンクされ、貼り付けとして中央のボタンが無効になります:http://subversion.assembla.com/svn/slipstream/patches/gtk_disable_middle_mouse_button_paste.patch
さまざまなグラフィックライブラリ/アプリケーションのミドルボタンアクションの概要があります:http://os.livejournal.com/811721.html –したがって、XA_PRIMARYペーストとしてのミドルボタンアクションはXorg / Xserver自体にハードコーディングされていないと想定できます(検索後)ソースで1時間)
そして、これがQTの真ん中のボタンの処理である可能性があります:
qt / src / gui / text / qtextcontrol.cpp
void QTextControlPrivate::mouseReleaseEvent (...
...
} else if (button == Qt::MidButton
&& (interactionFlags & Qt::TextEditable)
&& QApplication::clipboard()->supportsSelection()) {
setCursorPosition(pos);
const QMimeData *md = QApplication::clipboard()->mimeData(QClipboard::Selection);
if (md)
q->insertFromMimeData(md);
lineeditについてもここにあります:qt / src / gui / widgets / qlineedit.cpp
void QLineEdit::mouseReleaseEvent(QMouseEvent* e)
...
} else if (!d->readOnly && e->button() == Qt::MidButton) {
d->deselect();
insert(QApplication::clipboard()->text(QClipboard::Selection));
qt3互換レイヤーの場合はここにあります:qt / src / qt3support / text / q3textedit.cpp
void Q3TextEdit::contentsMouseReleaseEvent(QMouseEvent * e)
...
else if (e->button() == Qt::MidButton && !isReadOnly()) {
// only do middle-click pasting on systems that have selections (ie. X11)
if (QApplication::clipboard()->supportsSelection()) {
したがって、QTソースをダウンロードし、ブランチの場合はこれにコメントして、貼り付けとしてのミッドボタンアクションを無効にすることができます。
QTとGTKにパッチを適用した後は、それらをコンパイルして、代わりにシステムのgtkとQTをインストールする必要があります(または、/ usr / local / libなどのディレクトリに配置し、このディレクトリを/etc/ld.so.confに配置します)。次に、動的にリンクされたすべてのアプリケーションは、パッチが適用されたgtk / QT libを使用し、中央のボタンを押しても何も貼り付けません。
アプリケーションが静的にリンクされている場合は、パッチを適用した静的ライブラリを使用して再コンパイルするか、動的にリンクされた状態に再コンパイルする必要があります。
関連:Linux – GRUBでデフォルトのカーネルを設定しますか?より多くのグラフィックツールキットにパッチを適用する必要がある場合は、ツールキットの名前を言うだけで、中央のボタンを貼り付けとして処理するソースポイントを見つけようとします。