Bir bilgisayarda iki klavye. AI ile yazarken ABD klavye düzeni istiyorum, BI kullandığımda İsveççe istiyorum. Mümkün?


47

Harici bir klavye kullandığım bir dizüstü bilgisayar var. Harici klavyeyi kullanarak yazarken, ABD klavye düzenini kullanmak istiyorum, çünkü sahip olduğum harici klavyenin türü. Öte yandan, entegre klavyeyi kullanarak yazarken İsveççe bir düzen kullanmak istiyorum.

Mümkün mü? Peki nasıl yapacağım?

Burada, Linux uzmanlığının çoğunu burada bulacağımızı düşündüğüm gibi soruyorum.

Yanıtlar:


41

Öncelikle, değiştirmek için klavyenin cihaz kimliğini bulmanız gerekir:

$ xinput -list | grep -i key
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Power Button                              id=7    [slave  keyboard (3)]
    ↳ LITEON Technology USB Keyboard            id=9    [slave  keyboard (3)]
    ↳ LITEON Technology USB Keyboard            id=10   [slave  keyboard (3)]

Ardından setxkbmap kullanarak düzeni değiştirin:

$ setxkbmap -device 9 dvorak

Setxkbmap'ın bazı sürümlerinde '-layout' argümanına ihtiyaç vardır:

$ setxkbmap -device 9 -layout dvorak

Merhaba, bunu yaptım ve ok tuşları ve diğer yön tuşları (artık hiç çalışmıyor) dışında her şey için harika çalışıyor. Klavyenin korkak anahtar eşleştirmeleri olan ergonomik olanlardan biri olabilir mi ... bir daha nasıl çalışacaklarına dair bir fikrin var mı?
btelles

8
Peki bu konfigürasyonu setxkbmap'ı elle çağırmak yerine önyüklemede ayarlamanın en iyi yolu nedir?
Richard Turner

9

Olumlu bir şekilde yapmak istediğin şeyin gerçekten mümkün olduğunu söyleyebilirim. Belirtilen senaryoyu ilk önce başardım

sudo cat /dev/input/event(0,1,2..)

Her bir klavyeye yazı yazarken, ayrı cihazlar olarak tanınmasını sağlamak için kullanılır. Sonra sadece deneme yanılma uygulamıştım,

setxkbmap -device (1-x) us.

Her setxkbmap -device 1 usikisi de (tümü) klavyeyi yapılandırırken, setxkbmap -device 6 usyalnızca ikincilleri etkilediğini keşfettim . Alaka düzeyi belki de her ikisi de PS / 2 ile bağlı.

Bu elbette sizin için çalışmayı garanti etmiyor ve uygun bir cevap olarak bile sınıflandırmıyor, ancak bunun mümkün olduğunu onaylıyor. Tek tek klavyelerin hangi şemaya göre adlandırıldığını bilmiyorum /dev/input, ancak adların udev'da belirtilebileceğinden eminim, uygun setxkbmapkomutu girip yerleştirmeyi mümkün kılıyor /etc/rc.local.


9

Her ne kadar bu soru biraz eski olsa da, diğer cevapların hiçbiri bu çalışmayı nasıl önyükleme yapabileceğini ele almadığı için çözümümü paylaşacağımı düşünmüştüm.

Durumum: Anahtarları dolanıp usb ile takılan bir Mutlu Klavyem var (büyük harf kilidinin nerede olduğunu kontrol et, vb.). Bunu çoğu zaman kullanıyorum, ancak bazen standart laptop klavyesini veya başka bir usb klavyeyi kullanmak istiyorum. Bu klavyeler için özel bir klavye düzeni oluşturdum.

İşin püf noktası, özel klavye düzeninin Happy Hacking Keyboard'a uygulanmaması gerektiğidir.

Çözüm: Bir Xorg yapılandırma dosyası hazırladım:

$ cat /etc/X11/xorg.conf.d/30-keyboard.conf 
Section "InputClass"
        Identifier "Happily Hacked Keyboard"
        MatchDevicePath "/dev/input/event*"
        MatchIsKeyboard "on"
        Driver "evdev"

        Option "XkbLayout" "us"
        Option "XkbVariant" "hhk"
EndSection

Section "InputClass"
        Identifier "Happy Hacking Keyboard"
        MatchIsKeyboard "on"
        MatchVendor "Topre_Corporation"
        Driver "evdev"

        Option "XkbLayout" "us"
        Option "XkbVariant" "basic"
