ใน OSX ฉันสามารถoptionกดปุ่มค้างไว้และกดปุ่มเคอร์เซอร์ซ้ายจนกว่าฉันจะไปถึงคำที่ฉันต้องการแก้ไข (หรือใน Vi ฉันสามารถกดbได้ แต่ฉันไม่สามารถหาวิธีการทำสิ่งนี้ได้ใน Terminal ยัง ...
ใน OSX ฉันสามารถoptionกดปุ่มค้างไว้และกดปุ่มเคอร์เซอร์ซ้ายจนกว่าฉันจะไปถึงคำที่ฉันต้องการแก้ไข (หรือใน Vi ฉันสามารถกดbได้ แต่ฉันไม่สามารถหาวิธีการทำสิ่งนี้ได้ใน Terminal ยัง ...
คำตอบ:
ในการตั้งค่าการเชื่อมโยงคีย์: ก่อนอื่นคุณต้องค้นหารหัสคีย์ที่ลำดับCtrl+ Leftคีย์สร้างขึ้น เพียงใช้คำสั่งcatเพื่อปิดการรบกวนใด ๆ กับการผูกคีย์ที่มีอยู่แล้วพิมพ์ลำดับของคีย์ ในระบบของฉัน (Linux) ดูเหมือนว่า:
$ cat
^[[1;5D
กดCtrl+ dเพื่อออกจากแมว ตอนนี้คุณได้ค้นพบแล้วว่า Ctrl-Left ใช้รหัส 6 คีย์
ตอนนี้คุณสามารถออกคำสั่ง bind ได้:
bind '"\e[1;5D": backward-word'
backward-wordฟังก์ชั่นทุบตีที่คุณต้องการคือ คุณสามารถเรียกใช้bind -q backward-wordเพื่อรับรายการคีย์ที่ผูกไว้กับฟังก์ชันนั้น การรวมทั่วไปอย่างหนึ่งคือEsc+b
นอกจากนี้เทอร์มินัลจำนวนมากสนับสนุนCtrl+ Left(ปุ่มลัดเดียวกับที่คุณสามารถใช้ใน X เพื่อข้ามไปข้างหลังด้วยคำ)
backward-word can be invoked via "\eb".แต่ฉันจะผูกส่วนควบคุม + ซ้ายแทน Esc + b ได้อย่างไร นอกจากนี้ข้อเสียเปรียบอย่างหนึ่งของ Esc + b ที่ฉันเห็นอยู่แล้วคือฉันต้องละทิ้งคีย์ Esc ทุกครั้งที่ฉันสามารถย้อนกลับคำได้ไม่มีวิธีที่ดีกว่านี้หรือไม่
set editing-mode vi:)
ทางลัดเริ่มต้นที่สำคัญในการทุบตีสำหรับbackword-wordเป็น+Alt bผลเดียวกันสามารถ achived กับ+Esc bคุณควรลองก่อนที่จะแก้ไขการโยงคีย์ของคุณ
ใช้bindคำสั่งเพื่อแก้ไขหรือbind -q [name]เพื่อรับ keybind ปัจจุบันของการกระทำที่เฉพาะเจาะจง
Alt + f