Xmodmap komutum başlangıçta / girişte neden çalışmıyor?


10

Her giriş yaptığımda (veya işe yaramazsa her başlattığımda) bu komutu çalıştırmak istiyorum: xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'

Birçok şey denedim. Komutu girdim System > Preferences > Startup Applications. Bir .shdosyaya koydum , işaretledim chmod +xve o dosyayı koydum System > Preferences > Startup Applications. Senaryoyu girdim /etc/init.d. Komutları koydum ~/.profile. Hiçbir şey işe yaramıyor.

Sonunda, bu benim koymak ~/.profile:

touch test1
xmodmap -e 'keysym Delete = Menu' -e 'keysym Menu = Delete'
touch test2

Hem test1 hem de test2 oluşturulur, ancak anahtarlar yine de yeniden eşleştirilmez. Komutu kopyalayıp yapıştırıp manuel olarak çalıştırırsam iyi çalışır. Ancak girişte çalışmaz. Herhangi bir fikir?

Yanıtlar:


11

~/.profileoturum açma işleminin başında çalışır. Masaüstü ortamınız bir klavye düzeni yapılandırırsa, az önce yüklediğiniz ayarların üzerine yazabilir.

Ayarlarınızı şu adlı bir dosyaya yerleştirin ~/.Xmodmap:

keysym Delete = Menu
keysym Menu = Delete

Ubuntu 10.04'teki varsayılan Gnome ortamı altında, bir sonraki oturum açışınızda yüklenip yüklenmeyeceği sorulur ~/.Xmodmap. Yükleyin ve “Bana bir daha sorma” seçeneğini işaretleyin. Ardından .Xmodmap, varsayılan ayarlardan sonra uygulanır.


Teşekkürler, bu mükemmel çalıştı. Merakımdan, ileride bir süre için isteseydim, "bana bir daha sorma" seçeneğini işaretlediğim iletişim kutusuna nasıl geri dönebilirim?
Matthew

1
@Matthew: Test Edilmedi: Kaldırılacak girişi başlatın gconf-editor, göz atın /desktop/gnome/peripherals/keyboard/generalve düzenleyin . known_file_list.Xmodmap
Gilles 'SO- kötü olmayı bırak'

Bu soruyu ilk cevapladığınızda Ubuntu 10.10 beta sürümünde benim için çalıştı. Dün yeni bir Ubuntu 10.10 yüklemesi yaptım ve ana klasörüme aynı .Xmodmap dosyasını koydum. Tekrar giriş yaptığımda, .Xmodmap iletişim kutusunu yükledim ve daha önce olduğu gibi kutuyu işaretledim. Ama anahtarları yeniden eşleştiriyor gibi görünmüyor. Ben gconf kontrol ve .Xmodmap kesinlikle bilinen_dosya_listindedir. Herhangi bir fikir?
Matthew

Bu benim için de Gnome 3.10.1 / Archlinux üzerinde çalışmıyor. Gnome'un klavye düzenlerini yüklediği sırada bir şeyin ayarlanıp ayarlanmadığını merak ediyorum.
Caleb

Gnome 3.10 artık ~ / .xmodmap yüklemiyorsa, bbs.archlinux.org/viewtopic.php?pid=1194968#p1194968 adresinde çalışan bir çözüm buldum : Gnome'un klavye eklentisini devre dışı bırak. $ gsettings set org.gnome.settings-daemon.plugins.keyboard active false
plnx

2

Yukarıda belirtilen Gconf-Editor'de, revize edilmiş klavye düzeninizin adının bir kez "bilinen_dosya_listesi" ve bir kez de "update_handlers" altında görünmesi gerektiğini buldum. Ubuntu'nun neden ikinci girişi koyduğuna ve bazen yapmıyorsa ...

Bu arada, birçok araştırmadan sonra Sol Windows anahtarını yeniden atamak için yukarıdaki tweak'i kullandım. Sol Ok tuşunu çoğaltmak için kendi klavye düzenime aşağıdaki ifadeyi koydum: -

anahtar kodu 133 = 0xFF51

(Xev'e gidip önce bir tuşa sonra diğerine basarak bunların sizin için doğru kod olup olmadığını kontrol edin.)

Bu sadece küçük bir nokta, ama internetteyken bana uygun bir "Geri" tuşu verir - Sol el ile Alt + Win. Bakmadan yapabilirim.


1
Alan şöyle yazdı: "Gconf-Editor'de yukarıda belirtilen yerde, gözden geçirilmiş klavye düzeninizin adının iki kez, bir kez" bilinen_dosya_listesi "ve bir kez de" update_handlers "altında görünmesi gerektiğini buldum. Alan'ın doğru olduğunu teyit edebilirim. Ubuntu 10.10'da, ~ / .Xmodmap dosyanızın etkili olması için, ".Xmodmap" ifadesinin hem "bilinen_dosya_listesi" hem de "desktop_ gnome / peripherals / keyboard / general" altında gconf içinde görünmesi gerekir -editör. Teşekkürler Alan.

1

Bazı sistemler adında bir dosya arar ~/.Xmodmapve orada bulunan komutları yürütür. Şu satırları bu dosyaya koymayı deneyin:

keysym Delete = Menu
keysym Menu = Delete
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.