PuTTY - เมื่อกดลูกศรขึ้นเพื่อแสดงคำสั่งจากประวัติมันบังคับให้ฉันแก้ไขคำสั่งใน vi? วิธีการเปลี่ยน


0

เมื่อฉันอยู่ใน PuTTY และฉันรันคำสั่งเครือฉันมักจะต้องการใช้คำสั่งเดียวกับที่ฉันเพิ่งใช้ ดังนั้นฉันจึงกดลูกศร "ขึ้น" คำสั่งสุดท้ายปรากฏขึ้นแล้ว แต่ฉันต้องการแก้ไขเล็กน้อย

ฉันไม่สามารถหาวิธีแก้ไขได้จนกว่าฉันจะรู้ว่าให้แก้ไขโดยใช้คำสั่ง "vi"

ไม่มีใครรู้ว่าการตั้งค่าใน PuTTY ฉันต้องเปลี่ยนเพื่อให้ฉันแก้ไขได้ตามปกติแทนที่จะต้องใช้คำสั่ง "vi"?

ขอบคุณ


ปัญหาของคุณเกี่ยวข้องกับเครื่องที่คุณใช้ PuTTY เพื่อเชื่อมต่อไม่ใช่ไม่ใช่ PuTTY คุณจะต้องให้ข้อมูลเพิ่มเติมเกี่ยวกับระบบปฏิบัติการและเชลล์ที่คุณเชื่อมต่อกับเรา
Mike Fitzpatrick

สิ่งนี้เกิดจากการที่เชลล์อยู่ในโหมดแก้ไข vi ตรวจสอบเอกสารประกอบเชลล์ของคุณ ค่อนข้างบ่อยการตั้งค่าโหมดการแก้ไขเป็นโหมด emacs เช่น การเรียกใช้งานชุด -o emacs ช่วย
tvm

Bash และเชลล์อื่น ๆ ทั้งหมดที่ใช้ไลบรารี readline ใช้โหมดการแก้ไข emacs โดยค่าเริ่มต้น ไม่ว่าคุณจะตั้งค่าให้เชลล์ทำงานแบบนั้นหรือคนอื่นทำเพื่อคุณ
romainl

@tvm ​​ที่แก้ไขปัญหา!
user1776193

คำตอบ:


1

นี้ไม่ได้เป็นปัญหาฉาบมันเกิดจากการที่ ReadLine ทุบตี

ฉันคิดว่าผลลัพธ์จะดูเหมือนของฉันถ้าคุณรันคำสั่งสองคำสั่งต่อไปนี้:

$ bind -v | grep keymap
set keymap vi-insert
$ bind -v | grep editing-mode
set editing-mode vi

นั่นหมายความว่าช็อตคัต bash ถูกตั้งค่าให้เหมือน vi (ค่าดีฟอลต์คือ emacs-like) หากคุณต้องการเปลี่ยนกลับเป็นต้นฉบับให้ป้อนคำสั่งสองคำสั่งต่อไปนี้:

set editing-mode emacs
set keymap emacs

และเริ่ม PuTTy ของคุณอีกครั้ง ฉันคิดว่าทุกอย่างจะดี

อย่างไรก็ตามถ้านี่เป็นเซิร์ฟเวอร์สาธารณะและหลาย ๆ คนก็ใช้กันหมด คุณสามารถลองหาก่อนประวัติศาสตร์ctrl + pโดยใช้ หรือค้นหาทางลัดเกี่ยวกับประวัติก่อนหน้าโดย:

$ bind -p | grep previous-history
"\C-p": previous-history
"\eOA": previous-history
"\e[A": previous-history
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.