Bash'teki son sözcüğü silmek için Ctrl veya Alt AND backspace tuşlarını kullanma


17

Linux'ta son kelimeyi silmek için Ctrl- tuşuna basmaya alışkınım Backspaceama bunu Bash terminalinde nasıl yapacağımı bilmiyorum.

OS XI'de Alt- Backspaceaynı şeyi yapmak için kullanın .

Bash'in son kelimeyi silmek için Ctrl- veya Alt- Backspacetuş kombinasyonunu tanımasını sağlamanın bir yolu var mı ?

Linux'ta terminatorterminal emülatörü olarak kullanıyorum , OSX'te kullanıyorum iTerm2.


1
Alt-⌫ aka Alt- ← aka Alt-Backspace benim için mükemmel çalışıyor. Terminatör 0.93 kullanıyorum.
Teddy

Yanıtlar:


31

Her zaman kullanabilirsiniz Ctrl- W. İmlecin önündeki sözcüğü siler ve her Bash'de çalışır.

Bash klavye kısayollarının listesi için buraya bakın .


1
Vay canına bu terminali sonsuza kadar kullanma biçimimi değiştirmiş olabilir. Teşekkürler!
David

4
Bu soruya cevap vermiyor
Sel

5

İTerm'in tercihlerinde ( Profiller »Anahtarlar ) Option'ı Meta anahtarı olarak ayarlamanız yeterlidir .

backward-kill-wordMeta-Ruboutvarsayılan olarak (yani Geri Al) seçeneğine bağlıdır.

Aynı seçenek Apple'ın Terminal.app uygulamasında da (daha az esnek olsa da) var.


2
Aslında, "+ Esc" ayarını kullanmanız gerekir. Yalnızca "olarak davranır: Meta" olarak ayarlandığında ?, silinecek sözcük yerine yazdırılır.
slhck

@slhck Benim için değil. Ancak geliştiriciler yine de önerdiğinden, kötü bir şey olamaz.
Daniel Beck

2

Sonlandırıcıda aşağıdaki " eklentiyi " kullanabilirsiniz.

[keybindings]
    kill_word = <Control>BackSpace

yapılandırma dosyanızda. Bu eşler Ctrl- Backspaceiçin ESCDELBaşka kısayolunu son sözü silmek için.


Ne yazık ki bu sonlandırıcı 1.9'da çalışmayı durdurdu. Şans eseri bir düzeltme yapabilir misiniz?
Sel

1
Üzgünüz, terminatör uzun zaman önce durdu ...
OlivierBlanvillain

2

.inputrcAna dizininizde bir dosya oluşturabilir ve bu içeriği içine ekleyebilirsiniz:

"\C-h": backward-kill-word

1
Bu ve C-wkabul edilen cevapta "kelime" olarak kabul edilene göre farklılık gösterir. C-wdaha sonra bir boşluk olmayan uzay karakter karşılaşır ve dek imleç pozisyonundan silecektir (yani "this is a/se=weird |test"nerede |işaretleri imleç pozisyonu verecektir "this is test"). Aksine, buradaki C-hbağlanma ( bind '"\C-h": backward-kill-word"a kullanılarak bağlanabilen .bashrc) "this is a/se= test"temelde sadece boşluklar değil, bash değişkeninin ne olacağıyla ilgili sözcükleri sınırladığı için ortaya çıkacaktır.
jeremysprofile

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.