Die Verwendung von CtrlP führt nicht zu sehr guten Ergebnissen - verwende ich es falsch?


18

Ich hatte gehofft, dass ich einfach "job.php" eintippen und an die job.phpin meinem /lib/model/Ordner angegebene Adresse weitergeleitet werden könnte , aber ich habe meistens nur viele andere Dateien zurückerhalten :

[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_

Wenn Sie in den Modus "Im Pfad suchen" wechseln und tippen, lib/model/job.phpwerden Tonnen anderer Klassen in diesem Ordner angezeigt, deren Dateiname "job" enthält, nicht jedoch job.php.

Job ist ein ziemlich häufiges Wort in unserem Projekt, aber ich hatte gehofft, dass eine genaue Übereinstimmung mit dem Dateinamen in den Ergebnissen ziemlich hoch eingestuft wird.

Benutze ich CtrlP falsch oder ist das Projekt nicht wirklich dafür geeignet?


Vielleicht Cache? Versuchen Sie, F5 im CtrlP-Fenster einzugeben.
Mattn

Antworten:


21

Am einfachsten ist es, in Dokumenten zwischen den Modi Nur Dateiname und Regex umzuschalten:

Einmal in der Eingabeaufforderung:

Ctrl+ D:
Wechselt zwischen der Suche nach vollständigen Pfaden und der Suche nur nach Dateinamen.
Hinweis : Im Dateinamenmodus lautet die Basis der Eingabeaufforderung >d>statt>>>

Ctrl+ R:
Wechselt zwischen dem Zeichenfolgenmodus und dem vollständigen regulären Ausdrucksmodus.
Hinweis : Im vollständigen regulären Ausdruck ist die Basis der Eingabeaufforderung r>>anstelle von>>>


2
Um die Dateinamensuche als Standard-Suchmodus festzulegen, fügen Sie Folgendes zu Ihrer vimrc hinzu:let g:ctrlp_by_filename = 1
jonS90

5

Fügen Sie Ihrem ~ / .vimrc Folgendes hinzu (müssen Sie möglicherweise erstellen, wenn es nicht vorhanden ist):

let g:ctrlp_regexp = 1

2

Ich benutze tatsächlich CtrlP C passende Erweiterung ctrlp-cmatcher

Es ist ziemlich viel schneller und die Ergebnisse sind genau das, was man erwarten würde (ohne Regex verwenden zu müssen).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.