การใช้ CtrlP ไม่ได้ให้ผลลัพธ์ที่ดีมาก - ฉันใช้ผิดหรือเปล่า?


18

ฉันหวังว่าฉันจะพิมพ์ "job.php" และนำไปยังjob.phpใน/lib/model/โฟลเดอร์ของฉันได้ แต่ส่วนใหญ่ฉันเพิ่งได้รับไฟล์อื่น ๆ ที่ส่งคืน:

[No name]

> batch/dataFixes/jobProspectsSubscriptionId.php
> batch/dataFixes/jobProspectsRankDistance.php
> batch/dataFixes/hiredJobDistanceRankFeedback.php
> batch/sendWeeklyJobOwnersUpdateEmail.php
> batch/dataFixes/backdateJobClosureDailyStats.php
> batch/dataFixes/jobExpectedRevenue.php
> batch/dataFixes/updateJobStats.php
> batch/updateEndedJobState.php
> batch/findUnresponsiveJobPosters.php
> batch/_job_criteria.php

 prt  file  <mru>={ files }=<buf> <->      /Users/shane/Documents/sites/zinc 
>d> job.php_

สลับไปยัง 'พบในเส้นทาง' โหมดและการพิมพ์lib/model/job.phpนำขึ้นตันของชั้นเรียนอื่น ๆ ในโฟลเดอร์ที่มี 'งาน' ในชื่อไฟล์ job.phpแต่ไม่

Job เป็นคำที่พบได้ทั่วไปในโครงการของเรา แต่ฉันหวังว่าผลลัพธ์ที่ตรงกับชื่อไฟล์จะได้อันดับที่สูงมาก

ฉันใช้ CtrlP ผิดหรือโครงการไม่เหมาะกับมันจริงหรือ


อาจจะแคช? ลองพิมพ์ F5 ในหน้าต่าง CtrlP
mattn

คำตอบ:


21

วิธีที่ง่ายที่สุดคือสลับเป็นโหมดชื่อไฟล์เท่านั้นและโหมด regex จาก docs:

เมื่ออยู่ในพร้อมท์:

Ctrl+ D:
สลับระหว่างการค้นหาเส้นทางแบบเต็มและการค้นหาชื่อไฟล์เท่านั้น
หมายเหตุ : ในโหมดชื่อไฟล์ฐานของพรอมต์>d>แทน>>>

Ctrl+ R:
สลับระหว่างโหมดสตริงและโหมด regexp แบบเต็ม
หมายเหตุ : ในโหมดเต็ม regexp ฐานของพรอมต์นั้นr>>แทน>>>


2
ในการตั้งชื่อไฟล์ - การค้นหาเป็นโหมดการค้นหาเริ่มต้นของคุณเพิ่มสิ่งนี้ใน vimrc ของคุณ:let g:ctrlp_by_filename = 1
jonS90

5

เพิ่มสิ่งต่อไปนี้ใน ~ / .vimrc ของคุณ (คุณอาจต้องสร้างหากไม่มีอยู่):

let g:ctrlp_regexp = 1

2

ฉันใช้ส่วนขยายการจับคู่ CtrlP C จริง ๆ ctrlp-cmatcher

มันค่อนข้างเร็วกว่าเล็กน้อยและผลลัพธ์เป็นสิ่งที่เราคาดหวังไว้ (โดยไม่ต้องใช้ regex)

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