Używam Linuksa na Macbooku z klawiaturą UK / GB i dostosowuję mapę klawiszy, aby rozwiązać niektóre problemy, które powoduje dziwny układ klawiatury Apple. Ja xmodmap
to robię. Chciałbym wypróbować Waylanda, ale xmodmap
to nie działa. Jak mogę osiągnąć podobny wynik w Wayland? .Xmodmap
Wykorzystanie pliku I zawiera następujące elementy:
keycode 12 = 3 numbersign 3 sterling sterling sterling threesuperior sterling
clear Control
clear Mod4
add Control = Control_L Super_R
add Mod4 = Super_L
keysym Caps_Lock = NoSymbol Caps_Lock
Wiersz 1: na klawiaturach w Wielkiej Brytanii Shift- 3jest £, więc # zwykle ma swój własny klucz w pobliżu Return. Ale na Macu # jest uzyskiwane za pomocą Altgr- 3. Jako programista używam # znacznie więcej niż £, więc ta linia zamienia je. Wybieranie układu w USA również to osiąga, ale robi to w Linuksie również zamienia niektóre inne często używane klucze, podczas gdy w OS X na te inne klucze nie ma wpływu US / UK.
Linie 2-5: Ustaw odpowiedni Cmdklawisz tak Ctrl, aby działał jak Prawy , ponieważ ta klawiatura nie ma fizycznego prawego Ctrlklawisza.
Wiersz 6: Działa CapsLocktylko wtedy, gdy naciśniesz go Shift. Nie dotyczy komputerów Mac, powinna to być standardowa opcja dla wszystkich systemów operacyjnych i klawiatur.
źródło
Odpowiedzi:
Niestety modyfikacja systemowej bazy danych XKB
/usr/share/X11/xkb
jest jedynym sposobem; z drugiego pytania wygląda na to, że ta część działa.Ograniczenie wynika głównie z niedojrzałości Waylanda i nadzoru projektowego w XKB.
Narzędzia takie jak
setxkbmap
ixkbcomp
zapewniają-I
opcję dodawania zdefiniowanej przez użytkownika bazy danych do wyszukiwania (np.~/.xkb
Lub~/.config/xkb
z plikami i podkatalogami ułożonymi jak systemowa baza danych). Te narzędzia współdziałają z serwerem X, więc mogą być przydatne do skonfigurowaniaXwayland
warstwy kompatybilności do uruchamiania aplikacji X w Wayland. Ale obecnie nie mówią protokołów Waylanda.Protokoły Waylanda wciąż dojrzewają. Obecnie wydaje się, że
input-method
itext-input
protokoły są najbardziej istotne i oba są niestabilne. Nie wspominaj też nic o zmianie zdefiniowanej mapy klawiszy; szczegóły te pozostawiono kompozytorowi.Zarówno GNOME, jak i KDE zapewniają demony ustawień obsługi klawiatury, które powinny obsługiwać systemowe opcje XKB, w tym zmieniać w locie. Według mojej najlepszej wiedzy nie ma sposobu, aby powiedzieć o dostosowaniach użytkowników. O ile mi wiadomo, Weston i inni kompozytorzy polegają na plikach konfiguracyjnych lub zmiennych środowiskowych, aby ustawić opcje XKB podczas uruchamiania i nie zapewniają innego sposobu ich zmiany niż wyjście i ponowne uruchomienie.
Nawet w samym XKB nie jest to w pełni obsługiwane. Twój niestandardowy plik symboli może zawierać
include
inne pliki symboli systemowych. Ale obecnie nie mainclude
funkcjonalności plików reguł XKB, więc nawet gdybyś miał narzędzie, które porozmawiałoby z kompozytorem Wayland i sprawdziłoby twoje osobiste dostosowania, musiałbyś ręcznie dołączyć wszystkie reguły, których chcesz użyć (tj. Skopiowaćrules/evdev*
z systemu XKB i zmodyfikuj go).libxkbcommon
ma otwarty problem na ten temat i powiązany błąd .źródło
.Xmodmap
aspektem ekwiwalentu Waylanda .Z powodzeniem korzystam z narzędzi przechwytujących dla systemu Linux i wiem o osobach, które produkują inne wtyczki do swoich niestandardowych mapowań . caps2esc to pierwsza wtyczka typu proof-of-concept, której używam na co dzień i działa zarówno na X, jak i Wayland. Narzędzie jest nieco niższe niż zwykłe oprogramowanie do mapowania, ale dość elastyczne, a mój plan na następną wtyczkę to uogólnione narzędzie do mapowania nagrań.
Oświadczenie: Jestem autorem.
źródło
Dla tych, którzy przybędą tutaj w 2018 r. (Ubuntu 17.10), najbardziej krytyczną część tego można osiągnąć za pomocą narzędzia GNOME Tweak.
Gnome Tweak Tool> Klawiatura i mysz> Dodatkowe opcje układu> Ctrl jest mapowany na klawisze Win (i zwykłe klawisze Ctrl).
źródło
gnome-tweaks-3.34.0-1.fc31.noarch
can remap Caps Lock - np. „Caps Lock to także Ctrl”, „Make Caps Lock to dodatkowy Esc”, „Caps Lock as Ctrl” i wiele innych.Ta odpowiedź ma taki sam pomysł jak odpowiedź quickotic, ale tylko z bardziej szczegółowym przykładem:
Gnome Tweaks ma listę 20 lub 30 ulepszeń klawiatury, które możesz wykonać za pomocą xkb. Czasami możesz znaleźć poprawkę, której szukasz domyślnie. W moim przypadku chciałem zamienić klawisz Printscreen za pomocą Menu.
Jedyną opcją modyfikacji klucza printscr dostępnego przez xkb było zastąpienie go Win_R. Gunnar Hjalmarsson w tym wątku zasugerował mi, że modyfikuję modyfikacje xkb, aby zamiast tego printscr / win_r zrobił menu printscr /. Wspólnie wypracowaliśmy rozwiązanie i zamierzam go ponownie przesłać tutaj:
W terminalu wpisz:
Na dole pliku znajdziesz:
Usuń tę sekcję i zastąp ją następującą:
Aby usunąć w nano, użyj klawisza Backspace (podświetlanie i usuwanie nie działa). Aby wkleić, użyj shift-ctrl-v. Aby wyjść i zapisać, naciśnij ctrl-x, wybierz tak, aby zastąpić i naciśnij enter.
Restart. W Gnome / Ubuntu Przejdź do gnome-tweak-tools W narzędziach do ulepszania przejdź do sekcji Klawiatura i mysz, naciśnij przycisk Opcje dodatkowych układów i rozwiń zachowanie klawisza Alt / Win. Wybór opcji na samym dole: Win jest mapowany na printscr (pamiętaj, że zmodyfikowaliśmy to zachowanie, aby zamienić drukowanie i Menu zamiast print i Win). (Jestem pewien, że istnieje sposób na włączenie modowanej opcji xkb w KDE, ale nie używam jej, więc nie mogę podać dokładnej procedury).
źródło