Как программист, я гораздо чаще печатаю символы, чем цифры. Поэтому было бы неплохо, если бы строка чисел на клавиатуре производила символы по умолчанию.
Конечные результаты должны быть: 6будут производить ^
и Shift+ 6дадут 6
.
Я некоторое время пытался переключиться на Дворак, но сочетание крутой кривой обучения и приближающегося срока не делает это привлекательным решением.
В идеале я бы хотел это сделать и для Windows, но давайте сосредоточимся на Debian, так как это мой основной компьютер разработчика.
Из того, что я нахожу в Интернете, функция «блокировка сдвига», активируемая быстрым нажатием кнопки «Shift», делает именно это в Windows, но я не смог найти никакой ссылки * nix.
Редактировать: в идеале решение не должно мешать ненулевым ключам строк, например, [но если это произойдет, я могу жить с ним (как {
это чаще встречается в C, чем [
).
Из цепочки Реверсивная роль нажатия клавиши shift + number приходит этот файл xmodmap:
См. Ссылку выше для получения дополнительной информации об использовании этого файла.
источник
Вы можете использовать либо
dumpkeys
иloadkeys
(для консоли), либоxmodmap
(для X), чтобы переопределить функцию данной клавиши клавиатуры.xev
может рассказать вам, как X видит конкретный ключ ввода.Я рекомендую сначала распечатать полный набор выражений клавиш; Вполне возможно, что ваша система настроена немного по-другому, и в этом случае вышеприведенное не будет точно соответствовать. Для этого достаточно сделать
xmodmap -pke
(для печати таблицы раскладок в виде выражений).В качестве примера, чтобы переназначить 1к
!
и Shift+ 1к1
в X, мы первое использование Ксев , чтобы узнать, что 1это скан 10 (в моем случае, убедитесь , что для проверки). Чтобы переназначить ключ, чтобы инвертировать его сдвинутую функцию:Чтобы восстановить нормальную функцию (это соответствует тому, что напечатано
xmodmap -pke
):Изменения вступают в силу немедленно и влияют как минимум на весь сеанс X (они не являются локальными для приложения, запускающего xmodmap).
Если у вас есть набор команд xmodmap, которые настраивают клавиатуру так, как вы этого хотите, сохраните их в ~ / .xmodmaprc, а затем добавьте в ~ / .xsessionrc (создавая ее, если она не существует):
Часть, которую вы хотите добавить в .xmodmaprc, это просто
keycode XX = yyy ...
часть команды командной строки (то есть аргумент для-e
переключателя).источник
Для BSD OS посмотрите на эту опцию Редактор раскладки клавиатуры или Создание пользовательских раскладок клавиатуры для X11 с использованием XKB
Для Windows проверьте Microsoft Keyboard Layout Creator 1.4
Это, кажется, лучшие варианты, которые я нашел. Не говоря, что они единственные варианты.
источник