2013-05-20 2 views
4

У меня сложная конфигурация CtrlP для vim так, как я хочу, чтобы она работала.Vim + CtrlP: Поведение для первоначального отображения файлов MRU и переключения на поиск файлов при вводе

В идеале, мне бы хотелось, чтобы CtrlP открылся со списком файлов в последнем использованном порядке. Однако, когда я начну печатать, он переключится на поиск файлов в моем текущем рабочем каталоге.

Это позволит мне переключать буферы, нажимая кнопку, а затем перемещаясь по последним файлам вверх и вниз, переключаясь между двумя видами с помощью нажатий и открывая файл в проекте, набрав его частичное имя.

Мои текущие настройки CtrlP являются

nmap § :CtrlPClearCache<CR>:CtrlPMRUFiles<CR> 

let g:ctrlp_working_path_mode='ra' 
let g:ctrlp_match_window_bottom=0 
let g:ctrlp_max_depth=10 
let g:ctrlp_max_files=500 
let g:ctrlp_mruf_relative=1 

.. и я призываю CtrlP нажатием §.

Любые советы по улучшению моей конфигурации для получения функциональности, которой я пользуюсь, или обучения меня лучшему способу быстрого переключения буферов.

+0

Что относительно ': CtrlPBuffer'? – romainl

+0

: CtrlPBuffer показывает открытые буферы. Но вместо этого я нацелен на то, что, когда я начинаю печатать, CtrlP должен переключиться на просто CtrlP, то есть на поиск файлов внутри текущего рабочего каталога. – samuke

+0

': CtrlPBuffer' * - это« лучший способ быстрого переключения буферов »; это на самом деле выделенная команда для переключения буферов, поэтому я не знаю, как вы думаете, что это можно сделать быстрее. Кроме того, какой смысл показывать список последних файлов и активно мешать вам фильтровать его, заменив его другим списком, как только вы напечатаете что-нибудь? Не '' достаточно для изменения «режимов»? В любом случае, не могли бы вы объяснить, что хотите, с большей ясностью? – romainl

ответ

2

Я задал себе тот же вопрос, и я понял, что CtrlP не является правильным плагином для этой задачи. Поэтому я продолжил реализацию своего. Выезд Bufstop. Он позволяет быстро переключаться между последними буферами, используя три, два или даже одно нажатие одной клавиши.

+0

Спасибо, что упомянул Bufstop. Он делает то, что я хотел бы сделать CtrlP, когда я его открываю, а именно отображение открытых буферов. Но то, что я хотел бы дополнительно, - это поиск файлов, начинающихся с текущего рабочего каталога, путем ввода. Поэтому ваш плагин не подходит для меня, хотя и интересный. – samuke

+0

true, Bufstop - это всего лишь буферный коммутатор, вам придется полагаться на CtrlP для поиска нечетких данных. Вы можете попробовать «CtrlPCurWD» для этой работы. – mihai