EndSection

İlk bölüm, herhangi bir standart klavye için temelde diyor ki, us düzenini özel değişkenle birlikte uygulayın. İkinci bölüm, mutlu bilgisayar klavyesi için bize düzenini temel değişkenle birlikte söylüyor.

Bir çok parametreye dayanarak cihazları eşleştirebilirsiniz: xorg doc


geç cevabınız belki de geç bir yorum olabilir ... her ikisinde de "Happy Hacking Kbd" olarak tanıtıcınız var ... Sanırım bu muhtemelen bir hata, ilk InputClass Tanıtıcısının muhtemelen "Genel Klavye" olması gerekir
Daniel

1
@Daniel Tanımlayıcılar "Mutlu Hack Klavye" vs "Mutlu Hacked Klavye" aslında farklı, ama sadece biraz :)
zanegray

Doğru için teşekkürler! ... Kötü okuma gözlüklerimi suçluyorum:)> v
Daniel

... ama bu (klavyenin harika çalışması için, aynı zamanda geçiş yapabileceğiniz farklı düzenler de mümkün !, bizim gibi, ru, ua ve bir, de, cz, ua, ikinci klavyede) benim için değiştirmek bir şekilde orta fare düğümü öldürdü harici USB faremin Parazitin ne olduğuna bakmak
zorundayım

Bu çözüm benim için işe yararsa çok isterdim, ama işe yaramadı - belki de satıcı kimliğini doğrulayamadığım için? "Lsusb -v | grep -e idVendor" komutu bana "0x09da A4Tech Co., Ltd." verdi. bu yüzden çeşitli seçenekleri de denedim (hexcode olmadan, boşluk yerine alt çizgi gibi). Daha sonra "xinput list" ve "udevadm info" (A4TECH) aracılığıyla elde edilen satıcı kimliğini denedim. Hatta genel sayıdaki klavye yapılandırmasını içeren "/usr/share/X11/xorg.conf.d/40-libinput.conf" dosyasına sahip olduğum için 30 sayısını 50'ye kadar değiştirdim. Ama ben hiç bir türlü alamadım. Herhangi bir fikir lütfen? (Ubuntu 18.04)
Sadi

5

Setxkbmap işlevini -device argümanı ile değerlendirmek mümkün olabilir:

       cihaz cihazı
               Girilecek olan giriş aygıtının sayısal aygıt kimliğini belirtir.
               Yeni klavye düzeni ile güncellendi. Belirtilmezse,
               X sunucusunun çekirdek klavye cihazı güncellendi.

Ancak doğal olarak, şu anda denemek için ikinci bir klavyem yok.

-Bir Dvorak kullanıcısı


Hıh. -device 0 ikisini de değiştirir, -device 2 (Arkenklo'nun cevabına göre yerleşik klavye olmalıdır) en azından dizüstü bilgisayarımda ve USB klavyede hiçbir şey değiştirmez.
Tommy McGuire,

1

Bunu tam olarak istediğin gibi yapabileceğini sanmıyorum. Bildiğim iki seçenek var:

1) Basit bir fare tıklaması / tuşa basarak geçiş yapabilirsiniz.

Ubuntu / GNOME ile:

Fare tıklaması

Ubuntu / Gnome'da, giriş düzenlerinizi ayarlamanızı sağlayarak, panelinizdeki boş bir noktaya gidin, sağ tıklayın ve 'Panele Ekle'yi tıklayın. Bunu panele eklemek için 'Klavye Göstergesi'ni seçin. Bu, klavye düzeninizi belirten küçük bir metin parçası girmelidir ve değiştirmek için bunu tıklatabilirsiniz.

Klavye kısayolu

Sistem -> Tercihler -> Klavye -> Mizanpajlar -> Mizanpaj Seçenekleri

Orada bir seçenek var "Düzeni değiştirmek için anahtar (lar)". Normal klavye kısayollarını etkilememesi gereken Alt + Shift olarak ayarlayabilirsiniz.

Sanırım bunu yapmanın bir KDE yolu da var.

2) Diğer alternatif ise http://en.wikipedia.org/wiki/Xneur , ancak bunun İsveççe için uygun olup olmadığından emin değilim ve İngilizce'ye benzer yapıları olan diller için mümkün olmayabilir.

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.