Краткий ответ: вы не можете.
Когда вы нажимаете Ctrl+j, вы получаете последовательность событий:
- "Клавиша Ctrl нажата"
- «Клавиша J нажата (удерживается Ctrl)»
- «Клавиша J отпущена (удерживается Ctrl)»
- Msgstr "Клавиша Ctrl отпущена".
С помощью таких инструментов, как xmodmap, вы можете изменить, какая физическая клавиша соответствует "Ctrl" и "J" (строго: какие клавиши сопоставлены с какой клавишей), но вы не можете влиять только на комбинацию.
Что вы могли бы сделать, это попытаться перехватить нажатия клавиш и поочередно излучать других; в этом случае:
- "Ctrl down" - пройти через
- «J down (удерживая Ctrl)» - заменить на «K down (удерживая Ctrl)»
- «J up (удерживая Ctrl)» - заменить на «K up (удерживая Ctrl)»
- "Ctrl up" - пройти.
Я понимаю, что есть по крайней мере один набор инструментов (xbindkeys
и xmacro
), который должен позволить вам сделать это, но я сам не пробовал их, и изучение того, как это сделать, может оставить вас без возможности ввести "J", так что делайте это осторожно (и убедитесь, что вы можете перезагрузиться в состояние по умолчанию, пока не будете удовлетворены результатом). Я нашел описание инструмента здесь.