Недавно я обнаружил эту опцию switchbuf
и попытался ее использовать, но не могу сказать, не понимаю ли она, как она должна работать, или она на самом деле не работает на моем Vim.
О различных возможных значениях, документ говорит:
useopen Если включено, перейдите к первому открытому окну, которое
содержит указанный буфер (если он есть).
usetab Как «useopen», но также учитывайте окна на других вкладках.
Затем я использовал set switchbuf=useopen,usetab
и следующие команды в новом экземпляре vim:
- Откройте первый буфер
:e file1
- Разделить экран
:split
- Откройте второй буфер
:e file2
- Вернитесь к первому буферу
:e file1
(я также использовал:bN
)
Последние команды для перехода в первый буфер открывают его во втором разделении. Из того, что я понимаю из документа, команды должны поместить курсор в первое разделение, где буфер уже открыт благодаря useopen
. Также поведение такое же, когда я пытаюсь использовать те же команды с вкладками вместо разделений.
- Это ожидаемое поведение?
- Если да, не могли бы вы объяснить, что должен делать этот вариант?
- Если нет, я знаю, что мне придется отлаживать свой,
.vimrc
но, может быть, есть общие настройки, которые мешаютswitchbuf
?
This option controls the behavior when switching between buffers.
и только в нескольких строках, упоминаются команды быстрого исправления, иsb
я подумал, что это дополнение к обычным командам буфера. Спасибо!