Как остановить Vim от открытия нового окна при открытии файла в окне только для чтения? - PullRequest
2 голосов
/ 25 июля 2010

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

Проблема в том, что, если у меня сфокусировано окно -MiniBufExplorer-, и я открываю файл, окно разделится:

MMMMMM     MMMMMM
AAAAAA     AAAAAA    M = -MiniBufExplorer-
AAAAAA --> AAAAAA    A = some open file
AAAAAA     BBBBBB    B = the file I just opened
AAAAAA     BBBBBB

Я предполагаю, что Vim определяет, что окно -MiniBufExplorer- не должно использоваться для открытия файла, и решает создать новое окно для хранения нового буфера.

Вместо этого я хочу, чтобы файл B просто открывался в окне, ранее занятом A. Если у окна A есть фокус, это происходит так, как я хочу; только когда фокусируется -MiniBufExplorer-, я получаю нежелательный сплит.

Я не очень хорошо разбираюсь в сценариях Vim и не очень хорошо знаком с моделью окон / буферов, поэтому не знаю, насколько сложно это сделать. Есть идеи?

Ответы [ 2 ]

0 голосов
/ 13 декабря 2011

Вы можете сделать аббревиатуру для режима командной строки следующим образом:

cabbrev ne new +only

это делает псевдоним, тогда когда вы набираете ne vim выполняет new +only. new +only создает новый документ и выполняет на нем only, что приводит к полному окну нового документа.

Вы бы лучше поместили это на свой .vimrc и чтобы предотвратить повторное использование cnoreabbrev

cnoreabbrev ne new +only

0 голосов
/ 08 августа 2011

Не думаю, что плагин MiniBufExplorer подходит для использования.

Я нахожу некоторые ошибки этого плагина. Я удаляю этот плагин сейчас, попробуйте другие.

PS: я не использую такие плагины, просто Ctrl + O, Ctrl + I:)

при открытии большого количества файлов этот плагин бесполезен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...