Tombol AltGr tidak berfungsi dengan Ubuntu di VirtualBox

8

Saya baru saja menginstal VirtualBox (dari Oracle) di Windows 7, dan menciptakan mesin virtual dengan Ubuntu terbaru.

Di sini, di Firefox saya dapat menggunakan tombol Ctrl kiri, sedangkan yang kanan tidak memiliki efek apa pun. Namun, saya tidak dapat menggunakan tombol AltGr (juga dikenal sebagai Alt Kanan) untuk menghasilkan kurung kurawal seperti {} (saya menempelkannya melalui Ctrl V).

Di jendela terminal saya bisa mengganti "Metode input" ke "Multipress", dan kemudian saya bisa menggunakan AltGr untuk mengetik misalnya {}, yang merupakan cara saya menghasilkan karakter tersebut untuk posting ini. Namun, dengan "Multipress" tombol Ctrl tampaknya tidak berpengaruh apa pun. Jadi, untuk misalnya, ketik Ctrl DI harus klik kanan dan alihkan "Metode input" ke "Sistem (IBus (Intelligent Input Bus))". Maka AltGr tidak berfungsi.

Saya mencoba menentukan kunci penulisan di tata letak keyboard pengaturan sistem.

Dengan itu, Ctrl atau AltGr tidak berfungsi.

Inilah yang dilaporkan xmodmap:

[~]
$ xmodmap -pke | kontrol grep -i
keycode 37 = Control_L NoSymbol Control_L
keycode 105 = Control_R NoSymbol Control_R
[~]
$ xmodmap -pke | grep -i alt
keycode 64 = Alt_L Meta_L Alt_L Meta_L
keycode 204 = NoSymbol Alt_L NoSymbol Alt_L
[~]
$ _

Bagaimana saya bisa memperbaikinya?

Info tambahan: keyboard adalah keyboard PC standar, Logitech K120, dengan tata letak Norwegia.

Juga, saya pertama kali mencoba menanyakan pertanyaan ini di situs Superuser tetapi tidak ada respons setelah 2 hari ...

Alf P. Steinbach
sumber
Saya mendapatkan kunci AltGr yang berfungsi di Ubuntu. Saya hanya harus tahu bahwa saya harus membuat file bernama ".Xmodmap" dan menambahkan baris ini: "keycode 113 = Mode_switch Multi_key". Yang saya temukan dalam laporan bug tentang masalah serupa, di bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/349487/…
Alf P. Steinbach

Jawaban:

5

Jalankan perintah xev. Di jendela xev, tekan AltGrtombol. Anda akan melihat sesuatu seperti

KeyPress event, serial 29, synthetic NO, window 0x6400001,
    root 0x105, subw 0x0, time 966635535, (243,-207), root:(1891,26),
    state 0x0, keycode 66 (keysym 0xff7e, Mode_switch), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

Perhatikan kode kunci; karena kuncinya tidak melakukan apa yang Anda inginkan, Anda akan melihat sesuatu yang lain (mungkin Alt_R) alih-alih Mode_switch. Anda ingin menetapkan kode kunci ini Mode_switch, yang merupakan nama X11 untuk AltGr. Masukkan perintah berikut dalam file bernama .Xmodmap(catatan modal X) di direktori home Anda:

keycode 66 = Mode_switch

Selain itu, Anda mungkin perlu menetapkan pengubah untuk Mode_switch, tetapi jika semua yang terjadi adalah perbedaan kode kunci sudah akan ada satu. Lihat Menyetel kunci untuk huruf Spanyol untuk informasi lebih lanjut.

Jalankan xmodmap ~/.Xmodmapuntuk menguji file Anda. Pada banyak sistem, termasuk Ubuntu 10.04, file ini dimuat secara otomatis di lingkungan Gnome default. Pada distribusi atau lingkungan lain, Anda mungkin perlu menunjukkan secara eksplisit bahwa Anda ingin menjalankan xmodmap ~/.Xmodmapketika Anda masuk.

Gilles 'SANGAT berhenti menjadi jahat'
sumber
Ini adalah jawaban yang menarik, menggunakan keycode 66. Dalam komentar saya sebelum Anda memposting jawaban ini, saya mencatat bahwa keycode 113, yang baru saja saya salin dan tempelkan dari internet, berfungsi untuk baris itu. Sekarang ketika saya menjalankan xevseperti yang Anda sarankan, ia melaporkan kode kunci 108. Namun baris yang saya salin dari internet berfungsi. Jadi tampaknya tidak ada hubungannya dengan kode kunci. Saya mengubahnya menjadi 66, hanya untuk bersenang-senang, dan reboot: itu masih berfungsi. Jadi saya menyimpulkan itu bukan sesuatu yang akurat secara teknis sama sekali, tetapi ternyata Heisenbug di Ubuntu.
Alf P. Steinbach
@ AlfP.Steinbach Kode kunci ditentukan oleh perangkat keras Anda (atau emulator perangkat keras, dalam VM) dan oleh versi kernel dan X server Anda. Pada keyboard PC, tombol Alt kanan memiliki kode kunci 113 pada distribusi Linux yang lebih lama dan 108 pada yang lebih baru (contoh saya dengan 66 adalah karena saya memiliki AltGr pada tombol Caps Lock). Saya bertanya beberapa waktu yang lalu bagaimana cara secara otomatis menentukan apakah saya memiliki sistem "lama" atau "baru" mengenai penugasan kode kunci.
Gilles 'SANGAT berhenti menjadi jahat'
Yah, masih berfungsi setelah mengganti nama file itu dan me-reboot. Dan terminal masih mengingat riwayat perintah lama setelah reboot. Dengan keadaan dinamis konyol yang terus-menerus seperti itu, saya pikir pasti agak sulit untuk memburu bug: mereka tidak dapat diperbanyak secara andal dalam lingkungan yang mengganggu. Saya pikir bukti lebih lanjut tentang itu adalah bagaimana bug tentang AltGr telah hilang: ditutup sebagai terselesaikan, dibuka kembali, ditutup sebagai terselesaikan, dibuka kembali, seterusnya dan seterusnya. Jadi saya pikir itu akan menjadi Ide Yang Baik (TM) untuk menghukum dengan berat orang yang memperkenalkan pengaturan & status kegigihan itu. :-)
Alf P. Steinbach