Alt anahtarı emac'lara Meta olarak göndermek için xterm nasıl yapılır?


9

Bu sorunun birçok kez sorulduğunu görüyorum . Orada verilen çözümler kurulumum için geçerli görünmüyor. İşte benim hikayem:

Xmonad (gnome üzerinde değil) ile ubuntu 12.0.04 LTS kullanıyorum ve işim için xterm kullanıyorum. Farklı bir terminal veya emacs kendi penceresi yerine xterm kullanmayı tercih ederim. Emacs -nw kullanırken Alt'ın tanınmadığını görüyorum. Xev kullanarak Alt'ın gerçekten oluşturulduğunu doğruladım. Ayrıca, rxvt kullanıyorsam Alt'ın emacs -nw tarafından tanındığını görüyorum. (Uzun süre vim kullanıcısı ve bir emacs newbee olarak) kötü mod kullanıyorum ve gerçekten alt (ki başka bir iş parçacığında verilen çözüm) kaçış anahtar ribaund sahip değil tercih ederim. Ne yapmalıyım? (Eğer yardımcı olursa, emacs olmadan xterm penceresindeki Alt-x "ø" oluşturur veya çalıştırırsam emacs -nw -Q).


Yanılmıyorsam Alt onun yerine M olarak okunuyor.
Braiam

Anlamadım, Meta'dan ziyade M demek istiyorsun değil mi? Neden öyle diyorsun?
rahul

Emacs Meta anahtarı. Mx tuşuna basamaz mısınız?
Braiam

Benim sorunum bu. Alt-x'in Mx üretmesini bekledim (grafik modda olduğu gibi) ama bunu benim için xterm'de yapmaz. Bunun yerine (ø)
rahul

Yanıtlar:


13

Arch Wiki'de görüldüğü gibi , programa doğru kaçan anahtarı göndermek için Xterm yapmanız gerekir:

AltKlavye kısayolları için tuşu kullanırsanız, kaynak dosyanızda buna ihtiyacınız olacaktır:

XTerm*metaSendsEscape: true

Yani, sadece şunu yapın:

echo 'XTerm*metaSendsEscape: true' >> ~/.Xresources

Ve Xterm oturumunuzu yeniden başlatın.


Teşekkürler, işe yaradı. Peki, eğer Alt şimdi kaçış gönderirse, xterm Escape'i nasıl ele alır? (Kaçış da işe yarıyor, anlayışımı istiyorum.)
rahul

@rahul Ben "Esc" kaçış demedim, ama tuşa basın "^ M" kaçtı
Braiam

5
oturumunuzu yeniden başlatmak yerine, koşabilirsinizxrdb -merge ~/.Xresources
Christian Fritz


1

Kaynak dizesini doğrudan komut satırı seçeneği olarak sağlayarak .Xdefaults/ .Xresourcesdosyalarınızı yönetmenin ilginç bir alternatifi vardır xterm:

xterm -xrm 'xterm*VT100.metaSendsEscape: true'

Bu, örneğin, x-terminal-emulatoryine de için özel bir takma adınız varsa kullanışlıdır .

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.