Ctrl-e และ Ctrl-a ไม่ทำงานบน Ubuntu Hardy หรือไม่


13

ฉันใช้ Mac ดังนั้นฉันจึงไม่มีHomeและEndแป้นบนแป้นพิมพ์ ฉันยัง SSH เซิร์ฟเวอร์ Linux ค่อนข้างน้อย ฉันพบว่าเมื่อฉัน SSH ไปยังเซิร์ฟเวอร์ Ubuntu Linux ที่ใช้ Jaunty ฉันสามารถใช้การโยงคีย์ - การผูกCtrl- aและCtrl- eเพื่อเลื่อนเคอร์เซอร์ไปที่จุดเริ่มต้นหรือจุดสิ้นสุดของบรรทัด แต่มีเซิร์ฟเวอร์ Hardy สองสามตัวที่ฉันมักจะ SSH ไปยังและการเชื่อมโยงคีย์เหล่านั้นไม่ทำงานเมื่อเชื่อมต่อกับพวกเขา

ฉันได้ลองเชื่อมต่อกับพวกเขาจากกล่อง Linux แทนในกรณีที่มันเป็นสิ่งที่ต้องทำเกี่ยวกับวิธีการกำหนดค่า Mac Terminal ของฉันและฉันเห็นผลลัพธ์เดียวกัน

ไม่มีใครมีความคิดว่าทำไมและวิธีการแก้ไขปัญหานี้หรือไม่

คำตอบ:


22

เป็นความคิด แต่ลองป้อนสิ่งนี้และลองคำสั่งอีกครั้ง:

set -o emacs

หากใช้งานได้ให้ตั้งค่าในไฟล์ ~ / .bashrcเพื่อโหลดโดยอัตโนมัติ

หากคุณต้องการ vi (m) คุณสามารถทำได้:

set -o vi

อย่างไรก็ตามโปรดทราบว่าการเชื่อมโยง vi ยังไม่เสร็จสมบูรณ์เท่ากับ emacs


4

พบคำตอบ! /etc/bash.bashrc มีset -o viอยู่ในนั้นซึ่งด้วยเหตุผลบางอย่างทำให้ Ctrl-e และ Ctrl-a ไม่ทำงาน


5
set -o viคำสั่งทำให้ทุบตีใช้ผูกเป็นกลุ่ม ค่าเริ่มต้นคือการผูกสไตล์ Emacs ดังนั้นจึงไม่ใช่ "ด้วยเหตุผลบางอย่าง" แต่จะset -o viเรียกใช้ชุดตัวเลือก Readline ที่แตกต่างกันโดยสิ้นเชิง ดูคำตอบของฉันสำหรับวิธีการเปิดใช้งานได้ทันที
Telemachus

1
ยอดเยี่ยมขอบคุณ ฉันตระหนักว่า Bash ถูกตั้งค่าให้ใช้การเชื่อม vi แต่ไม่ได้คาดหวังว่าจะป้องกัน Ctrl-a และ Ctrl-e จากการทำงาน ฉันไม่ได้ตระหนักว่าวิธีการปิดการเชื่อม vi คือการตั้งค่าการผูก emacs
Richard Turner
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.