ใช้ Ctrl หรือ Alt AND backspace เพื่อลบคำสุดท้ายใน Bash


17

ใน Linux ฉันเคยกดCtrl- Backspaceเพื่อลบคำสุดท้าย แต่ฉันไม่รู้วิธีการทำในเทอร์มินัล Bash

ใน OS XI ใช้Alt- Backspaceเพื่อทำสิ่งเดียวกัน

มีวิธีใดบ้างในการทำให้ Bash จดจำการผสมผสานคีย์- CtrlหรือAlt- Backspaceเพื่อลบคำสุดท้าย?

ใน Linux ผมใช้terminatorเป็นจำลอง terminal ใน OSX iTerm2ผมใช้


1
Alt-⌫ aka Alt- ← aka Alt-Backspace ใช้ได้ดีสำหรับฉัน ฉันใช้ Terminator 0.93
เท็ดดี้

คำตอบ:


31

คุณสามารถใช้-Ctrl Wมันจะลบคำก่อนเคอร์เซอร์และทำงานในทุก Bash

ดูที่นี่สำหรับรายชื่อของแป้นพิมพ์ลัดทุบตี


1
ว้าวนี่อาจเปลี่ยนวิธีใช้เทอร์มินัลตลอดไป ขอบคุณ!
David

4
สิ่งนี้ไม่ตอบคำถาม
Sel

5

คุณเพียงแค่ต้องตั้งค่าOption เป็นเมตาคีย์ในการตั้งค่าของ iTerm ( โปรไฟล์»คีย์ )

backward-kill-wordถูกผูกไว้กับMeta-Rubout(เช่น Opt-Backspace) โดยค่าเริ่มต้น

มีตัวเลือกเดียวกัน (แม้ว่าจะมีความยืดหยุ่นน้อยลง) ใน Apple Terminal.app


2
ที่จริงแล้วคุณต้องใช้การตั้งค่า "+ Esc" เพียงตั้งค่าเป็น "ทำหน้าที่เป็น: Meta" ผลลัพธ์ใน?การพิมพ์แทนที่จะเป็นคำที่ถูกลบ
slhck

@slhck ไม่ใช่สำหรับฉัน แต่เนื่องจากนักพัฒนาซอฟต์แวร์แนะนำต่อไปมันคงไม่ใช่เรื่องเลวร้าย
Daniel Beck

2

ในเทอร์มิเนเตอร์คุณสามารถใช้ " ปลั๊กอิน " ต่อไปนี้พร้อมกับ

[keybindings]
    kill_word = <Control>BackSpace

ในไฟล์ปรับแต่งของคุณ นี่จะแม็พCtrl- BackspaceกับESCDELอีกหนึ่งชอร์คัตเพื่อลบคำสุดท้าย


น่าเสียดายที่สิ่งนี้หยุดทำงานใน terminator 1.9 คุณช่วยแก้ไขโดยบังเอิญได้ไหม?
Sel

1
ขออภัยหยุดใช้ terminator นานมาแล้ว ...
OlivierBlanvillain

2

คุณสามารถสร้างไฟล์.inputrcในโฮมไดเร็กตอรี่ของคุณและเพิ่มเนื้อหานี้ภายใน:

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

1
โปรดทราบว่าสิ่งนี้และC-wในคำตอบที่ยอมรับแตกต่างกันไปตามสิ่งที่ถือว่าเป็น "คำ" C-wจะลบออกจากตำแหน่งเคอร์เซอร์จนกว่าจะพบอักขระที่ไม่ใช่ช่องว่างจากนั้นช่องว่าง (เช่น"this is a/se=weird |test"ที่|ทำเครื่องหมายตำแหน่งเคอร์เซอร์จะให้ผลผลิต"this is test") ในทางตรงกันข้ามการC-hผูกที่นี่ (ซึ่งสามารถผูกไว้ใช้bind '"\C-h": backward-kill-word"ใน.bashrc) จะให้ผล"this is a/se= test"ตามที่เป็นพื้นคั่นคำในสิ่งที่ตัวแปรทุบตีจะไม่เพียงแค่ช่องว่าง
jeremysprofile

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.