สมมติว่าฉันกำลังแก้ไขบรรทัดเดียวด้วยเคอร์เซอร์ของฉันที่ตำแหน่งที่ระบุ:
$ abc ꕯ def ghi
ตอนนี้ฉันต้องการแยกออกเป็นสองบรรทัดและทำการแก้ไขต่อไป (เช่นกดปุ่ม ENTER จะทำในโปรแกรมแก้ไขข้อความ):
$ abc
$ ꕯ def ghi
มีวิธีทำเช่นนี้ใน ZSH หรือไม่?
สมมติว่าฉันกำลังแก้ไขบรรทัดเดียวด้วยเคอร์เซอร์ของฉันที่ตำแหน่งที่ระบุ:
$ abc ꕯ def ghi
ตอนนี้ฉันต้องการแยกออกเป็นสองบรรทัดและทำการแก้ไขต่อไป (เช่นกดปุ่ม ENTER จะทำในโปรแกรมแก้ไขข้อความ):
$ abc
$ ꕯ def ghi
มีวิธีทำเช่นนี้ใน ZSH หรือไม่?
คำตอบ:
emacs
โหมดของ ZLE :… อักขระControl+ V(ASCII SYN
) ถูกผูกไว้กับquoted-insert
วิดเจ็ต ดังนั้นเพียงแค่ใส่Control+ Vแล้วControl+ J(ASCII LF
)
vi
โหมดของ ZLE :… อักขระControl+ Q(ASCII DC1
) และControl+ Vถูกผูกไว้กับvi-quoted-insert
วิดเจ็ต ดังนั้นอีกครั้งเพียงแค่ใส่Control+ Vแล้ว+ControlJ
ขึ้นบรรทัดใหม่ที่อยู่ตรงกลางบรรทัดคำสั่งแยกคำสั่ง (ในคำศัพท์ของzsh
คู่มือ: ขึ้นบรรทัดใหม่และ;
ยกเลิกรายการ ) อ้างถึงบรรทัดใหม่หากคุณไม่ต้องการ
นี่คือวิธี "เสียงเรียกเข้า" ในโหมด ZLE vi ที่ไม่เกี่ยวข้องกับctrl
คอร์ด
หากบรรทัดของคุณมีลักษณะดังนี้และคุณอยู่ในโหมดปกติ : $ abc ꕯ def ghi
พิมพ์สิ่งนี้: DoESCp
การกดปุ่มทั้งหมด: 4.
คำอธิบาย:
`D` cuts from cursor to the end of the line and places cut string in register
`o`opens a new line places the cursor in it, and switches to insert mode
`<esc>` switches to normal pode
`p` paste register content.
ใช้⌥↩︎ ( Option / Alt+ Return) หรือ⎋, ↩︎ ( Escจากนั้นReturn)
วิธีนี้จะใช้งานได้หากคุณโทรไปbindkey -e
ก่อนหน้านี้หรือที่อื่นใน. zshrc ของคุณ
abc
ถูกประหารหรือคุณต้องการแทรก\n
ตัวละครที่ตำแหน่งเคอร์เซอร์?