Saya membuat ~/.Xmodmap
file berikut sesuai jawaban ini .
keysym Delete = Menu
keysym Menu = Delete
clear Lock
keycode 0x42 = Escape
Dengan kata lain, tukar Delete
dan Menu
, dan buat Caps Lock
tambahan Escape
.
Lain kali saya masuk, Ubuntu bertanya apakah saya ingin memuat ~/.Xmodmap
seperti yang diharapkan. Saya memuatnya, tetapi tidak ada yang terjadi (saat itu atau pada login berikutnya). Jika saya menjalankan secara manual xmodmap ~/.Xmodmap
, ini berfungsi seperti yang diharapkan.
Saya tahu ini bekerja pada versi awal 10.10 beta, tetapi gagal pada pemasangan baru 10.10 saya. Saya belum mencoba sesuatu yang lebih awal dari 10,10. Ada ide?
Sunting: Saya memasukkan beberapa pernyataan debug /etc/gdm/Xsession
untuk memastikan ~/.Xmodmap
memuat, dan semuanya secara ajaib mulai berfungsi. Saya tidak mengubah apa pun kecuali menambahkan beberapa gema, dan itu masih berfungsi sekarang setelah saya mengembalikan perubahan dan memulai kembali. Hal teraneh yang pernah saya lihat.
Satu hal yang saya sadari adalah bahwa "remap Caps Lock to Escape" dari Xmodmap selalu berfungsi. Hanya pertukaran Delete / Menu yang gagal. Saya akan membiarkan pertanyaan ini terbuka untuk saat ini jika ada orang lain yang memiliki masalah yang sama, karena saya tidak benar-benar tahu mengapa masalah itu berhenti.
Jawaban:
Saya tahu ini konyol, tetapi sebagai solusi Anda bisa memulai sendiri
xmodmap ~/.Xmodmap
.Anda juga dapat memeriksa
/etc/gdm/Xsession
barisusermodmap="$HOME/.Xmodmap"
dan jika tidak ada tambahkan saja di akhir file. Jika Anda adalah satu-satunya pengguna sistem, cukup masukkan perubahan Anda/etc/X11/Xmodmap
.sumber
Settings->Session and Startup
, atau sesuatu di sepanjang baris itu.Terlambat ke pesta, tapi ini membuatku gila juga; dan, keras kepala seperti saya, menyerah bukanlah pilihan.
Pada dasarnya ini yang saya coba, (sebagai pengguna saya, atau root jika perlu)
(Sebenarnya, menambahkan
xmodmap
perintah untuk~/.bashrc
bekerja, tetapi perlu memulai terminal setiap kali setelah login)Beberapa tahun yang lalu (?),
xkb
Dipilih untuk menangani pemetaan kunci dan konfigurasi (berinteraksi dengan X), tetapixmodmap
mungkin juga meminta perubahan terkait kunci ke X, setelahxkb
melakukan tugasnya selama inisialisasi sesi X.Masalahnya adalah kapan pengaturan xmodmap ini terjadi?
Ini tampaknya file-file di atas diproses terlalu dini dalam proses, dan baik X tidak siap untuk menerima xmodmap perubahan, atau xkb akan menimpa mereka.
Catatan: Saya menambahkan beberapa "pelacakan" ke file-file ini untuk memastikan mereka benar-benar berjalan pada suatu waktu!
Sebuah solusi yang sepertinya berhasil
Saya tidak ingin menambahkan
.desktop
file pada awalnya (skrip satu baris sederhana harus cukup), tapi itu berhasil, jadi ini dia.Solusi berasal dari Cara memetakan atau menukar tombol keyboard khusus di Linux? "solusi 1"
Pada dasarnya buat
~/.config/autostart/my-xmodmap.desktop
file, dan masukkan:ganti
me
dengan nama pengguna Anda (perhatikan bahwa saya tidak repot-repot untuk mencoba~/
atau$HOME
yang mungkin berfungsi sama baiknya di tempat/home/me
, dan path lengkap xmodmap kemungkinan tidak diperlukan ...), dan tambahkan bit execPerintah xmodmap harus ada dalam
~/.Xmodmap
file dalam kasus ini (atau gunakan-e
opsi, atau pilih nama file lain!). Logout dan kembali.Perhatikan bahwa Anda dapat membuat program awal dari "Aplikasi Startup".
Solusi lain adalah dengan melupakan xmodmap dan belajar cara mengonfigurasi
xkb
!Edit (lagi)
Kadang-kadang, mungkin 25% dari login,
xmodmap
masih sepertinya tidak berfungsi - sementara perintah itu benar-benar dijalankan (pelacak membuktikan itu). Satu-satunya kesimpulan yang mungkin saya temui pada saat ini adalah bahwaxkb
prosesnya berjalan terlambat dalam proses masuk, dan mungkin berakhir setelahxmodmap
dijalankan. Sepertinya kondisi perlombaan ... Jadi, akhirnya, saya mengubahexec
baris file desktop autostart ke(perhatikan
&
)mystart
adalah skrip di direktori baru yangbin
saya buat yang berisidan
Script tidur 5 detik sebelum menjalankan xmodmap, dan melacak ketika itu berjalan (dalam file
/tmp/xmodmap-has-run
).Semoga itu saja!
sumber
Inilah, mungkin jawaban yang lebih baik: http://cweiske.de/howto/xmodmap/ar01s06.html
Anda mungkin harus mengubah sedikit agar berhasil untuk Anda, tetapi instruksinya ada di sana.
sumber
/etc/gdm/Xsession
), baris yang dikatakan menambahkan sudah ada di dalamnya.Mungkin Anda memiliki kesalahan sintaksis dalam
~/.Xmodmap
file Anda ?Coba jalankan:
Itu harus memunculkan kesalahan jika ada.
sumber
Saya memiliki masalah aneh yang sama, mencoba memulai Xmodmap saya saat masuk dalam sesi saya (ubuntu 13.04). Saya akhirnya membuatnya bekerja dengan file .xinitrc di folder Home saya di mana saya meletakkan perintah saya, tetapi dengan jalur absolut untuk itu, yaitu:
/ usr / bin / xmodmap /home/MYNAME/.Xmodmap
Kemudian saya harus reboot (bukan hanya relog) sehingga akan dieksekusi.
sumber