AltGr'yi <Ctrl> + <Alt> ile bağlama


11

Sarala (Hard la) adlı Ergonomik Telugu Klavye düzeninin linux eşdeğerini oluşturmaya çalışıyorum. Şimdiye kadar tüm anahtarları eşleştirebildim. Düzen, çeşitli düzeyler için aşağıdaki tuş kombinasyonlarını kullanır.

None (Base): Level1
Shift: Level2
Ctrl + Alt: Level3
Ctrl + Alt + Shift:Level4

Linux gibi çeşitli seviyeler için aşağıdakileri kullanır.

None (Base): Level1
Shift: Level2
RAlt: Level3
RAlt + Shift:Level4

Benim düzen ile tuş kombinasyonları maç edebilmek için, ben harita olurdu AltGrbir ile Ctrl+ Alt. Çeşitli dosyalar olsa da başarısız bir şekilde aradım /usr/share/X11/xkb/. Herhangi bir vücut + ISO_Level3_Shiftile nasıl bağlanabileceğimi biliyor mu?CtrlAlt

key <RALT>  {
    symbols[Group1]= [ Mode_switch, Multi_key  ],
    virtualMods= AltGr
};

Düzene bakmak istiyorsanız, burada



2
Teşekkür ederim, bu çok bilgilendiricidir, ancak xkbyapılandırma hariç her şeyden bahseder .
ShaggyInjun

Bunu göz atabilirsiniz wiki kemer linux vikiden ve Alt ve AltGr (Seviye 3) ilgili bölümü inceleyin. Bunun size yardımcı olup olmayacağından emin değilim, ancak XKB hakkında çok fazla bilgi var gibi görünüyor
No Time

Bunu denedim, xkb çok açıklayıcı bir hata ile yüklenemedi. Hatayı kullanmıyorum, ancak daha sonra ekleyebilirim.
ShaggyInjun

Yanıtlar:


6

Yeni bir xkb türü tanımlamanız gerekir. Örnekleri xkb / types dizininizde görebilirsiniz (genellikle /usr/share/X11/xkb/types). Burada, farklı kaydırma seviyeleri elde etmek için rastgele değiştirici kombinasyonları tanımlayabilirsiniz. Sorununuz için şöyle bir şey kullanabilirsiniz:

type "C_A_to_L3" {
    modifiers = Control+Alt+Shift;
    map[None] = Level1;
    map[Shift] = Level2;
    map[Control+Alt] = Level3;
    map[Control+Alt+Shift] = Level4;
    level_name[Level1] = "Base";
    level_name[Level2] = "Shift";
    level_name[Level3] = "Alt Base";
    level_name[Level4] = "Shift Alt";
};

Daha sonra semboller dosyasında bu türü varsayılan olarak ayarlayabilir veya anahtar türü temelinde ne tür olduğunu ayarlayabilirsiniz. Türün türler dizinindeki bir dosyada olması ve semboller dizinindeki bir dosyada anahtar tanımının olması gerektiğini unutmayın - xkb, her bileşeni bulmak için katı bir dosya sistemi hiyerarşisi kullanır.

Tuhaf şeyler denediğim çeşitli yinelemelerden geçen özel mizanpajı ( https://github.com/willghatch/hatchak ) oluşturmak için klavye düzenlerini kendim hackledim. XKB zaman zaman oldukça şık ve garip olabilir, ancak hala şimdiye kadar gördüğüm en yapılandırılabilir klavye sistemidir. Daha fazla sorununuz varsa en iyi referanslar:

[değiştir: orijinal bağlantılar şu anda kapalı, ancak neyse ki archive.org var]

https://web.archive.org/web/20150722164820/http://www.charvolant.org/~doug/xkb/html/index.html

ve

https://web.archive.org/web/20190419170426/http://pascal.tsu.ru/en/xkb/

Dikkat edin - bulduğum en iyi dokümantasyon olsa da, bol miktarda karanlık kenarlık bırakıyor. İyi şanslar.


Fikrinizin gerçekten yararlı olduğunu düşünüyorum, ancak sembol dosyalarında oluşturulan türü varsayılan olarak belirttiğiniz gibi kullanmakta zorlanıyorum. Bilgisayarımda bulunan sembol dosyaları oldukça uzun ve varsayılan türün tanımına benzeyen bir satır görmüyorum.
Dave

1
Ayarlayarak semboller dosyasındaki bir bölüm için bir varsayılan tanımlayabilirsiniz key.type. Muhtemelen /usr/share/X11/xkb/symbols/srvr_ctrl"no_srvr_keys" bölümünde (veya bunun gibi bir yerde) bir örnek görebilirsiniz . İşte ne var: xkb_symbols "no_srvr_keys" {key.type = "TWO_LEVEL"; anahtar <FK01> {[F1, F1]}; anahtar <FK02> {[F2, F2]}; <vb ...>};
William Hatch

Hızlı cevap için teşekkürler. Sanırım bunu uygulayabileceğim. Şimdiden çok teşekkürler.
Dave

Tıpkı uzun bir süre sonra bile bu sayfaya geri dönenler için bir geri bildirim gibi. Benim için bu yaklaşım şimdi yeni kurulan bir Fedora ile çalıştı. Bazı (bilinmeyen) nedenlerden dolayı, yukarıdaki yorumu yazarken Mint ile çalışmadı. Ama şimdi çalışıyor ve bana çok zaman kazandırıyor.
Dave

-1

Göründüğüm kadarıyla, AltGr'yi destekleyen bir klavye düzenine ihtiyacınız var, böylece yapılandırma menüsündeki "klavye> kısayollar> alternatif karakterler tuşu" ndaki kısayol tuşunu kolayca değiştirebilirsiniz. Normalde "ölü anahtarları olan" veya "AltGr ölü anahtarları" yazılı bir düzene dönüştürerek görebilirsiniz.


Kişisel kullanım istemiyorum, düzeni göndermem gerekiyor. Ne yazık ki bu kötü bir cevap. Ancak teşekkür ederim.
ShaggyInjun
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.