Sanal Konsolların Alt-Arrow geçişini nasıl devre dışı bırakabilirim?


36

Aşağıdaki farklı Linuclarda olur:

Sanal bir konsoldayken, sanal ttys döngüsünü basılı tutun veya veya Alttuşuna basın . Bu anahtar combo kullanan balık kabuğu kullandığım için bu gerçekten can sıkıcı bir durum. Ben olabilir balığın kısa yollar yeniden eşleştirmek, ama ben istemiyorum. Bunun yerine linux işlevini devre dışı bırakmak veya yeniden eşleştirmek istiyorum.

Tty-cycling-key-combo'yu nasıl devre dışı bırakabilir veya değiştirebilirim?


2
Size yardımcı olabilecek bir cevap: superuser.com/questions/290115/…
Didi Kohen

Yanıtlar:


14

loadkeysLinux konsolunda tuşları eşlemek için komutu kullanabilirsiniz . Aşağıdaki satırlar konsolları değiştirmek için kullanılan tuş bağlarını tanımlar (bir PC klavyesinde):

alt keycode 105 = Decr_Console
alt keycode 106 = Incr_Console

Balıkların tanıdığı bir kaçış dizisi ile bu bağları geçersiz kılan kendi keymap dosyanızı yükleyin. Bir anahtarın bir kaçış dizisi göndermesini sağlamak için, onu formun bir anahtar adına bağlamanız ve bunun için bir karakter dizisi tanımlamanız gerekir .FNUMBERFNUMBER

alt keycode 105 = F105
alt keycode 106 = F106
string F105 = "\033\033[D"
string F105 = "\033\033[C"

Farklı dağıtımlar (ve bazen konsol desteği için farklı paketler) sistemin önyükleme zamanı anahtar haritasını altındaki farklı konumlarda saklar /etc. *.kmapVeya adlı bir dosya arayın *.kmap.gzya *.mapda *.map.gzaltında /etcya da dağıtımınızın kılavuzuna bakın. Bazı dağıtımlar bir anahtar haritanın adını /etcbunun yerine kaydeder ve gerçek anahtar eşlemi başka bir yere koyar; keymap ile ilgili bir ayar /etc/sysconfigveya başka bir yapılandırma dizini için arayın .

Kendi ana haritanızı yazabilir ve include "/path/to/foo.map"sistem ana haritasına atıfta bulunmak için kullanabilirsiniz veya yalnızca önyükleme işlemi sırasında değiştirmek istediğiniz ayarları içeren kendi ana haritanızı yükleyebilirsiniz.


Uzantıdan emin misiniz .kmap? Fedora 20'de hiçbir dosya bulamadım, ancak diğer taraftan buldum /lib/kbd/keymaps/legacy/i386/qwerty/us.map.gz.
Cristian Ciupitu

@CristianCiupitu Benim hatam, bunun yapılabileceği başka yollardan da bahsetmeliydim. Fedora'da /etc/sysconfigbaşlangıçta yüklenecek keymap dosyasının adını belirleyen bir ayar olduğunu düşünüyorum .
Gilles 'SO- kötülük yapmayı bırak'

Kurulumu yapmalı mıyım dumpkeys, saklamalı, değiştirmeli ve değiştirmeli /etc/sysconfigmiyim? Bu ısrarcı olur mu?
Max Ried,

@Gilles, belki systemd-vconsole-setup.service ve [vconsole.conf] ( freedesktop.org/software/systemd/man/vconsole.conf.html ) ' ın man sayfaları bu konuya ışık tutabilir.
Cristian Ciupitu

@MaxRied İki ayrı tutmanızı tavsiye ederim, bakımı daha kolay olacaktır. Referansı standart tuş haritasına /etc/sysconfigbir includeyönerge içeren bir dosyaya değiştirin .
Gilles 'SO- kötü olmayı bırak'

44

İşte bir defalık düzeltme:

sudo sh -c 'dumpkeys |grep -v cr_Console |loadkeys'

Bunu 'başlangıç ​​uygulamalarında' komut olarak eklemenizi öneririm.
Samy Bencherif

20

Tobu'nun cevabını, sadece gerekli olanları değiştirmeye yönlendirdim:

sudo sh -c 'dumpkeys -k|grep -v Incr_Console|grep -v Decr_Console|grep -v Last_Console|loadkeys'

Not: Bu, bir kereye mahsus bir düzeltme olduğu ve muhtemelen yeniden başlatılmadan sonra gideceği belirtildi.


1
İki düzeltme: 1. Yük tuşlarında bir sözdizimi hatası oluşmasını önlemek için yalnızca anahtar bağlamaları silin; 2. Ayrıca Last_Console'den (Alt + Tab) kurtulun: sudo sh -c 'dumpkeys | grep -v Incr_Console | grep -v Decr_Console | loadkeys' Bunun için çok teşekkürler!
Reuben Thomas

Önceki yorumuma ek olarak, Caps Lock ışığının hala açık ve kapalı olduğunu keşfettim (Caps Lock hala sistemimdeki Kontrol ile eşlenmiş olsa da). Bunu düzeltmek için, ilgili anahtar kodun tek eşlemesi olduğu için Caps_Lock içeren satırı filtrelemek işe yaramaz, bu nedenle filtrelenmiş eşleme listesi yeniden yüklendiğinde üzerine yazılmaz. Sonunda, en basit çözüm "iyi bilinen" bir anahtar haritayı atmak ve sonra bunu açıkça yüklemek oldu.
Reuben Thomas

14

Bazen Ubuntu 18.04 ile problem yaşadım:

sudo kbd_mode -s

İş yaptı. (en azından geçici olarak)

Uzun bir hata raporunu rampa panelinde bulabilirsiniz .


Bu nasıl çalışıyor? Denemekte tereddüt ediyorum çünkü man sayfası "Uyarı: klavye modunu ASCII ile Unicode arasında değiştirmek, muhtemelen klavyenizi kullanılamaz hale getirecek."
nshiff

1
Merhaba, bir link ekledim.
Rulo

Teşekkürler! Bu çalıştı. Bugs.launchpad.net/ubuntu/+source/console-setup/+bug/520546 adresinden "Evet, beni etkiler" i tıklamaya çalıştım ancak zaman aşımı hatası alıyorum. Nasıl düzeltileceği hakkında bir fikrin var mı?
6005

Sanırım geçici olmalı ya da hata raporlama sisteminin kendisi için bir hata raporu doldurmalısın! : p
Coil
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.