Альтернатива минибуфэксплореру (vim)?

minibufexplorer - менеджер постоянных буферов для vim, который находится в своем собственном окне. Он показывает все открытые буферы с цветными индикаторами, которые в настоящее время видны в окнах и в которых есть несохраненные изменения.

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

Проблема в том, что minibufexpl мешает другим элементам управления окнами. Так как это обычное окно vim, оно ведет себя как одно, вызывая проблемы, если вы хотите сказать, вращайте другие ваши рабочие окна. Окно Minibufexplorer также будет вращаться, что явно меньше, чем хотелось бы.

Что мне действительно нужно, так это плагин, который постоянно отображает открытые буферы, но не ведет себя как окно. Мне не нужна навигация по файлам или что-то еще, поскольку я использую другие средства для этого. Возможно, даже что-то вроде расширенной строки состояния, которая была способна отображать информацию о буферах, как это делает minibufexpl?

7 ответов

Решение

На GitHub есть новая ветка minibufexpl.vim, которая призвана решить некоторые из этих проблем. Одна из его новых функций - "Предотвращает изменение размера буфера MBE с помощью команд изменения размера окна" и неуязвима для таких команд, как CWCR (поворот окон).

https://github.com/fholgado/minibufexpl.vim

Хотя это не точный ответ на ваш вопрос, я думаю, вы могли бы найти его полезным.

Плагин FuzzyFinder обеспечивает хорошее визуальное представление ваших открытых буферов, а также предлагает отличный способ перехода между ними - нечеткое совпадение.

Его список буферов не является "постоянным", что означает, что он отображается только по требованию, но я считаю это преимуществом: во-первых, список буферов не поглощает драгоценное состояние экрана, а во-вторых, при нечетком совпадении я не чувствую необходимости видеть это вообще.

Посмотрите на скриншот ниже: чтобы переключиться на ext_gcd.py Мне просто нужно нажать
,bg: ,b вызывает список буферов и g fuzzy-соответствует единственному буферу, имя которого содержит букву g.

PS: он работает с файлами тоже. Мои сопоставления следующие:

map <leader>f :FufFileWithCurrentBufferDir **/<C-M> 
map <leader>b :FufBuffer<C-M>

,f в этом случае рекурсивно нечеткие сопоставления файлов начинаются с каталога, в котором находится текущий буфер.

Старая тема, но для тех, кто ищет поиск, воспользуйтесь плагином Vim-Airlines. Он очень популярен и отлично совместим с другими плагинами.

Используйте g: Airlines #extensions#bufferline#enabled, чтобы получить то, что вы ищете.

Мне очень нравится buftabs.vim, потому что он хранит информацию о том, какие буферы у меня открыты, в строке состояния, которые исчезают, когда мне нужно набрать их там в четкой и понятной форме. Я нахожу это весьма предпочтительным для minibufexplorer, потому что мой курсор никогда не оказывается случайно в чистом буфере только для чтения, который занимает больше места, чем необходимо. Это также делает некоторое волшебное отображение :bnext а также :blast чтобы позволить переключаться между буферами для более "знакомого" чувства.

Вы можете использовать ctrlp, плагин, написанный на чистом Vimscript и легко настраиваемый.

:CtrlPBuffer открыть окно со списком открытых буферов

Вы можете начать печатать, это нечеткий искатель.

Также есть Tagma Buffer Manager. Я еще не пользуюсь им, но когда-нибудь обязательно попробую.

Ты можешь попробовать Powerline's tabline!

Я перепробовал много плагинов, но они, как правило, занимают командную строку или строку состояния или не отображают целые вкладки, когда их слишком много.

Вот снимок экрана (верхняя строка tabline!):

Вам нужно добавить set showtabline=2 в.vimrc после установки Powerline.

И если вы хотите перейти в 8-й буфер, :b 8 прыгну к нему!

Надеюсь это поможет.

Другие вопросы по тегам