使用 CtrlP 并没有给出很好的结果 - 我使用它是错误的吗?

使用 CtrlP 并没有给出很好的结果 - 我使用它是错误的吗?

我希望我可以只输入“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”,但不包含job.php.

“工作”在我们的项目中是一个非常常见的词,但我希望文件名的完全匹配能够在结果中排​​名相当靠前。

我是否使用了 CtrlP 错误,或者该项目并不真正适合它?

答案1

最简单的方法是从文档切换到仅文件名模式和正则表达式模式:

进入提示后:

Ctrl+ D
在全路径搜索和仅文件名搜索之间切换。
笔记:在文件名模式下,提示符的基址是>d>而不是>>>

Ctrl+ R
在字符串模式和完整正则表达式模式之间切换。
笔记:在完整的正则表达式模式下,提示符的基数是r>>而不是>>>

答案2

将以下内容添加到您的 ~/.vimrc (如果不存在,您可能需要创建):

let g:ctrlp_regexp = 1

答案3

我实际上使用 CtrlP C 匹配扩展ctrlp-cmatcher

它的速度要快得多,而且结果正是人们所期望的(无需使用正则表达式)。

相关内容