Сброс буферов в Vim - PullRequest
       68

Сброс буферов в Vim

4 голосов
/ 01 октября 2008

Возможно ли сбросить альтернативный буфер в сеансе vim на тот, который был ранее?

Под альтернативным буфером я подразумеваю тот, на который ссылается #, т. Е. Тот, который отображается при вводе cntl - ^.

Скажем, у меня есть два файла: main.c и other.c, и: ls дает мне:

  1 %a   "main.c"              lines 27
  2 #    "other.c"             lines 56

Скажем, я открываю другой файл, например, refer.c,: ls теперь даст мне:

  1 %a   "main.c"              lines 27
  2      "other.c"             lines 56
  3 #    "refer.c"             lines 125

Если я удаляю буфер, содержащий refer.c,: ls теперь показывает:

  1 %a   "main.c"              lines 27
  2      "other.c"             lines 56

Но если я сделаю cntl- ^, Refer.c будет отображаться снова!

Есть ли какой-нибудь способ получить vim для автоматического сброса альтернативного буфера до того, каким он был в последний раз? «История» альтернативных буферов?

Или я застрял с выполнением a: 2 b для перезагрузки other.c в альтернативный буфер?

Или, может быть, есть веская причина для такого поведения?

1 Ответ

7 голосов
/ 01 октября 2008

В этом случае «альтернативный» означает просто «предыдущий». Итак, да: b2 (или 2 ctrl-6), вероятно, самый простой способ изменить, какие два буфера будут переключаться ctrl-6.

Также взгляните на команду: keepalt.

...