วิธีการทำ ctrl + p ทำงานเหมือนกับลูกศรขึ้นใน zsh?


15

ก่อนอื่นฉันกำลังใช้ zsh และoh-my-zshโดยแทบจะไม่มีการปรับแต่งอื่น ๆ

ใน zsh เมื่อฉันกดลูกศรขึ้นมันนำคำสั่งล่าสุดมาให้ฉัน และถ้าฉันพิมพ์ตัวอักษรบางตัวก่อนที่ฉันจะกดลูกศรขึ้นมันจะทำให้คำสั่งล่าสุดที่เริ่มต้นด้วยตัวละครเหล่านั้น มันค่อนข้างเป็นคุณสมบัติที่มีประโยชน์เนื่องจากฉันออกคำสั่ง git / vim / scp จำนวนมากหรือ

แต่ตอนนี้ฉันเปลี่ยนไปใช้แป้นพิมพ์ที่ไม่มีปุ่มลูกศรและฉันมักจะใช้ctrl+ pแทนที่จะเป็นลูกศรขึ้นเพื่อให้การบันทึกประวัติศาสตร์เสร็จสมบูรณ์ อย่างไรก็ตามไม่ว่าฉันจะพิมพ์ตัวอักษรมากน้อยแค่ไหนก่อนกดctrl+ pมันจะนำคำสั่งล่าสุดมาให้ฉันเสมอ (ไม่ใช่ตัวอักษรตัวล่าสุดที่ขึ้นต้นด้วยตัวอักษรเหล่านั้น)

ฉันควรกำหนดค่า zsh (หรือ oh-my-zsh) เพื่อแก้ไขปัญหานี้อย่างไร

คำตอบ:


18
bindkey "^P" up-line-or-search

ขอบคุณมาก! ฉันจะยื่นปัญหาให้ oh-my-zsh เพื่อเพิ่มสิ่งนี้ลงใน lib / keybinding.zsh ที่เป็นค่าเริ่มต้น
Gordon Gao

5
คุณอาจต้องการเพิ่มbindkey "^N" down-line-or-searchเช่นกันเพื่อความสอดคล้อง
ejoubaud

6
bindkey -e

สิ่งนี้ใช้การผูกกุญแจ emacs และดูเหมือนว่าจะใช้ได้สำหรับฉัน


ในไฟล์ shell rc ของ~/.zshrc คุณหากคุณตั้งค่าexport EDITOR=vimแล้วการผูก key ใน shell จะเปลี่ยนเป็น vim ในกรณีนี้ตั้งค่าการเชื่อมโยงคีย์เข้ากับโหมด emacs ด้วยตนเองโดยbindkey -e
MutantMahesh
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.