Как я могу отключить Ctrl + Q для всех приложений (для всей системы)?

50

Многие приложения , такие как Firefox, Chrome и т.д., закрываются , когда я случайно нажать Ctrl+ Qвместо Ctrl+ Wиз - за близости Qи Wклавиш на клавиатуре. Есть ли способ, которым этот ярлык можно удалить или сбросить в масштабе всей системы?

Хаджа Минхаджуддин
источник

Ответы:

75

Лучший способ - отключить настройку клавиатуры в вашем конкретном приложении. Для Firefox есть расширение keyconfig . Это позволяет вам изменять настройки клавиатуры.

Если вы хотите отключить Ctrl+ Qдля всей вашей системы, я бы предложил сделать новую настройку:

  1. Зайдите в Система -> Настройки -> Настройки клавиатуры
  2. Нажмите Добавить
  3. Дайте ему имя, похожее на ложную настройку, и введите в /bin/falseкачестве команды. Примените свои изменения.
  4. Нажмите « Отключено » и нажмите Ctrl+ Q.

Теперь у вас должна быть новая запись с вашим приложенным именем и настройкой клавиатуры. Каждый раз, когда вы нажимаете Ctrl+, Qваша система будет запускать команду, /bin/falseкоторая в основном ничего не делает. Так что это обходной путь для отключения настройки.

QBi
источник
Потрясающий ответ, а как вы сделали стилизованные сочетания клавиш! :)
jathanism
2
@jathanism: используйте kbdтег html.
Ларс Хаугсет
4
Когда вы хотите нажать Ctrl-Qокно закроется. Вы никогда не можете назначить этот ключ, используя этот метод
Anwar
3
@AnwarShah - я только что попробовал это решение, и оно сработало для меня.
Сэм Кинг,
Я использую GNOME Shell 3.20.2 на Archlinux, и это сработало для меня.
аааааа
5

Вероятно, вставив ярлык в меню «Система» -> «Настройки» -> «Сочетания клавиш» и «отключив», он должен добиться цели.

mariachris
источник
6
Вместо того, чтобы просто печатать, сделайте небольшое исследование, если вы не уверены на 100%. Это стоило бы вам 2 секунды, чтобы найти, что это не там.
LassePoulsen
1
Ну, если вы добавите это, не так ли? Возможно я не выразил себя правильно. Но , видимо, есть это легко исправить , так как он работал для меня.
mariachris
Может быть, нет, это все еще не очень хороший способ сделать это ... Таким образом, вы никогда не сможете использовать Ctrl + W для любой вещи! Например, в bash Ctrl + W означает удаление слова в обратном направлении.
LassePoulsen
Это работает, и это именно то, о чем просили. @LassePoulsen, почему CTRL + W должен зависеть от этого?
Мурмель
3

Вы можете перейти в System-> Preferences-> Keyboard Shortcuts и назначить эту комбинацию неиспользованному действию. Например, я назначил CTRL + Q, чтобы переключиться на рабочую область 12 (Нет, у меня нет 12 рабочих областей).

В результате этот общесистемный параметр переопределяет одно приложение, и CTRL + Q больше не закрывает firefox (вероятно, комбо никогда не достигнет Firefox). Это просто ничего не делает.

Хавьер Ривера
источник
Довольно приятное и простое исправление, но я рекомендую использовать расширение для браузера. Использование системных настроек для переопределения Ctrl + Q в масштабе всей системы приведет к тому, что некоторые приложения не смогут использовать этот ярлык - например, вы не сможете использовать Ctrl + Q в IntelliJ IDEA для отображения всплывающего окна с документацией.
falconepl
Ну, вопрос в том, чтобы отключить это комбинированное общесистемное, а не приложение для каждого приложения;).
Хавьер Ривера
И вот почему вы получили +1 от меня ...;)
falconepl
3

Если Ctrl+ Qзакрывает окно настроек клавиатуры, как это было для меня, установите для ярлыка другое значение, закройте окно и подождите, пока где-нибудь не появится обновленный ярлык ~/.gconf/desktop/gnome/keybindings/*. Откройте этот файл и отредактируйте stringvalueкоманду для чтения <Primary>q. Затем перезагрузите компьютер. Это сработало для меня, в отличие от принятого ответа.

пушистый
источник
Даже это не сработало для меня. Я попробовал следующее: <? Xml version = "1.0"?> <Gconf> <entry name = "action" mtime = "1369776357" type = "string"> <stringvalue> / bin / false </ stringvalue> </ entry > <entry name = "name" mtime = "1369776357" type = "string"> <stringvalue> dummy2 </ stringvalue> </ entry> <entry name = "binding" mtime = "1369776299" type = "string"> < stringvalue> & lt; Primary & gt; q </ stringvalue> </ entry> </ gconf>
vishvAs vAsuki
1
Мне пришлось перезапустить сеанс gnome, но это сработало, спасибо!
vishvAs vAsuki
2

Вот версия командной строки уже поставленной версии GUI. В некоторых системах Ctrl + Q закрывает окно ввода акселератора, не устанавливая ярлык, поэтому это может быть необходимо:

gconftool-2 --type string --set /desktop/gnome/keybindings/inhibit_ctrl_Q/name "Inhibit Ctrl+Q"
gconftool-2 --type string --set /desktop/gnome/keybindings/inhibit_ctrl_Q/action /bin/false
gconftool-2 --type string --set /desktop/gnome/keybindings/inhibit_ctrl_Q/binding "<Primary>q"

Обратите внимание, что это решение для gnome-2 / Unity. Подобное решение должно быть возможно с gsettings для gnome-3.

fuzzyBSc
источник
Кажется, что эти настройки, хотя и сохраняются после перезапуска, не обеспечивают ожидаемого поведения (Ubuntu 14.04). Кроме того, после применения, использование сочетания клавиш Ctrl + Q с сфокусированным окном Nautilus делает его зависшим / не отвечающим.
falconepl
1

В Linux с Firefox Quantum в настоящее время существует ошибка, которая не позволяет расширениям и явной конфигурации изменять встроенные ярлыки, такие как ctrl-Q. Обходной путь - заблокировать его на системном уровне, например, установив скрипт из https://github.com/sasawat/firefox-ctrl-q-workaround и назначив его как действие ctrl-Q в качестве глобального ярлыка.

JanKanis
источник
По состоянию на середину 2018 года, это должен быть правильный ответ.
bytebuster
0

Для меня отключение Ctrl+Qярлыка для всей системы не является идеальным решением, потому что оно предотвращает уведомление приложений, кроме Firefox, Chrome и т. Д., Когда вы используете этот ярлык - например, IntelliJ IDEA использует Ctrl+Qв качестве привязки по умолчанию для отображения всплывающей быстрой документации. вверх.

Если вы ищете решение только для Firefox, я настоятельно рекомендую отключить плагин ярлыков Ctrl-Q . На мой взгляд, это лучший вариант, чем keyconfig, упомянутый @qbi, потому что его источник доступен на GitHub , тогда как keyconfig доступен только в двоичном виде.

falconepl
источник
0

В настоящее время я могу создать новый ярлык в «Системные настройки»> «Клавиатура»> «Ярлыки». Если ярлык был случайно нажат, мы получаем информационное сообщение.

  • Название: Выйти Профилактика
  • Команда: notify-send 'Dear idiot' "Don't press ctrl-Q"
  • Клавиши быстрого доступа: ctrl-q

Однако это отключает всю систему команд, что может быть приемлемым компромиссом в зависимости от вашего варианта использования.


Проверено в:

  • Ubuntu 16.04.
Даниил
источник