Я искал в Интернете, и я не могу заставить Xmodmap / что-либо работать должным образом. Я хочу поменять обе мои клавиши Command с моей клавишей управления - по сути, инвертировать то, что они делают в настоящее время.
Как бы я это сделал?
Я попробовал xmodmap -e "keycode 133 = Control_L"
и соответствующие команды для кодов клавиш 134 (правая команда) и 37 (управление слева). Я даже попробовал эти команды, плюс xmodmap -pke > ~/.Xmodmap
и xmodmap ~/.Xmodmap
в .xinitrc
.
Моя конечная цель - Я хочу, чтобы HUD / Dash появлялся, когда я нажимаю control
и command
для функционального управления, т. Е. control-v
является общим ярлыком для вставки, я бы нажал command-v
Я понял это. Поместите следующее в ~/.Xmodmap
:
clear control
clear mod4
keycode 105 =
keycode 206 =
keycode 133 = Control_L NoSymbol Control_L
keycode 134 = Control_R NoSymbol Control_R
keycode 37 = Super_L NoSymbol Super_L
add control = Control_L
add control = Control_R
add mod4 = Super_L
Для тестирования выполните команду:
xmodmap ~/.Xmodmap
, Чтобы заставить его работать каждый раз, добавьте его для Запущения Приложений.
Это должно работать над любым MacBook Pro; проблема была то, что Xmodmap присваивал Super_L левым и правым командным клавишам и Control_L к левой клавише CTRL. По некоторым причинам, по умолчанию, Ubuntu думает, что MacBook Pro имеет стандартные 105 ключевых клавиатур (вероятно, думающий о полной Клавиатуре Apple), но это неправильно. Так или иначе я повторно присвоил коды клавиши направо keysims, затем присвоил keysims control
и mod4
.
Войдите System -> Preferences -> Keyboard
, Нажимают на вкладку "Layouts" и затем нажимают кнопку "Layout Options".
Нажимают на "Alt/Win key behavior"
, Избранное "Управление отображается на ключах Win (и обычная клавиша Ctrl).
общественная страница справки Ubuntu для клавиатур Apple дает следующие шаги для постоянного внесения этого изменения: (протестированный 27.05.2017)
<час>Выполнение следующая команда для добавления строки конфигурации в файл
/etc/modprobe.d/hid_apple.conf
, создающий его при необходимости:echo options hid_apple swap_opt_cmd=1 | sudo tee -a /etc/modprobe.d/hid_apple.conf
Триггер, копирующий конфигурацию в initramfs bootfile.
sudo update-initramfs -u -k all
Дополнительно, перезагрузка
sudo reboot
Для временного проверения его можно работать
echo 1 | sudo tee /sys/module/hid_apple/parameters/swap_opt_cmd
Дубликат , Как подкачать ключи Командования и управления с xkb шаг за шагом?
В 16,04, вот способ, которым я наконец заставил это работать. Xmodmap не работает универсально во всех приложениях, инструмент тонкой настройки гнома испытал недостаток в функции, dconf редактирование пользовательской altwin2 ключевой подкачки (как основной ответ здесь) отказавший, таким образом, я отрывал волосы, пока я не объединился, несколько ответов в это завершаются, простое, и изящное решение:
gksudo gedit /usr/share/X11/xkb/symbols/pc
изменение это к:
default partial alphanumeric_keys modifier_keys
xkb_symbols "pc105" {
key <ESC> { [ Escape ] };
// The extra key on many European keyboards:
key <LSGT> { [ less, greater, bar, brokenbar ] };
// The following keys are common to all layouts.
key <BKSL> { [ backslash, bar ] };
key <SPCE> { [ space ] };
include "srvr_ctrl(fkey2vt)"
include "pc(editing)"
include "keypad(x11)"
key <BKSP> { [ BackSpace, BackSpace ] };
key <TAB> { [ Tab, ISO_Left_Tab ] };
key <RTRN> { [ Return ] };
key <CAPS> { [ Caps_Lock ] };
key <NMLK> { [ Num_Lock ] };
key <LFSH> { [ Shift_L ] };
key <LCTL> { [ Alt_L ] };
key <LWIN> { [ Super_L ] };
key <RTSH> { [ Shift_R ] };
key <RCTL> { [ Alt_R ] };
key <RWIN> { [ Super_R ] };
key <MENU> { [ Menu ] };
// Beginning of modifier mappings.
modifier_map Shift { Shift_L, Shift_R };
modifier_map Lock { Caps_Lock };
modifier_map Control{ Control_L, Control_R };
modifier_map Mod2 { Num_Lock };
modifier_map Mod4 { Super_L, Super_R };
// Fake keys for virtual<->real modifiers mapping:
key <LVL3> { [ ISO_Level3_Shift ] };
key <MDSW> { [ Mode_switch ] };
modifier_map Mod5 { <LVL3>, <MDSW> };
key <ALT> { [ NoSymbol, Control_L, Control_R ] };
//include "altwin(meta_alt)"
key <LALT> { [ Control_L ] };
key <RALT> { [ Control_R ] };
modifier_map Mod1 { Alt_L, Alt_R, Meta_L, Meta_R };
key <META> { [ NoSymbol, Meta_L, Meta_R ] };
modifier_map Mod1 { <META> };
key <SUPR> { [ NoSymbol, Super_L ] };
modifier_map Mod4 { <SUPR> };
key <HYPR> { [ NoSymbol, Hyper_L ] };
modifier_map Mod4 { <HYPR> };
// End of modifier mappings.
key <OUTP> { [ XF86Display ] };
key <KITG> { [ XF86KbdLightOnOff ] };
key <KIDN> { [ XF86KbdBrightnessDown ] };
key <KIUP> { [ XF86KbdBrightnessUp ] };
};
hidden partial alphanumeric_keys
xkb_symbols "editing" {
key <PRSC> {
type= "PC_ALT_LEVEL2",
symbols[Group1]= [ Print, Sys_Req ]
};
key <SCLK> { [ Scroll_Lock ] };
key <PAUS> {
type= "PC_CONTROL_LEVEL2",
symbols[Group1]= [ Pause, Break ]
};
key <INS> { [ Insert ] };
key <HOME> { [ Home ] };
key <PGUP> { [ Prior ] };
key <DELE> { [ Delete ] };
key <END> { [ End ] };
key <PGDN> { [ Next ] };
key <UP> { [ Up ] };
key <LEFT> { [ Left ] };
key <DOWN> { [ Down ] };
key <RGHT> { [ Right ] };
};
Сохраняют.
rm -rf /var/lib/xkb/*
(я не знаю, требуется ли это, но я сделал это.)
Перезагрузка.
Перейдите к параметрам настройки системы и затем к раскладке клавиатуры, затем к опциям, затем к поведению Победы/клавиши Alt, и затем проверьте, что "Meta переключает Ctrl", и затем в проверке Положения Ctrl "Ctrl переключает Meta", и там у Вас есть он!
на 12.04.1 Вы изменяете это:
Первый, идя в "Параметры настройки системы", затем нажимающие на "Keyboard" затем "Настройки Расположения" (в левой нижней части), затем, "Опции" в нижнем правом, затем разворачивая вкладку "Alt/Win key behavior", затем выбирая "Управление отображаются для завоевания Ключей (и обычные клавиши Ctrl)"
Я просто установил двойную загрузку Ubuntu 16.04 на своем MBP13" вчера. Для Ubuntu 16.04 вот то, как я сделал это:
Шаг 1: Шаг 2 терминала
Запуска: Отредактируйте X Расширений Клавиатуры
sudo nano /usr/share/X11/xkb/symbols/pc
Шаг 3: Внесите следующие изменения. Удостоверьтесь, что Ваш файл похож на это:
key <LCTL> { [ Super_L ] };
key <LWIN> { [ Control_L ] };
...
key <RCTL> { [ Super_R ] };
key <RWIN> { [ Control_R ] };
Шаг 4: Очистите кэш xkb
sudo rm -rf /var/lib/xkb/*
Шаг 5 (условное выражение): Если ключи не подкачиваются после шага 4, перезапускают Ваш компьютер. Это работало на меня после этого.
Hope это помогает, удачи!
Можно найти, что Kinto полезен. Это - проект, который я недавно создал после нескольких лет занятия этой проблемой несколько различных путей и я сейчас чувствую, что это достаточно твердо для совместного использования.
установщик Kinto просто использует Python, чтобы сделать начальную установку, после этого это - просто systemd сервис, удар, xprop, setxkbmap и xkbcomp. Что касается меня, это - самое быстрое и наиболее встроенное решение этой проблемы, которую Вы собираетесь найти.
https://github.com/rbreaves/kinto
https://medium.com / benreaves/kinto-a-mac-inspired-keyboard-mapping-for-linux-58f731817c0
Здесь является Суть также, если Вы просто захотите видеть то, что в основе всего этого, то это не чередует Вашу контурную карту при необходимости все же. Суть также не включает пользовательские xkb файлы контурной карты, которые устанавливают стиль macOS cursors/word-wise манипуляции, которые используют Cmd и клавиши со стрелками.
https://содержание сути gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb
# permanent apple keyboard keyswap
echo "options hid_apple swap_opt_cmd=1" | sudo tee -a /etc/modprobe.d/hid_apple.conf
update-initramfs -u -k all
# Temporary & instant apple keyboard keyswap
echo '1' | sudo tee -a /sys/module/hid_apple/parameters/swap_opt_cmd
# Windows and Mac keyboards - GUI (Physical Alt is Ctrl, Physical Super is Alt, Physical Ctrl is Super)
setxkbmap -option;setxkbmap -option altwin:ctrl_alt_win
# Windows and Mac keyboards - Terminal Apps (Physical Alt is Super, Physical Super is Alt, Physical Ctrl is Ctrl)
setxkbmap -option;setxkbmap -option altwin:swap_alt_win
#
# If you want a systemd service and bash script to help toggle between
# GUI and Terminal applications then look at project Kinto.
# https://github.com/rbreaves/kinto
#
# Note: The above may not work for Chromebooks running Linux, please look
# at project Kinto for that.
#
# If anyone would like to contribute to the project then please do!
#
Обновленный для 18,04, так как ни один из предоставленных ответов, казалось, не работал над моей системой. Я сделал чистую установку 18,04 и пытающийся использовать проводную алюминиевую клавиатуру яблока. Поведение по умолчанию Левых Супер на английских США отображается на Настольной Панели инструментов Gnome. Инструмент тонкой настройки имел все необходимые настройки в простом в использовании GUI!
sudo apt install gnome-tweak-tool
Сначала я подкачал горячую клавишу панели инструментов к правой стороне и затем под "Дополнительными Параметрами макета", можно использовать "Позицию Ctrl / Подкачка Оставленная Победа с Левым Ctrl" успешно.
Я использую клавиатуру Deck с клавишами Mac, подключенными к переключателю USB, чтобы переключать клавиатуру / мышь / камеру / микрофон между несколькими компьютерами, включая ноутбуки Mac и устройства Ubuntu. Я просто хотел, чтобы клавиша «Apple / Win» действовала как клавиша ctrl, когда я запускаю Ubuntu, поэтому, если я нажму Apple-C, чтобы скопировать, она сработает в Ubuntu.
В Ubuntu 20.04:
sudo apt install gnome-tweak-tool