Я очень часто оказываюсь в такой ситуации:
- Откройте gVim с NERDTree из текущего рабочего каталога.
- Откройте файл из NERDTree, используя
<S-T>
, чтобы он открыл новую вкладку. :tabprevious
вернуться на NERDTree.- Просмотрите каталоги и откройте второй файл, используя
<S-T>
. - Закройте второй файл
:q
илиZZ
.
Чего я ожидал, что произойдет после5.вернуться в NERDTree, но Vim всегда сворачивает вкладку и открывает ту, что справа. Это редко то, что я намеревался сделать, и я бы предпочел, чтобы Vim хранил список всех вкладок, которые я просматривал. Поэтому, когда я закрываю одну, он выталкивает ее из стека и фокусируется на следующей.
Это можно увидеть и в других редакторах, в основном в IDE, например, в Komodo Edit.
Есть ли плагин, который делает это для Vim?
решение1
Чтобы перейти на первую вкладку (предположительно, ту, где открыто NERDTree), выполните :tabfirst
. Vim не хранит список вкладок, упорядоченных по «последнему открытию», а :tabprevious
/ :tabnext
работает только с вкладками слева/справа.
Действие по умолчанию — T
именно открытие выбранного файла в новой вкладке.ивернитесь на вкладку, где находится NERDTree. Так что я не уверен, зачем вам нужно делать :tabprevious
после T
.
Обычный способ использования NERDTree — просто открыть его на месте, когда он вам нужен, и настроить его на закрытие при открытии файла. Я не помню названия опции, но быстрого варианта :help nerdtree
было бы достаточно.
Также я боюсь, что вы совершаете ошибку: вы используете "вкладки" Vim так, как будто они такие же, как вкладки, которые можно найти везде. Это плохая идея, потому что они вообще не предназначены для этого. Вместо этого почитайте об окнах и буферах.