Използвайте Vim раздели като буфери

Разгледах възможността да използвам раздели в vim (с: tabe,: tabnew и т.н.) като заместител на текущата ми практика да отварям файлове в същия прозорец в скрити буфери.

като

Бих искал всеки отделен файл, който отворих, да бъде винаги в отделен раздел. Има обаче някои неща, които пречат на това. Как мога да поправя тези проблеми:

Когато команди като gf и ^] прескочат до местоположение в друг файл, файлът се отваря в нов буфер в текущия раздел. Има ли начин всички тези видове команди да отворят файла в нов раздел или да преминат към съществуващия раздел с файла, ако той вече е отворен?

При смяна на буфери мога да използвам: b

и това ще завърши имената на файловете в съществуващите буфери.

може дори да е средата на име на файл вместо началото. Има ли еквивалент на раздела за промяна?

Стоп стоп стоп.

Разделите на Vim не са предназначени за използване. Всъщност те са погрешно наречени. По-добро име би било "viewport" или "layout", защото това е раздела - това е различно оформление на прозореца на всички ваши съществуващи печати.

Опитът да победим Vim в 1 раздел == 1 буфер е напразно упражнение. Vim не знае и не се интересува и няма да изпълни по-специално команди, всичко, което използва буфера за бързи корекции (: make,: grep и: helpgrep са тези, които идват на ум), с радост ще игнорира разделите и няма нищо можете да направите, за да спрете това.

  • : набор скрит
    Ако все още нямате този комплект, направете го. Това прави vim да работи като всеки друг редактор на множество файлове на планетата. Може да имате модифицирани буфери, които не се виждат някъде в прозорец.
  • Употреба: bn,: bp,: b #,: b name и ctrl-6 за превключване между буфери. Харесва ми ctrl-6 (сам по себе си превключва към преди използван буфер или # ctrl-6 превключва към номер на буфер #).
  • Използвайте: ls за изброяване на буфери или приставка като MiniBufExpl или BufExplorer .

Малко късно за партито тук, но изненадан да не видя следното в този списък:

: tab sball - това отваря нов раздел за всеки отворен буфер.

: help switchbuf - това контролира поведението на превключване на буфера, опитайте: set switchbuf = usetab, newtab. Това би трябвало да означава преминаване към съществуващия раздел, ако буферът е отворен, или създаване на нов по друг начин.