Saya memiliki keyboard standar dengan tombol angka di sisi kanan (saya kira itu disebut keyboard 104-tombol). Saya ingin menggunakan tombol angka hanya sebagai tombol angka. Itu berarti, saya tidak ingin NumLockmenghidupkan dan mematikan tombol angka.
Namun, kadang-kadang itu terjadi (saya tidak tahu caranya, mungkin oleh saya secara tidak sengaja menekan NumLocktombol) bahwa numlock dimatikan, dan saya harus menekannya lagi. Ini sangat menjengkelkan.
Apakah mungkin untuk menonaktifkan mematikan numlock?
Dengan kata lain: Saya ingin kunci numerik saya selalu bertindak sebagai tombol angka, dan untuk menonaktifkan sakelar numlock .
Saya menggunakan Debian dan LXDE (Openbox).
~/.config/openbox/autostart
dan~/.config/openbox/rc.xml
?xmodmap
. Hanya pertanyaan yang tersisa adalah bagaimana cara mendapatkan acara itu ......?Jawaban:
Setelah membaca semua jawaban di sini saya cukup terkejut melihat bahwa Anda dapat melakukan hal berikut.
Jadi setiap kali Anda menekan Num, yang menonaktifkan numlock. Itu akan mengeksekusi
numlockx on
, yang mengaktifkan kembali numlock.Nama itu berasal dari output saya
xev
yang memberi saya kode kunci 77 dan namanyaNum_Lock
Dalam kasus @MartinVegters ia perlu menunggu beberapa detik sehingga
numlockx on
pasti akan dieksekusi setelah acara Numditangani. Karena ada kondisi perlombaan antara penanganan numlock di kernel dan eksekusinumlockx
.Untuk kasus ini, Anda dapat menulis skrip kecil
denumlock.sh
sepertidan menggunakannya dalam Kunci mengikat
Ini kotor tetapi berhasil.
Apa yang saya rekomendasikan adalah yang tidak bisa saya uji sendiri. Anda sebaiknya mengikuti jawaban pertama yang menyarankan untuk digunakan
Tetapi untuk LXDE Anda perlu menggunakan mekanisme autostart LXDE yang berbeda dari cara Openbox mengedit
~/.config/openbox/autostart
.Di LXDE Anda tampaknya perlu mengedit
~/.config/lxsession/LXDE/autostart
atau menggunakan Lubuntu~/.config/lxsession/Lubuntu/autostart
, yang memegang perintah untuk memulai. (Lihat Arch docs dan LXDE docs ) Anda mungkin perlu membuat file itu dan menambahkan baris ini.Sayangnya, seperti yang saya katakan saya tidak dapat menguji apakah ini berfungsi, karena saya hanya memiliki VM yang berjalan dengan LXDE.
sumber
<keybind key="Num_Lock">
tetapi sayangnya itu tidak berhasil. Ketika perintahnumlockx on
dieksekusi, <kbd> NumLock </kbd> masih menjual fungsinya sebagai numlock. Jadi saya masih bisa mengaktifkan / menonaktifkan numlock.xmodmap
, ketika saya mencoba solusi yang disarankan oleh Risto Salminen, perintah itu berhasil, tetapi saya telah kehilangan semua ikatan utama saya.sleep 3; numlockx on
untuk mengikat kunci. Untuk solusi kedua, sudahkah Anda mencobanya dengan autostart?sleep 3; /usr/bin/numlockx on
tidak berhasil.NumLock
masih bertindak sebagai sakelar hidup / mati./usr/bin/numlockx on
berfungsi pada sistem Anda?Jika keyboard milik Anda (bukan majikan misalnya), cukup lepaskan dari keyboard secara fisik.
Anda masih dapat menekannya dengan hal yang runcing jika Anda benar-benar perlu melakukannya.
sumber
Di keyboard laptop saya (Ubuntu 10.04) kunci keyboard saat ini Hidup.
Voila! numlock sekarang dinonaktifkan.
Pasang kembali. (Mungkin mencari Num_lock akan menjadi ide yang lebih baik, tetapi Anda mendapatkan intinya).
Membalas komentar @Martin Vegter.
Oke , sebagai balasan atas komentar Anda, xmodmap merusak ikatan Anda, dimengerti.
Saya baru saja memeriksa Dokumentasi Openbox
Lihatlah ~ / .config / openbox / lxde-rc.xml
ls -l lxde-rc.xml
(apakah Anda memiliki rc.xml juga?, harap periksa).ambil salinannya sebagai cadangan
(gunakan editor) mencari numlock (mungkin nmlk).
Apakah Anda melihat sesuatu seperti ini?
Berikan komentar ATAU ubah Nilai kunci-kunci kunci ke alternatif, mis. Alt-Numlock untuk beralih
Misalnya
Untuk Berkomentar
atau
Ubah ke Alt + Numlock untuk beralih
simpan perubahan dan logout / login atau restart.
sumber
xmodmap
perintah (yaituxmodmap -e 'keycode 77 = Escape'
) menghancurkan ikatan-kunci saya yang ada yang didefinisikan dalam.config/openbox/lxde-rc.xml
.config/openbox/lxde-rc.xml
, tidak ada baris yang mengandungNumlock
atauNum_Lock
. Ketika saya membuat satu, itu tidak berpengaruh: <keybind key = "Num_Lock"> <action name = "Execute"> <command> / bin / true </command> </action> </keybind>Temukan kode kunci numlock Anda
xev
. Misalnya, di sini, Num_Lock adalah 77.Gunakan xmodmap untuk memetakan ulang kode kunci:
xmodmap -e 'keycode 77 = '
.Untuk semua sesi X mendatang, di dalam
~/.xprofile
tempatnyaxmodmap -e 'keycode 77 = '
.EDIT: Catatan: Tidak berfungsi jika perangkat lunak mengubah status Num Lock.
sumber
xmodmap -e 'keycode 77 = '
berhasil, tetapi menyebabkan masalah serius: semua ikatan kunci saya berhenti bekerjaxmodmap -e 'keycode 77 = Escape'
(YMMV, ESC tampaknya aman untuk saya). Apakah Anda memiliki file ~ / .Xmodmap? Jika ya, alih-alih~/.xprofile
, tempatkankeycode 77 = Escape
di akhir file ini.xmodmap
perintah (yaituxmodmap -e 'keycode 77 = Escape'
) menghancurkan ikatan-kunci saya yang ada yang didefinisikan dalam.config/openbox/lxde-rc.xml
Hapus saja pemetaan kunci NumLock dengan memetakannya menjadi nol: jalankan pertama
xev
dan tekan Num Lock (mungkin akan mencetak 77), dan kemudian jalankan perintah:di mana # adalah kode kunci NumLock.
Anda juga meletakkan ini
~/.xprofile
untuk menonaktifkan NumLock dalam sesi x.sumber
xmodmap -e "remove Lock = Num_Lock"
dengan LinuxMint 17.2 dan saya membayangkan versi lain dari Ubuntu Anda dapat pergi ke pengaturan KEYBOARD Anda dan kemudian LAYOUTS pada halaman itu Anda akan menemukan tombol "opsi" kecil.
Dari sana pergi ke "opsi kompatibilitas misc" dan periksa "kunci angka selalu masukkan angka"
Ini adalah penyelamat bagi saya. Itu mengganggu saya untuk mengetik nomor dan dipindahkan ke tempat lain di halaman. Tepuk tangan! ;)
sumber
setxkbmap -option numpad:mac
atau dengan menetapkanOption "XkbOptions" "numpad:mac"
dalamxorg.conf
.Jawaban lain di sini disarankan untuk digunakan
numlockx on
denganxmodmap -e 'keycode 77 ='
, tetapinumlockx on
tidak akan berfungsi pada sistem saya bersama denganxmodmap
perintah itu, menunjukkan kepada saya pesan kesalahan:Dan juga pengaturan
xmodmap -e 'keycode 77 ='
akan karena suatu alasan menghapus semua keybindings saya dibuat denganxbindkeys
.Namun, jawaban untuk pertanyaan serupa ini telah membantu saya. Bagian dari saya
~/.xinitrc
:Dengan cara ini, NumLock tidak melakukan apa-apa dengan sendirinya, tetapi jika ditekan dengan Shift, ia melayani tujuan aslinya (sebagian besar tidak berguna), dan yang paling penting itu tidak mencegah
numlockx on
dari bekerja pada sistem saya, atau mengacaukanxbindkeys
ikatan kunci saya .sumber
Cara lain, jika Anda ingin menonaktifkan numlockkunci, nonaktifkan secara permanen. Anda dapat melakukannya dengan memodifikasi file keymap Anda saat ini dengan memodifikasi kode kunci 77.
Tetapkan nilai ini ke "tidak ada", sehingga tekan tidak sengaja tombol tidak akan melakukan apa-apa.
Gunakan
numlockx
saat bootup untuk memulainya dan gunakan file keymap yang dimodifikasi di salah satu skrip awal, misalnya~/.bashrc
atau dalam/etc/profile
.CATATAN: Saya belum menguji ini, tetapi itu harus berhasil.
sumber
Pada OpenSuse 13.x dengan KDE, ini bekerja untuk saya:
Jika NumLock perlu diaktifkan karena tidak aktif, cukup gunakan
% numlockx on
.sumber
Solusi yang agak meretas adalah menambahkan
cron
pekerjaan yang menjalankan perintah berikutsetiap 30 detik atau lebih untuk mengaktifkan NumLock.
Lihat juga
sumber
Ini mungkin bukan solusi terbaik, tetapi ini berhasil bagi saya:
Di mana 11 adalah id dari keyboard Anda. Lakukan
xinput
daftar untuk menentukan id keyboard Anda (dalam kasus saya ini 11):Tentunya,
numlockx
harus dipasang agar bisa berfungsi.Penjelasan:
stdbuf -oL
memodifikasi operasi buffering dari aliran output ke line bufferedxinput test 11
mencetak tombol yang ditekan ke stdoutmawk -W interactive '$3==77 {printf "/usr/bin/numlockx on\n"}'
untuk setiap baris yang dicetak dan berisi 77 (tombol numlock), buat sebuah perintah/usr/bin/numlockx on
...| bash
... dan pipa itu ke bash untuk menjalankannya.Anda dapat memasukkan oneliner ini di salah satu skrip awal lingkungan desktop atau menjalankannya di latar belakang.
sumber
Saya juga ingin tombol angka keypad numerik selalu menjadi angka, tidak ada hal-hal KP _....
Solusi saya adalah bagian dari Remapping Apple Keyboard saya untuk digunakan dengan Linux repo .
Pada dasarnya, itu hanya memetakan ulang Num_Lock sebagai F20, dan angka-angka sebagai diri mereka sendiri.
Solusi ini selalu memberikan hasil yang diinginkan dan tombol fungsi tambahan sebagai manfaat pinggiran.
sumber
Buat skrip berikut dan buat agar dapat dieksekusi
chmod +x <filename>
Masukkan jalur file
.config/openbox/autostart
Atau letakkan sebagai tugas cron yang memeriksa setiap beberapa menit dan menjalankan skrip jika numlock mati.
Atau jalankan saja skrip dalam satu lingkaran.
Jika Anda tidak memiliki numlockx, Anda harus bisa mendapatkannya
sudo apt-get install numlockx
sumber