Раніше я використовував, xmodmap
щоб запобігти роботі Caps Lockкнопки, а потім сказати Launchy обробляти натискання клавіш. Я не можу більше цього робити.
Який найкращий спосіб відключити Caps Lockнормальну поведінку і змусити її робити щось інше?
Раніше я використовував, xmodmap
щоб запобігти роботі Caps Lockкнопки, а потім сказати Launchy обробляти натискання клавіш. Я не можу більше цього робити.
Який найкращий спосіб відключити Caps Lockнормальну поведінку і змусити її робити щось інше?
Відповіді:
З howtogeek.com, який має гарну відповідь для будь-якої ОС.
Для Linux (включаючи Ubuntu):
setxkbmap -option <OPTION>
Де <OPTION>
можна, наприклад:
caps:none
- Відключає Caps Lock.caps:super
- Caps Lock стає додатковим Super (він же клавіша Win).caps:ctrl_modifier
- Caps Lock стає додатковим Ctrl .caps:numlock
- Caps Lock стає додатковим Num Lock .caps:escape
- Caps Lock стає додатковим Escape .caps:backspace
- Caps Lock стає додатковою Backspace .caps:swapescape
- Caps Lock стає Escape, а Escape стає Caps LockПримітка: Xmodmap застаріло на користь setxkbmap.
setxkbmap
зміни (тобто якщо вам потрібен ключ Caps до його початкового місця), потрібно виконати лише це:setxkbmap -option
setxkbmap -option caps:backspace
входу xset r 66
і voilá.
xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape'
все ще працює.
gnome-tweak-tool
, там у вас будуть подібні налаштування під "Введення тексту".
Ви можете відключити його, перейшовши на клавіатуру-> Макети-> Параметри-> поведінку блокування шапки та виберіть "відключити блокування заглушок".
Редагувати :
Я не знаю, чому це виглядає незручно з іншими клавішами клавіатури.
Але Launchy прекрасно працює зі мною після того, як спробувати його з CTRL+ Super+ Space.
І вам потрібно додати білий список launchy
до значків лотка. Див. Як я можу отримати доступ та ввімкнути більше значків у системному треї? . Також вам потрібно додати його до програм Start Up, оскільки він не працюватиме, коли він не відкриється.
Зрештою, як альтернатива Launcy, спробуйте Synapse для її найкращої інтеграції з gnome та єдністю.
Це в основному модифікація відповіді, наданої на https://askubuntu.com/a/223674/22073 .
Ви також можете змінити поведінку Caps Lock за допомогою XKBOption
. Ці зміни пропонуються навіть у віртуальних консолях (/ dev / tty [1-6], або Ctrl-Alt-F [1-6]).
Наприклад, щоб відключити функцію Caps Lock, у вас буде наступне /etc/default/keyboard
:
# Check /usr/share/doc/keyboard-configuration/README.Debian for
# documentation on what to do after having modified this file.
# The following variables describe your keyboard and can have the same
# values as the XkbModel, XkbLayout, XkbVariant and XkbOptions options
# in /etc/X11/xorg.conf.
XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT=""
XKBOPTIONS="caps:none"
# If you don't want to use the XKB layout on the console, you can
# specify an alternative keymap. Make sure it will be accessible
# before /usr is mounted.
# KMAP=/etc/console-setup/defkeymap.kmap.gz
Тоді ви біжите:
sudo dpkg-reconfigure keyboard-configuration
Щоб отримати повний список налаштувань XKBOPTIONS, подивіться на /usr/share/X11/xkb/rules/base.lst
. Ось повний список з моєї машини Ubuntu 13.10: http://sprunge.us/cUZO
Ще більше інформації можна знайти на вікі ArchLinux: https://wiki.archlinux.org/index.php/Keyboard_Configuration_in_Xorg
XKBOPTIONS="ctrl:swapcaps"
щоб поміняти лівий Ctrl на Caps.
Щоб перевстановити непотрібний caps_lock в основний зсув, зробіть
xmodmap -e "keycode 66 = Shift_L"
Наступний метод використовує комбінацію Compiz для запуску програми, коли робиться натискання клавіші.
Підсумовуючи -
Занадто змінивши поведінку клавіші Caps Lock, ви можете використовувати xmodmap
наступне:
keycode 66 = cent clear Lock add Control = cent
xmodmap capslock
Для постійного запуску додайте цю команду до програм запуску.
Натискання Caps Lock зараз просто імітує натискання клавіші "цента" - зауважте, це не клавіша, яка насправді існує на моїй клавіатурі.
Список імен KeySym ви можете отримати тут .
Запустіть Менеджер налаштувань CompizConfig
У загальному розділі переконайтесь, що "Команди" увімкнено та налаштуйте команду, як показано:
Примітка: увімкніть прив'язку клавіш і використовуйте "комбінацію клавіш", щоб розпізнати ваш ключ "цента". Ви не можете отримати compiz, щоб, на жаль, розпізнати ключ блокування шапки.
Очевидно - змініть "firefox" на будь-яку команду, яку ви використовуєте для запуску "запуск"
Тепер, коли ви натискаєте клавішу Caps Lock, compiz розпізнає відображену в ньому "цент" клавішу і запустить команду - у цьому випадку firefox - у вашому випадку "запуск".
Використовуйте команду xev. Коли ви натиснете клавішу Enter, xev запуститься. xev бере всю вашу інформацію та інформацію про ключ у командному рядку. Я рекомендую провести курсор миші над клавішею виходу вікна xev, натиснути блокування шапки (або будь-яку клавішу, про яку ви хочете дізнатися) та негайно вийти з xev. Відповідні рядки в моїй системі для блокування ковпачків виглядають приблизно так:
KeyPress event, serial 36, synthetic NO, window 0x4400001,
root 0x27a, subw 0x0, time 19164277, (16,-9), root:(1156,46),
state 0x2, keycode 66 (keysym 0xffe5, Caps_Lock), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 36, synthetic NO, window 0x4400001,
root 0x27a, subw 0x0, time 19164397, (16,-9), root:(1156,46),
state 0x2, keycode 66 (keysym 0xffe5, Caps_Lock), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
Зауважте keycode
(66) та keysym
(0xffe5).
Тепер ви також можете отримати дані для іншого ключа - того, який ви насправді не використовуєте, і який у контексті, в якому ви хочете використовувати кнопку блокування шапки, нічого не робить. Отже, якщо ви хочете, щоб увімкнути шапки для активації вікна пошуку Unity (як це зазвичай робиться супер), можливо, використовуйте, наприклад, `. На моїй машині:
keycode 49 (keysym 0x60, grave)
Прив’яжіть функцію нової клавіші до кнопки Caps Lock, використовуючи xmodmap. Я впевнений, що ви хочете використовувати таку команду, як:
xmodmap -e "keycode 66=0x60"
Тепер, якщо натиснути кнопку фіксації фізичних шапок у текстовому полі, з'явиться надто великий символ (`). Але якщо зіставити на ньому клавішу швидкого доступу, вона зробить щось інше. Якщо ви хочете мати можливість використовувати його в текстовому полі, можливо, замініть шапки блокування на лівий зсув, або f10, або щось інше, що не здається, що це буде заважати команді, яку ви хочете використовувати.
Перевірте це, щоб переконатися, що команда, яку я вам дав, працює так, як ви хочете.
Перейдіть до програм запуску та додайте цю команду до своїх програм запуску. Таким чином, ключ буде перемикатися належним чином при кожному запуску.
Танець.
(кричати на компанію) Змінити клавіші (апаратне забезпечення на програмне забезпечення)
Також для отримання додаткової допомоги щодо xmodmap:
Ubuntu 16.04
setxkbmap -option <OPTION>
з відповіді Вернінга, здавалося, мені діють негайно.
Однак він перейде до перезавантаження. Щоб вирішити це, я додав до своїх запуску програм
Startup Applications
>> Натисніть Додати/usr/bin/setxkbmap -option <OPTION>
як команду (Примітка: важливий повний шлях)Замініть <OPTION>
щось на зразок caps:escape
(я використовую це для vi)
Фон
Я щойно модернізував з 15.10 до 16.04, і все, що я використовував для карти цього, перш ніж перестав працювати.
Доданий варіант, який я знайшов найкращим для мене (у будь-якому X-сумісному wm / de)
Option "XkbOptions" "caps:swapescape"
всередині
Section "InputClass"
Identifier "system-keyboard"
MatchIsKeyboard "on"
Option "XkbLayout" "US"
Option "XkbOptions" "caps:swapescape" # << is what you want
EndSection
блокувати в /etc/X11/xorg.conf.d/00-keyboard.conf (створити, якщо потрібно).
Найбільш надійне рішення - придбати клавіатуру, яка дозволяє перевпорядковувати клавіші в програмному забезпеченні, тобто професійну, програмовану клавіатуру.
Зазвичай вони коштують близько 200 доларів, а також мають висококласні механічні перемикачі клавіш. Вони дорогі, але вони є єдиним способом уникнути необхідності боротися з цим на кожній новій машині, за яку ви сідаєте, і кожен раз розробники вносять зруйнуючі зміни в інфраструктуру ОС настільки принципово, як карта клавіатури.