ประวัติการเคลื่อนไหวของเคอร์เซอร์ในกลุ่ม


10

ฉันจะคืนค่าตำแหน่งเคอร์เซอร์ใน Vim เหมือนก่อนเลื่อนเลือกหรือ PgUp / PgDn ได้อย่างไร

ฉันเบื่อที่จะค้นหาว่าฉันอยู่ที่ไหนก่อนที่ฉันจะเลื่อนขึ้นเพื่อดูสิ่งที่อยู่ด้านบน

มีบางอย่างเช่นคำสั่ง "ก่อนหน้าตำแหน่งเคอร์เซอร์" และ "ตำแหน่งเคอร์เซอร์ถัดไป" (เช่น 'u' และ 'R' สำหรับการเลิกทำ / ทำซ้ำปกติ) หรือไม่?

ตัวอย่าง: ค้นหาที่กลางไฟล์ต้นฉบับ (ไม่มีการแก้ไข) จากนั้นข้ามไปด้านบน ( 1G) จากนั้นไม่พบตำแหน่งที่คุณอยู่ก่อนหน้านั้น แน่นอนว่าไม่มีการตั้งค่าเครื่องหมาย (ฉันรู้ว่าฉันสามารถใช้ ": sp" เพื่อดูสถานที่หลายแห่งพร้อมกัน)

ปรับปรุง คำถามยังคงเปิดอยู่ฉันได้รับการติดตามผล:

The answerers didn't understand your question and the answers were too weak of a solution. c-o & c-i don't work for movements.
If I understood correctly, I find that your question was un-answered and that you were looking for a solution for a scenario like this:
As I am vim beginner I frequently do incorrect movements and actions and would like to undo them as though I had never pressed anything, returning to my previous editing location before I started messing up.

ดังนั้นมีวิธีการมาตรฐานหรือไม่เป็นมาตรฐาน (เกี่ยวข้องกับแพทช์เพื่อ Vim หรือ Vim ส่วนขยาย) วิธีที่จะทำให้มันจำประวัติศาสตร์การเคลื่อนไหวของเคอร์เซอร์?

คำตอบ:


9
  • Ctrlo ย้อนกลับไปในรายการข้าม
  • Ctrli ไปข้างหน้าในรายการข้าม

นอกจากนี้ผมจะพิจารณากำหนดเครื่องหมายผ่านและเมื่อทำได้ด้วยการเลื่อนกดm'''


ตกลง Ctrl + o ข้ามฉันไปยังสถานที่ที่ฉันกำลังแก้ไข ทำอย่างไรถึงสถานที่ที่ฉันกำลังมองหาอยู่ ? ฉันป้อน "1G" เพื่อข้ามไปยังจุดเริ่มต้นและไม่ทราบวิธีการย้อนกลับ (ฉันไม่ได้แก้ไข) ไม่ได้ตั้งค่าเครื่องหมายแน่นอนและฉันไม่ได้ใช้ ": sp"
วิ

@Vi: ไม่ ctrl-o ข้ามไปยังตำแหน่งการกระโดดครั้งสุดท้ายของคุณ (รายการข้าม) กรัม ไปที่ที่คุณแก้ไขครั้งล่าสุด
akira

1
1. "vim initrd.txt" 2. 5 เท่า PgDn, 10 ครั้งลง 3. กด PgUp ค้างไว้จนกว่าจะถึงด้านบน 4. Ctrl + o? ไม่มันเพิ่งกระโดดขึ้นไปด้านบน 5. Crtl + o อีกครั้ง? มันเปิดไฟล์อื่น ... ฉันไม่เข้าใจว่า Ctrl + o ทำอะไร แต่มันไม่เพียง แต่ยกเลิกคำสั่งการเลื่อนเคอร์เซอร์ครั้งสุดท้าย
วิ

ฉันรู้ว่ามันใช้ "รายการข้าม" .. : ช่วยข้าม ... นั่นคือเหตุผลที่ฉันหมายถึงอาจเป็นความคิดที่ดีที่จะใช้เครื่องหมาย หากคุณต้องการที่จะข้ามไปในไฟล์ของคุณและคุณต้องการกลับไปที่สถานที่ที่คุณเริ่มต้น: ตั้งเครื่องหมายข้ามไปแล้วกลับมาพร้อมกับ ''
กิระ

ดังนั้นฉันจึงไม่สามารถสร้างข้อความเล่นซ้ำและประวัติการเลื่อนเคอร์เซอร์ย้อนหลังได้ (ฉันคาดหวังด้วยว่าจะจัดการการเลื่อนเมาส์เป็น gvim) ใช่ไหม ฉันคาดหวังว่าในขณะที่กดปุ่ม Ctrl + O จะเห็นการเคลื่อนไหวข้อความของฉันกลับด้านการจบที่เพิ่งเปิดไฟล์จะอยู่ในตำแหน่งเริ่มต้น
วิ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.