1

Я пытаюсь переназначить кучу своих ключей, и у меня проблемы. В настоящее время я пытаюсь использовать xmodmap, но не удается. Может быть, есть лучший способ?

Может кто-нибудь объяснить, как мне лучше всего переназначить Ctrl- j на клавиатуре, чтобы получить Ctrl- c?

Это не так просто, как просто сделать j = c. Я хочу, чтобы это произошло только тогда, когда я удерживаю Ctrl.

2 ответа2

1

Краткий ответ: вы не можете.

Когда вы нажимаете Ctrl+j, вы получаете последовательность событий:

  1. "Клавиша Ctrl нажата"
  2. «Клавиша J нажата (удерживается Ctrl)»
  3. «Клавиша J отпущена (удерживается Ctrl)»
  4. Msgstr "Клавиша Ctrl отпущена".

С помощью таких инструментов, как xmodmap, вы можете изменить, какая физическая клавиша соответствует "Ctrl" и "J" (строго: какие клавиши сопоставлены с какой клавишей), но вы не можете влиять только на комбинацию.

Что вы могли бы сделать, это попытаться перехватить нажатия клавиш и поочередно излучать других; в этом случае:

  1. "Ctrl down" - пройти через
  2. «J down (удерживая Ctrl)» - заменить на «K down (удерживая Ctrl)»
  3. «J up (удерживая Ctrl)» - заменить на «K up (удерживая Ctrl)»
  4. "Ctrl up" - пройти.

Я понимаю, что есть по крайней мере один набор инструментов (xbindkeys и xmacro), который должен позволить вам сделать это, но я сам не пробовал их, и изучение того, как это сделать, может оставить вас без возможности ввести "J", так что делайте это осторожно (и убедитесь, что вы можете перезагрузиться в состояние по умолчанию, пока не будете удовлетворены результатом). Я нашел описание инструмента здесь.

-1

Для этого есть инструмент под названием горячие клавиши, который можно найти в репозиториях Ubuntu.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .