Как сделать ключ Caps Lock работать так же, как другой ключ Shift?
Здесь много вопросов о переназначении или при запуске пользовательской команды. Я просто хочу, чтобы он работал как другой клавиша Shift. Я не хочу, чтобы какие-либо другие ключи меняли то, что они делают, только это.
Клавиатура Layout / Caps Lock не влияет на поведение клавиш, я не понимаю, как переназначить его в CCSM.
Сейчас я использую английскую клавиатуру, но я научился печатать на американской клавиатуре, меньшая левая клавиша Shift - ДВИЖЕНИЕ МЕНЯ.
Вы можете попасть туда, адаптировав Как изменить ключ CapsLock для создания «a»? (например).
Удалите модификатор Lock (= Caps Lock) из ключа Caps Lock и объявите, что этот ключ отправляет Shift_L keysym.
remove Lock = Caps_Lock
keysym Caps_Lock = Shift_L
В качестве альтернативы вы можете удалить модификатор Lock и добавить модификатор Shift.
remove Lock = Caps_Lock
add Shift = Caps_Lock
В любом случае эти строки попадают в файл ~/.Xmodmap. Проверьте, загрузив его с помощью xmodmap ~/.Xmodmap; файл читается автоматически при входе в среду по умолчанию (или, по крайней мере, в дни Gnome).
Для 14.04
Однострочный:
xmodmap -e 'keycode 66=Shift_L'
Для 14.04 в непредвиденном случае 66 не является правильным кодом ключа, сначала запустите xev в консоли и нажмите CapsLock. Затем вы увидите что-то вроде:
KeyPress event, serial 27, synthetic NO, window 0x1200001,
root 0x101, subw 0x0, time 6417361, (340,373), root:(342,393),
state 0x0, keycode XX (keysym 0x0207, Caps_Lock), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
Правильный код ключа - тот, который указан в XX.
Игнорируя мои предыдущие попытки ответить на это, я нашел что-то, что полностью превращает капсюль в левый сдвиг.
Сначала я рекомендую сделать резервную копию, прежде чем я расскажу, как ее изменить.
Run sudo cp /usr/share/X11/xkb/symbols/pc ~/pckeybak [ ! d2]
Теперь, когда есть резервная копия, давайте перейдем к редактированию.
Используйте свой любимый текстовый редактор, чтобы отредактировать этот файл как root:
/usr/share/X11/xkb/symbols/pc
Найти сегмент это выглядит так (это около вершины, строка 22 для меня):
key <TAB> { [ Tab, ISO_Left_Tab ] };
key <RTRN> { [ Return ] };
key <CAPS> { [ Caps_lock ] };
key <NMLK> { [ Num_Lock ] };
изменить
key <CAPS> { [ Caps_lock ] };
, чтобы быть
key <CAPS> { [ Shift_L, Caps_Lock ] };
вместо этого , ([F6] после Shift_L, может быть ненужным.)
Перезагрузите диспетчер дисплеев (обычно sudo service lightdm restart), а caplock теперь будет сдвинут влево. (Примечание: мой тестовый компьютер использует GNOME, поэтому мне пришлось перезапустить gdm. Однако это вызвало странное мерцание в резервном TTY, а gdm никогда не перезапускалось. Мне пришлось полностью перезагрузиться.)
Этот я действительно смог проверить и подтвердить, что он работает.
Адаптировано из постоянного xmodmap в Ubuntu 13.04
Вы можете попасть туда, адаптировав Как изменить ключ CapsLock для создания «a»? (например).
Удалите модификатор Lock (= Caps Lock) из ключа Caps Lock и объявите, что этот ключ отправляет Shift_L keysym.
remove Lock = Caps_Lock
keysym Caps_Lock = Shift_L
В качестве альтернативы вы можете удалить модификатор Lock и добавить модификатор Shift.
remove Lock = Caps_Lock
add Shift = Caps_Lock
В любом случае эти строки попадают в файл ~/.Xmodmap. Проверьте, загрузив его с помощью xmodmap ~/.Xmodmap; файл читается автоматически при входе в среду по умолчанию (или, по крайней мере, в дни Gnome).
Для 14.04
Однострочный:
xmodmap -e 'keycode 66=Shift_L'
Для 14.04 в непредвиденном случае 66 не является правильным кодом ключа, сначала запустите xev в консоли и нажмите CapsLock. Затем вы увидите что-то вроде:
KeyPress event, serial 27, synthetic NO, window 0x1200001,
root 0x101, subw 0x0, time 6417361, (340,373), root:(342,393),
state 0x0, keycode XX (keysym 0x0207, Caps_Lock), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
Правильный код ключа - тот, который указан в XX.
Игнорируя мои предыдущие попытки ответить на это, я нашел что-то, что полностью превращает капсюль в левый сдвиг.
Сначала я рекомендую сделать резервную копию, прежде чем я расскажу, как ее изменить.
Run sudo cp /usr/share/X11/xkb/symbols/pc ~/pckeybak [ ! d2]
Теперь, когда есть резервная копия, давайте перейдем к редактированию.
Используйте свой любимый текстовый редактор, чтобы отредактировать этот файл как root:
/usr/share/X11/xkb/symbols/pc
Найти сегмент это выглядит так (это около вершины, строка 22 для меня):
key <TAB> { [ Tab, ISO_Left_Tab ] };
key <RTRN> { [ Return ] };
key <CAPS> { [ Caps_lock ] };
key <NMLK> { [ Num_Lock ] };
изменить
key <CAPS> { [ Caps_lock ] };
, чтобы быть
key <CAPS> { [ Shift_L, Caps_Lock ] };
вместо этого , ([F6] после Shift_L, может быть ненужным.)
Перезагрузите диспетчер дисплеев (обычно sudo service lightdm restart), а caplock теперь будет сдвинут влево. (Примечание: мой тестовый компьютер использует GNOME, поэтому мне пришлось перезапустить gdm. Однако это вызвало странное мерцание в резервном TTY, а gdm никогда не перезапускалось. Мне пришлось полностью перезагрузиться.)
Этот я действительно смог проверить и подтвердить, что он работает.
Адаптировано из постоянного xmodmap в Ubuntu 13.04
Вы можете попасть туда, адаптировав . Как изменить ключ CapsLock для создания «a»? (например).
Удалить модификатор Lock
(= Caps Lock) из ключа Caps Lock и объявить, что этот ключ отправляет Shift_L
keysym.
remove Lock = Caps_Lock
keysym Caps_Lock = Shift_L
В качестве альтернативы вы можете удалить модификатор Lock
и добавить модификатор Shift
.
remove Lock = Caps_Lock
add Shift = Caps_Lock
В любом случае эти строки попадают в файл ~/.Xmodmap
. Проверьте, загрузив его с помощью xmodmap ~/.Xmodmap
; файл читается автоматически при входе в среду по умолчанию (или, по крайней мере, в дни Gnome).