ทิศทางการค้นหาข้อความเป็นกลุ่ม


10

หลังจากฉันค้นหา "foo" ด้วยการทำ "? foo" ฉันสามารถค้นหาไปข้างหน้าด้วย "n" หรือย้อนกลับด้วย "N" แต่บางครั้งทิศทาง n / N พลิกในระหว่างการค้นหา ถ้าฉันเริ่มต้นกลุ่มใหม่ก็ตกลงอีกครั้ง ฉันอาจกดปุ่มลำดับใดเพื่อทำให้เกิดสิ่งนี้ จะเปลี่ยนกลับเป็นโหมดปกติได้อย่างไร?

ฉันจำไม่ได้ว่าฉันเคยเจอปัญหานี้ใน Vi เก่า

แก้ไข: มันไม่ใช่ฝาล็อคกุญแจ ขอบคุณสำหรับคำแนะนำว่า


ฉันเดาว่ามันไม่ใช่แค่การล้อมรอบในตอนท้าย / ตอนต้นของไฟล์? หรือบางทีคุณพิมพ์ * หรือสิ่งที่ตรงกันข้ามการค้นหา? ฉันรู้ว่าฉันใช้เวลาทำมากโดยไม่ตั้งใจ
เดฟโฟกท์

@Dave Vogt มันไม่ได้เป็นเพียงแค่จบ / เริ่มต้นของไฟล์ ฉันเพิ่งทดสอบ " " คุณพูดถูกถ้าฉันกด " " ฉันสามารถเปลี่ยน / แก้ไขทิศทางการค้นหาได้ หากคุณตอบคำถามฉันจะลงคะแนนและยอมรับมัน ขอบคุณ
grokus

คำตอบ:


11

สิ่งนี้อาจเกิดขึ้นได้หากคุณเริ่มค้นหาย้อนหลังด้วย?foobarและกด/ตรงกลาง ตอนนี้คุณกำลังค้นหาไปข้างหน้าดังนั้นnและNจะถูกเปลี่ยนสัมพันธ์กับสิ่งที่คุณเคยมี สิ่งเดียวกันจะเกิดขึ้นหากคุณเริ่มต้น/และกด?ตรงกลาง


ท่านที่ถูกต้อง ฉันเพิ่งทดสอบสิ่งที่คุณพูด คุณช่วยบอกฉันได้ไหมว่าบทบาท "*" กำลังเล่นอะไรในท่ามกลางนี้?
grokus

1
@grokus: *หมายถึงการค้นหาคำที่อยู่ภายใต้เคอร์เซอร์
Daenyth

@Denenyth ขอบคุณ ฉันมักจะคิดว่าฉันไม่ได้เลวร้ายที่ Vim (ฉันสามารถทำสิ่งต่าง ๆ ได้สำเร็จ) วันนี้ฉันกำลังพิจารณาตำแหน่งของฉันใหม่
grokus

และจะติดตาม @Daenyth #คุณสามารถค้นหาย้อนหลังสำหรับสิ่งที่อยู่ภายใต้คำเคอร์เซอร์ใช้ สิ่งเหล่านี้จะจับคู่กับคำเต็มเท่านั้น ในการค้นหาคำที่อยู่ใต้เคอร์เซอร์รวมถึงในคำอื่น ๆ ให้ใช้g*
Nathan Fellman

3

ฟังดูงี่เง่า แต่คุณตรวจสอบ Caps-Lock แล้วหรือยัง


ใช่ฉันทำ. มันเป็นตำแหน่ง "ปิด" ฉันเคยเห็นพฤติกรรมนี้หลายครั้งดังนั้นในที่สุดฉันก็เบื่อหน่ายและตัดสินใจที่จะไปที่ด้านล่างของนี้
grokus

0

นาธานได้คำตอบแล้วว่าทำไมเกิดเหตุการณ์นี้ แต่ถ้าคุณใช้ทั้งสองทิศทางอย่างสม่ำเสมอและต้องการnที่จะเสมอมองไปข้างหน้าและNจะเสมอมองย้อนกลับไปเรื่องวิธีการที่คุณค้นหาคุณสามารถใส่ในของคุณ.vimrc:

nmap n /<CR>
nmap N ?<CR>

/และ?ไม่มีพารามิเตอร์ทำการค้นหาล่าสุดในทิศทาง (สัมบูรณ์) ที่เกี่ยวข้อง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.