Awesome WM'de Mod anahtarını değiştirme


9

Windows tuşundan mod tuşunu Pause, Scroll Lock ve Escape olarak değiştirmeye çalıştım.

Tüm tuşlar için rc.luayapılandırma dosyasındaki girişi değiştirmeye çalıştım ; Kilitleri temizlemek için xmodmap kullanmaya çalıştım veadd mod4 = ...

Ancak anahtarları ne yaparsam yapayım (bazen tuhaf tutarsız bir şekilde), yani bilgisayar sürekli basıldığı gibi hareket ettikten sonra onları vurursam.

Bu davranışı değiştirmenin makul bir yolu var mı?

Yanıtlar:


2

Evimde şu iki satırlı bir dosya var:

clear lock 
keysym Caps_Lock = Super_L

Böyle rc.lua denir alır :

awful.util.spawn("xmodmap /home/username/your_xmodmap.file")

Mod kilidi olarak capslock kullanmak istemiyorum. clear lockKomut temizler kilidi vardiya ve benim soru ilk satırda yer alan iki anahtarlar için herhangi vites kilidi olmamalıdır.
Archie

2

Çok geç, ama başkalarının referansı için:

Sorun, xmodmap'ın değiştirici anahtarlar olarak listelediğiniz anahtarları tanımlamaması gibi görünüyor. Bu nedenle AwesomeWM, değiştirici anahtar olarak kullanılmasına izin vermez.

Kullanmak istediğiniz anahtarı Mod3 olarak eklemeyi deneyebilirsiniz (gördüğüm çoğu sistemde hiçbir şey için kullanılmıyor gibi görünüyor), rc.lua'nız modkey'i "Mod3" olarak listeleyebilir.

Değiştirici anahtar olarak ekle

Değiştirici tuşlarınızı ile görebilirsiniz xmodmap. Varsayılan olarak muhtemelen şöyle bir şey alırsınız:

xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Alt_R (0x6c),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

İle xevçalışırken, bastığınız herhangi bir tuşun adını görebilirsiniz ve Scroll Lock madeni için şu şekilde görünür:

KeyPress event, serial 36, synthetic NO, window 0x2200001,
    root 0x225, subw 0x0, time 23086947, (433,729), root:(470,783),
    state 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x2200001,
    root 0x225, subw 0x0, time 23087091, (433,729), root:(470,783),
    state 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

Keysym isminin farkına varacaksınız Scroll_Lock.

Mod3'e eklemek için oluşturmanız veya eklemeniz gerekir ~/.Xmodmap. Bu satırı eklemek Mod3'ü yalnızca Scroll_Lock anahtarı olarak ayarlar:

add Mod3 = Scroll_Lock

Değişikliklerinizi test etmek ve .Xmodmap dosyanızdaki hataları görmek için çalıştırın

xmodmap ~/.Xmodmap

Rc.lua güncelleniyor

Daha önce çözdüğünüz gibi, rc.lua dosyanızın üst kısmına doğru (genellikle ~/.config/awesome/rc.luaiçeride), bir modkey = "Mod4"çizgi var. Bunu olarak değiştirin modkey = "Mod3".

Uyarılar

Esc tuşu, AwesomeWM tarafından yapılan bir dizi anahtar eşleme için kullanılır. Kapsamlı çatışmaların olması daha az olası olduğundan, bunun yerine Kaydırma Kilidi veya Duraklat'ı denemenizi öneririm. Aslında AwesomeWM, Esc'in mevcut işlemi iptal etmek için ayrıldığını varsayar.

Scroll Lock, sihirli bir şekilde Caps Lock gibi bir kilitleme anahtarı olarak görülüyor. Fark, Caps Lock'un kilitleme davranışının devre dışı bırakılması nispeten önemsizdir, ancak Scroll Lock'un bu davranışı anlayabildiğim kadarıyla devre dışı bırakamamasıdır.

Bunu Numpad 0 tuşu gibi bir anahtarla veya normalde durum kilitleme anahtarı olarak tasarlanmamış bir şeyle denemenizi, çalıştığını onaylayın, sonra istediğiniz anahtara geçmeyi deneyin.


0

3 yıl geç kaldığımı biliyorum, ama eğer bu herkese yardım ederse,

modkey = "Mod4"

ile

modkey = "Mod1"

Bu temel kavramdır, ancak listelediği anahtarlar rc.lua'da böyle basit bir değişiklikle kullanılamaz. Görünüşe göre rc.lua'daki modkey ayarı yalnızca xmodmap'ın değiştirici anahtarlar (shift veya ctrl gibi) olarak işlediği anahtarlara ayarlanabilir ve 'x' gibi bir şeye ayarlanamaz.
mtalexan
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.