Putty SSH: CTRL + Cursor keys ไม่ทำงานข้ามไปยังคำก่อนหน้า / ถัดไป


29

เมื่อฉันเชื่อมต่อกับเซิร์ฟเวอร์ Ubuntu dev ในพื้นที่ของฉันพร้อมผงสำหรับอุดรู (จากกล่อง Windows 7 ของฉัน) ผ่าน SSH คีย์ผสมต่อไปนี้ไม่ทำงานเพื่อเลื่อนเคอร์เซอร์ไปข้างหน้าและข้างหลังในขอบเขตของคำ:

  • Ctrl+ Left Arrowบนแผ่นเคอร์เซอร์
  • Ctrl+ Right Arrowบนแผ่นเคอร์เซอร์

เคอร์เซอร์จะย้ายครั้งละหนึ่งอักขระเท่านั้น ฉันใช้ทุบตี


bash ใช้การผูกปุ่ม Emacs เป็นค่าเริ่มต้นดังนั้นAlt+BและAlt+Fจะเลื่อนไปข้างหน้า / ข้างหลังหนึ่งคำ คุณสามารถเปลี่ยนเป็นการเชื่อมโยง vi หากคุณต้องการและเคลื่อนไหวโดยw
phuclv

คำตอบ:


42

เพิ่มสองบรรทัดเหล่านี้ไปยัง~/.inputrcไฟล์ของคุณบนเครื่องปลายทาง:

"\eOD": backward-word
"\eOC": forward-word

เพื่อให้แน่ใจว่าเป็นลำดับที่ถูกต้องที่พรอมต์ Bash พิมพ์Ctrl- V Ctrl- LeftArrowและCtrl- V Ctrl- RightArrowคุณควรเห็น:

^[OD^[OC

เมื่อคุณเริ่มเซสชันใหม่, คีย์จะสามารถใช้ได้หรือคุณสามารถกดCtrl- xCtrl- rอีกครั้งอ่าน~/.inputrcไฟล์สำหรับเซสชันปัจจุบัน


กลอุบายที่คล้ายกันนี้สามารถใช้ลบคำทั้งหมดได้หรือไม่
Casebash

@Casebash: พยายามbind -P | grep kill-wordแสดงการเชื่อมโยงคีย์ที่มีอยู่สำหรับการลบทั้งคำ คุณสามารถเปลี่ยนการผูกในลักษณะที่คล้ายกับคำตอบของฉันด้านบนหากจำเป็น
หยุดชั่วคราวจนกว่าจะมีการแจ้งให้ทราบต่อไป

ฉันสังเกตเห็นว่า OpenSuSE (12.3) ผูกลำดับเหล่านี้ไว้แล้วbackward-charและforward-charแทนที่จะเพิ่มบรรทัดเหล่านี้ฉันต้องแทนที่บรรทัดที่มีการผูกไว้แล้ว
palswim

ที่ดี! ทำงานสำหรับ Ubuntu 14.04 สำหรับฉันและผงสำหรับอุดรูของฉันทำงานบนกล่อง Windows 7
Edwin Yip

ไม่ทำงานกับ Putty ใน win10
nZeus

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