Not : Wayland xkb kullanıyor, ancak birçok xTools düzgün çalışmayı bıraktı (örneğin, xdotool)
Not : Bu ayrıntılı olmayan bir öğreticidir. Yeni bir sekiz seviyeli düzen oluşturmak ve sözdizimini anlamak isteyen bir kişi için en kullanışlıdır.
Not: Hızlı ve kirli bir çözüm sağlanır. İhtiyacınız olan kodu otomatik olarak üreten bir elektronik tablo içerir.
XKB Dizinini Anlamak
cd /usr/share/X11/xkb/ && ls
- types- Üretilen anahtarlar Aktif Değiştiriciler tarafından nasıl değiştirilir ? (Shift, Control, Alt ~)
Değiştirici Tuşları özelleştirmek istiyorsanız, önemli.
- geometry- Klavye grafiklerini çizmek için kullanılır.
Standart olmayan bir klavye donanımı tasarlıyorsanız önemlidir.
- rules- Geçerli kurulumunuz için uygun yapılandırmayı alma.
Bunu tanımlamanız gerekecek
- keycodes- Klavye donanımı için kullanılan tuş kodlarının yorumlayıcısı.
Örnek: Macintosh Klavye, boşluk çubuğunu olduğu gibi anlar 57
. Ancak yazıyoruz<SPCE>
- symbols- Hangi Anahtar Kodlara hangi Değerler atanmıştır .
Özel düzenimizi tanımlayacağımız yer burasıdır.
- compat- Uyumluluk için kısa .
Değiştiricilerin
iç davranışı (Shift, Control, Alt ...)
İş Akışı
keycodes > symbols > compat
Ben sadece dokunun symbols
: Hızlı ve Kirli çözümü için aşağıya bakın .
Sembol Haritaları
/symbols/us Bu dizindeki herhangi bir dosya aynı yapıyı izler.
partial alphanumeric_keys
xkb_symbols "basic" {
name[Group1]= "US/ASCII";
key <TLDE> { [ quoteleft, asciitilde ] };
key <AE01> { [ 1, exclam ] };
modifier_map Shift { Shift_L, Shift_R };
};
partial - Tam bir klavye haritası değil
alphanumeric_keysEşleştirilmekte olan klavyenin bölümü. Birden çok kullanılan olabilir
Not: Hayır ise *_keys
belirtilen, tam bir klavye varsayılır.
"basic" - Sembol haritasının adı
name[Group1]= "US/ASCII";Bu klavye grubuna benzersiz bir ad verir .
modifier_mapDeğiştirici tuşları düzenlemek için . (ctrl, shift, alt ~)
Shift { Shift_L, Shift_R };Normalde gerekli değildir. Her iki vardiyayı da değiştiriciye, yani seviye 2'ye eşler.
key <TLDE> Tilde Tuşu - Genellikle Sekme'nin hemen üst sol tuşu
key <AE01> Stok Fotoğraf - Üç Parçadan Oluşan,AE01
A= alfanümerik tuş bloğu.
KP= Tuş takımı
FK= İşlev Tuşu
E= Klavyede Satır.
Space Key= Arow
Shift Key= Brow
Caps Lock= Crow
Tab Key= Dsatır
01= Anahtarın satırdaki konumu.
AE01= 1
AB02= X
AC05=G
[+ ]- C Dillerinde; Köşeli ayraçlar, öğelerin bölündüğü bir listeyi belirtir ,. Listenin uzunluğu, seviyelerin miktarını belirler. Örneğin:
key<AE01> { [ Level 1 , Level 2 , Level 3 , Level 4 , Level 5 ] }
Genellikle, Düzeyler aşağıdaki tuşa basmayı gösterir:
- Değiştirici Anahtar Yok
- Shift
- Alt Gr
- Shift + Alt Gr
- Custom - 4. seviyenin ötesinde bir şey görmemek.
Kısacası, shift + altgr için bir anahtar eşlemek istiyorsanız listeniz en az dört öğe uzunluğunda olmalıdır.
UYARI - Yaygın Hatalar
Bu satırlardan biri kritik bir hataya neden olacak ve kullanılabilir bir klavye olmadan sizi bırakacaktır:
key<AE01> { [ Backspace ] }
key<AE02> { [ a, b, , C ] }
Backspace
Olması gerekenler BackSpace
: Yazım kurallarına çok dikkat edin.
- Boş bir giriş olmalı
VoidSymbol
.
En İyi Güvenlik Ölçüsü!
Düzenlemekte olduğunuz dosyanızı yedekleyin:
sudo /bin/cp /usr/share/X11/xkb/symbols/us /usr/share/X11/xkb/symbols/usBACKUP
Kök şifresi olmadan çalıştırabileceğiniz bir komut dosyası oluşturun
Gibi bir şey:
#!/bin/bash
sudo /bin/cp -rf /usr/share/X11/xkb/symbols/usBACKUP /usr/share/X11/xkb/symbols/us
Bir şey ters giderse, farenizi kullanarak bu kod satırını çalıştırın (sudo'lara izin verdiğiniz bash komut dosyasında bulunur. chmod +x
Yürütülebilir olarak çalıştırmaya izin vermeyi unutmayın .)
Kırık bir sistemi kurtarmak için yedekleme stratejileri
- UYARI: Klavye ve Ekran klavyesi en ufak bir hatayla çalışmayı keser.
- Fare işe yarayacak . Yazma, karakterleri vurgulayarak ve orta tıklamayı kullanarak yapıştırarak yapılabilir. Bash'de,
return
bir satır sonu yapıştırarak (Enter tuşuna basarak) yapabilirsiniz .
- Klavye kök kabuğundaki kurtarma modunda çalışacaktır . (Bash erişimi)
- Dosyaları düzeltmek için her zaman canlı bir ortam kullanabilirsiniz.
Hızlı ve Kirli çözüm
- Buraya gidin
- Dosya> Bir Kopyalama Yap
- Mapper Sayfa , düzeninizi tanımladığınız yerdir.
- Tek Karakter girişleri program tarafından anlaşılan koda çevrilir.
( !
olur U0021
). Unicode destekledi!
- Dizeler çevrilmez ve olduğu gibi ele alınır. Heceleme veya HAZIRLAMA hataları OLMADAN EMİN OLUN!
- Boş Kareler otomatik olarak doldurulur
VoidSymbol
.
- XKB-Sort Sayfada anahtar grupları var, örneğin:
key <AE01> { [U0021, U0021, U0021, U0021, U0021, U0021, U0021, U0021] };
key <AE02> { [U005B, U005B, U005B, U005B, U005B, U005B, U005B, U005B] };
key <AE03> { [U005D, U005D, U005D, U005D, U005D, U005D, U005D, U005D] };
key <AE04> { [U0022, U0022, U0022, U0022, U0022, U0022, U0022, U0022] };
key <AE05> { [U002A, U002A, U002A, U002A, U002A, U002A, U002A, U002A] };
key <AE06> { [U007B, U007B, U007B, U007B, U007B, U007B, U007B, U007B] };
key <AE07> { [U007D, U007D, U007D, U007D, U007D, U007D, U007D, U007D] };
key <AE08> { [U002F, U002F, U002F, U002F, U002F, U002F, U002F, U002F] };
key <AE09> { [U0027, U0027, U0037, U0027, U0027, U0027, U0027, U0027] };
key <AE10> { [U0029, U0029, U0038, U0029, U0029, U0029, U0029, U0029] };
key <AE11> { [U0028, U0028, U0039, U0028, U0028, U0028, U0028, U0028] };
key <AE12> { [U005C, U005C, U005C, U005C, U005C, U005C, U005C, U005C] };
Tüm 8 seviyelerde bunu değiştirir:
1234567890-= // Physical Keys
![]"*{}/')(\ // Changed to these characters
- XKBSekmede ayrıca çizgiler var. Diğer her sekme yoksayılabilir (kodu).
sudo vim /usr/share/X11/xkb/symbols/us
- Bir düzen içeriğini değiştirin. Kullanmayacağınız birini seçin. Örneğin: Colemak girişini yapı bozulmadan bırakarak değiştirdim ve anahtarları değiştirdim.
İlgi alanları:
key.type[group1]="EIGHT_LEVEL"; // Enables 8 levels
modifier_map Control { <LFSH>, <RTSH> }; // Maps ctrl`s to shift keys.
key { [Control_R, Control_R, Control_R, Control_R, Control_R, Control_R, Control_R, Control_R] };
key { [Control_L, Control_L, Control_L, Control_L, Control_L, Control_L, Control_L, Control_L] };
include "level3(lalt_switch)" // Hold Left Alt for Level 3
include "level5(ralt_switch)" // Hold Right Alt for Level 5