Есть ли способ отключить поведение вставки средней кнопки мыши, которое здесь по умолчанию в gnome?
У меня чувствительное колесо мыши, и всякий раз, когда я прокручиваю текст, иногда оно вставляет материал в текст случайным образом. Я теряю достаточно доверия, когда посылаю файл кому-то еще со случайными текстовыми фрагментами, наклеенными на него.
Я видел решение, которое заключается в сопоставлении средней кнопки мыши с несуществующей кнопкой мыши, но это подразумевает полное избавление от средней кнопки мыши (то есть отсутствие закрытия вкладок, автоматическое открытие ссылок на новую вкладку и т. Д.). , Я хотел бы, чтобы моя средняя кнопка мыши была активной, просто отключите вставку.
Это также происходит, когда я прокручиваю текст с помощью сенсорной панели (случайно ударил двумя пальцами, не двигаясь, бац.)
Так что проблема не будет решена только заменой новой мыши (на самом деле я считаю, что это происходит чаще с моей сенсорной панелью, чем с моей мышью).
Ответы:
Для решения проблемы, пожалуйста, просмотрите это руководство, которое я написал
Или, более прямо, вот патч для отключения функции «вставка средней кнопки мыши» в GTK.
источник
--source-option=--auto-commit
опцию можно передатьdpkg-buildpackage
(что несколько удобнее, так как не нужно редактировать журнал изменений). Я обновил руководство, чтобы отразить это.sudo apt-get build-dep libgtk2.0-0
я попадаю в часть, я получаю ошибку сPicking 'gtk+2.0' as source package instead of 'libgtk2.0-0' E: Unable to find a source package for gtk+2.0
помощью?dpkg -l | grep libgtk
. Это, вероятно, что-то вроде libgtk-3-0. Я проверил мой патч для работы на ранних версиях GTK3; надеюсь, это все еще работает.Я использую gnome-tweak-tool для отключения вставки средней кнопки в Ubuntu 16.04.
Установить его
Запустите его, выполнив поиск «инструмент настройки» в установленных приложениях или просто введите
gnome-tweak-tool
в терминале.Выключи.
Вот и все.
Или используя только CLI
Проверено 16.04.
источник
Джаред Робинсон дал простое решение, которое работает на моей машине:
Запустите следующую команду:
Чтобы сохранить это поведение, отредактируйте ~ / .Xmodmap и добавьте
источник
Я понимаю, что это не совсем тот ответ, который вам нужен, но вы можете отключить его в Firefox (например, если вы не возражаете против этой функции в другом месте, но по-прежнему хотите, чтобы в Firefox был щелчок средней кнопкой мыши, чтобы открывать ссылки на новых вкладках)
В о: config, set
Не то, что вы спросили, но поскольку этот вопрос связан с несколькими местами, я надеюсь, что кто-то найдет этот ответ полезным.
источник
Tools/Options/LibreOffice/View/Mouse
изменив «Среднюю кнопку мыши» на предпочитаемую вами настройку.В настоящее время это невозможно - хотя, как вы упомянули, есть способы отключить кнопку MOUSE 3 - или переназначить ее - ни один из них не дошел до источника проблемы. Основной выбор X11.
Хотя это не решение, надеюсь, это объяснение прояснит ПОЧЕМУ. В Ubuntu работают два буфера обмена. Один из них, с которым все знакомы, буфер обмена freedesktop.org (captures Ctrl+ Ccommand) Второй - это менеджер буфера обмена, который работал еще до появления Ubuntu - X11. X-сервер (X11) управляет тремя другими буферами обмена: первичный выбор , вторичный выбор и буфер обмена, Когда вы выделяете текст указателем, он копируется в буфер в XServer, Primary Selection, и ожидает вставки с помощью кнопки Mouse 3. Два других были предназначены для использования другими приложениями в целях совместного использования общего буфера обмена между приложениями. В этом случае менеджер буфера обмена freedesktop.org в Ubuntu уже делает это за нас.
Из-за объема моих исследований я не могу найти способ отключить менеджер выбора X11. Нет флагов компиляции, приложений или значений конфигурации, которые могут отключить это. Существуют различные способы решения этой проблемы для каждого отдельного приложения (большинство из этих приложений - из командной строки), но ничего в глобальном масштабе.
Я понимаю, что это не идеальное решение - но, похоже, правда в этом вопросе. Единственное уместное решение, которое я мог бы найти, это на самом деле взломать, создать скрипт, который выполняет бесконечный цикл while, который просто заменяет основной выбор нулевым значением.
Первая установка
xsel
(инструмент для манипуляции с выбором X)sudo apt-get install xsel
Код выглядит следующим образом:
Если вы поместите это в скрипт и добавите его в свои скрипты запуска, это не должно быть проблемой.
источник
while(true)
не проблема, потому что цикл содержит,sleep 0.5
который освобождает половину секунды процессорного времени в каждой из итераций цикла. Из-за этого (и легкостиxsel
вызова команд, который включает в себя другую часть цикла) ресурсы ЦП, занятые циклом, будут чрезвычайно малы даже на самых медленных машинах с Ubuntu.Каким-то образом я оказался без каких-либо файлов xmodmap в моей установке Ubuntu, поэтому мне пришлось искать другой подход к этой проблеме.
Посмотрите на команду xinput .
который перечисляет информацию о вашей мыши. Он показывает, что у меня мышь «Оптическая мышь Dell Premium USB», а также у меня «Эмуляция кнопок мыши Macintosh». Вооружившись этой информацией, я могу
который дает мне список, который выглядит как
Вот полезные, необходимые знания. У моей мыши теоретически 18 кнопок. Действие каждой кнопки по умолчанию имеет то же имя, что и номер кнопки. Другими словами, кнопка 1 выполняет действие 1, кнопка 4 выполняет действие 4 и т. Д. Действие 0 означает «выключено».
Позиция в списке показывает функцию , назначенную эту кнопку. Так что, если моя карта кнопки читать
это означает, что кнопка 1 (позиция 1) выполняет действие 1 (обычная левая кнопка), кнопка 2 (позиция 2) выполняет действие 3 (средняя кнопка), а кнопка 3 (позиция 3) выполняет действие 2 (правая кнопка).
Чтобы сделать левую мышь, все, что вам нужно, это карта кнопок, которая запускается
Или, в вашем случае, похоже, что вы хотите, чтобы средняя кнопка делала то же самое, что и кнопка 1 (левая кнопка), поэтому ваша карта должна запуститься
Я бы сбросил сопоставления кнопок мыши так:
В вашем случае у вас может быть другое количество назначенных кнопок, и у вас уже есть определенная карта кнопок. Кроме того, у вашей мыши тоже другое имя. Во-первых, получите имя мыши. Затем используйте операцию get-button-map, чтобы найти вашу базовую карту кнопок. наконец, используйте опцию set-button-map , изменив кнопку 2, чтобы выполнить действие 1.
Это не постоянное изменение. Я добавил необходимый код в свой .bashrc, чтобы он выполнялся при каждом входе в систему или открытии терминала.
Надеюсь это поможет.
источник
get-button-map
На клавиатуре Lenovo возвращается с 22 кнопками для меня, но тот жеset-button-map <<name-or-id>> 1 0 3
подход работает для меняЯ предлагаю использовать один из них, который в основном работает для меня:
используя xbindkeys: при нажатии средней кнопки очищайте основной буфер обмена. По крайней мере, в моей системе это очищается до того, как происходит вставка. Подробности: создайте xbindkeys-config:
Вставьте следующую новую горячую клавишу:
Перезагрузите xbindkeys (например, killall xbindkeys; xbindkeys). Готово.
использование xdotool: очистить буфер обмена при изменении фокуса окна (должно работать с большинством оконных менеджеров). Детали: выполните следующую команду:
Обратите внимание, что с помощью этой команды вы все еще можете использовать основной буфер обмена в том же окне или нажать промежуточную мышь на другое окно ПЕРЕД фокусировкой (если у вас не активировано «фокус следует за мышью» или что-то еще).
источник
Наилучший способ, который я нашел до сих пор, - это использовать EasyStroke, который может глобально перехватывать нажатие средней кнопки и позволять вести себя как средняя кнопка только в определенных приложениях.
Вы можете добавить «группу» в EasyStroke для применения этого перехвата одновременно в нескольких приложениях. Я установил отключение среднего щелчка в некоторых моих текстовых редакторах, только в IDE и MATLAB, и работает так, как задумано.
Ссылка: http://ubuntuforums.org/showpost.php?p=11811126&postcount=25
Полное руководство по EasyStroke: http://sourceforge.net/apps/trac/easystroke/wiki/Documentation
источник
Такое поведение вставки средней кнопки мыши является функцией X-сервера (и gpm в текстовой консоли), и, насколько я знаю, X.org, по крайней мере, не может быть настроен для его отключения - все, что вы можете сделать, это изменить отображение из физических кнопок мыши, как другие уже предложили.
Скорее всего, вы можете настроить сенсорную панель так, чтобы избежать нежелательных средних щелчков, см. Gpointing-device-settings (по умолчанию не установлена) или справочную страницу synaptics, если вы предпочитаете использовать свой редактор для конфигурации.
источник
Вот простейшее решение, которое я нашел, чтобы сохранить функциональность среднего щелчка без вставки.
Сначала установите sxhkd и xsel .
Затем настройте ./.config/.sxhkd/sxhkdrc примерно так
И это в основном все.
Теперь запустите sxhkd (или настройте его для запуска при запуске). Теперь средняя мышь больше не будет вставлять что-либо, но в остальном будет функционировать как обычно. (Пока вы используете только ctrl + c и ctrl + x для копирования, то есть, если вы копируете объекты мышью, его можно вставить один раз, прежде чем он вернется в нормальное состояние.)
источник
У меня была такая же проблема несколько месяцев назад, и я решил ее, поменяв мышь! Но, как и вы, я был разочарован тем, что простая проблема с отображением кнопок не может быть элегантно решена программным исправлением. К счастью, у меня была проблема на моем рабочем компьютере, и у моего работодателя есть множество запасных контроллеров мыши. Это было бесплатное исправление!
Я думаю, что правильная аппаратная реализация мыши не должна посылать случайные средние щелчки при прокрутке. Недавно я обнаружил, что это поведение раздражает даже при использовании Windows!
Теперь, когда я исправил аппаратную ошибку с помощью правильного аппаратного решения (поменяю мышь), я даже начал склонность к поведению "вставка по среднему щелчку" !!
Счастливого Linux!
Sincerly,
источник
ссылка ниже исправила проблему для меня.
https://wiki.ubuntu.com/X/Config/Input#Example:_Disabling_middle-mouse_button_paste_on_a_scrollwheel_mouse
На странице, на которую ссылается указанная выше ссылка, есть раздел, в котором описано, как отключить вставку средней мыши на колесе прокрутки, выполнив несколько команд, которые пользователь может получить, сопоставляя кнопки мыши, а также может изменить отображение. как объяснено на странице, я отключил среднюю кнопку, выполнив команду:
источник
SW: Ubuntu 14.04, с отступлением Gnome. HW: У меня есть ноутбук, и поэтому средняя кнопка - это мышь на ноутбуке. Решение: перейдите в Ubuntu SW center и загрузите Unity Tweak Tool. Запустите Tweak Tool. Под настройками мыши он имеет переключатель для включения / выключения вставки среднего щелчка. Хорошего дня.
источник
Я попробовал трюк xinput-redirection, изменив центральную «кнопку» мыши (на самом деле колесо), чтобы она действовала так же, как левая кнопка мыши. Он по-прежнему работает как колесо и (по-видимому) прекратил вставлять вещи в случайные места в середине моего исходного кода, когда я прокручиваю мимо.
В моем случае команда была
но YMMV по модели мыши.
источник
Я могу дать вам частичный ответ, если вы используете lenovo X ... с сенсорной панелью / тачпадом. Существует «известная» ошибка с кнопками мыши synaptics. Если вы попробуете USB-мышь и у вас не возникнет проблем, но с сенсорной панелью / сенсорной мышью (встроенной в клавиатуру) у вас есть случайные ответы, которые могут удалить текстовые фрагменты при вводе текста, возможно, это ошибка, о которой я говорю ,
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1506817
Если это соответствует вашей ситуации, добавьте ваше имя в список людей, которые идентифицировали эту ошибку, в этом отчете об ошибке. Возможно, если многие из нас сообщат об этом, это будет исправлено.
источник
Используя то, что я узнал в постах выше, этот bash one-liner отлично работает для меня ...
источник
xinput list | grep 'Mouse' | grep -o 'id=[0-9]*' | grep -o '[0-9]*' | xargs -i xinput set-button-map "{}" 1 0 3
Вы можете попробовать эмулировать двухкнопочную мышь. С помощью двухкнопочной мыши вы вставляете нажатием обеих кнопок мыши одновременно (вместо колеса прокрутки).
Установите gpointing-device-settings:
http://live.gnome.org/GPointingDeviceSettings
С другой стороны, если вы не хотите устанавливать gpointing-device-settings и вас не беспокоят параметры командной строки, см. Https://wiki.ubuntu.com/X/Config/Input. На этой вики-странице есть несколько командных строк. / Параметры конфигурации, выберите тот, который вы предпочитаете.
источник
Для приложений Gnome вы можете использовать
gnome-tweaks
(новое имяgnome-tweak-tool
пакета) на вкладке «Клавиатура и мышь» параметр «Вставка среднего щелчка» или редактирование непосредственно параметра Gnome org.gnome.desktop.interface / gtk-enable-primary-paste.Для приложений KDE кажется, что есть эквивалентное решение .
Для всего X (включая приложения, не относящиеся к Gnome) вы можете установить XMousePasteBlock, который затем должен быть запущен (пользователем достаточно, рут не требуется), чтобы работать. Это полностью отключает вставку среднего щелчка, не отключая другие функции среднего щелчка.
источник
Единственный ответ, который работал для меня, был дан на https://unix.stackexchange.com/a/277488/288916 Radivarig (все кредиты идут к нему). Обратите внимание, что мне нужно было сделать одно изменение, чтобы оно работало:
Установите xbindkeys:
Создайте файл конфигурации для xbindkeys
~/.xbindkeysrc
с текстом:Загрузите файл конфигурации, используя
Добавьте эту строку в ~. / Bashrc, чтобы xbindkeys всегда загружался при запуске.
Это то, что работает для меня, но Radivarig предлагает вместо этого использовать линию
Это последнее не работает для меня, но если версия не работает, я предлагаю попробовать другой.
После долгого поиска это единственное решение, которое я нашел подходящим для меня, которое полностью отключает среднюю кнопку вставки мыши без необходимости полного отключения средней кнопки мыши.
Обратите внимание, что для существующих ответов с голосованием либо они не отвечают на вопрос, а вместо этого рассказывают, как полностью отключить среднюю кнопку мыши, либо они предлагают решение, которое работает только в нескольких программах (настройка tweak только в терминале gedit и gnome. и немногие другие) или они просто говорят, что это невозможно.
ответ spawn имеет схожий дух и может также сработать, я не видел его, пока не нашел это решение.
источник
Это хороший вопрос, на который у меня нет ответа (пока). Быстрый и грязный обходной путь состоит в том, чтобы переназначить его НЕ на 0, а на 1. Таким образом, он поворачивает средний щелчок левой кнопкой мыши и не влияет на ваш скроллер ... Это лучшее, что я могу придумать ,
Примечание: эта информация пришла с форумов Ubuntu , а не из моего собственного noggin! :)
источник
Это больше, чем просто функция gnome, я думаю, что она работает почти везде, она работает и в консоли, и я думаю, что она работала даже в моем "Linux from Scratch".
Так что это действительно базовая функция, возможно, даже где-то в ядре.
КСТАТИ: Это действительно полезно, и это не обычная вставка, как Ctrl + V, все, что отмечено курсором, помещается во второе хранилище и с помощью среднего щелчка может вставить то, что вы отметили последним.
источник
ты проверил gpm? Более подробная информация на http://manpages.ubuntu.com/manpages/lucid/man8/gpm.8.html . Доступно через
sudo aptitude install gpm
на lucid. Однако я не вижу программы disable-paste в пакете ubuntu, возможно, стоит попробовать опцию -A.источник