Переход к ранее открытому файлу в Vim - PullRequest
19 голосов
/ 13 ноября 2009

При использовании Vim я иногда захочу взглянуть на определение функции или определение структуры, поэтому я буду использовать C-], чтобы перейти к нему. Однако есть несколько проблем, с которыми я сталкиваюсь. Во-первых, я не знаю, как легко отскочить назад. Похоже, предыдущий файл, в котором я был, закрывается, а сейчас я в новом. Есть ли способ вернуться назад или сохранить стопку открытых файлов, к которым я могу вернуться, или что-то еще?

Еще одна вещь, которую я заметил, что когда у меня есть изменение в текущем файле, мне нужно сохранить его, потому что, как упоминалось недавно, мой текущий файл закрывается, прежде чем открывается следующий.

И иногда я хочу просмотреть мой текущий код и мой заголовок сразу. Есть ли способ открыть определение тега в разделении?

Ответы [ 4 ]

28 голосов
/ 13 ноября 2009

Добавить

set hidden

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

Используйте C - o , чтобы вернуться к предыдущим местам, которые были автоматически сохранены в списке переходов.

:h jumplist
6 голосов
/ 13 ноября 2009

Чтобы отскочить от C-], используйте C-T. Команда :tags показывает текущий стек.

Установите параметр autowrite, чтобы автоматически сохранять то, что вы делаете, прежде чем переходить к новому файлу.

Используйте C-W C-], чтобы открыть тег в новом окне.

Наконец, :help tags - это раздел справки, который объясняет все это и многое другое.

3 голосов
/ 13 ноября 2009

Еще одна полезная функция, которая пригодится, - это заглавные буквы. Эти метки не являются локальными для буфера и могут быть использованы для перехода к ним из разных файлов. Если вы пометите строку как «A» с помощью команды mA, прежде чем приступить к долгому и трудному прыжковому заданию, вы, наконец, сможете быстро вернуться в исходное положение, набрав «A» или «A.»

2 голосов
/ 13 ноября 2009

Возможно, вы захотите использовать несколько расширений vim, которые делают это еще проще.

похотливый жонглер и похотливый исследователь

http://www.vim.org/scripts/script.php?script_id=2050 http://www.vim.org/scripts/script.php?script_id=1890

Для этого требуется, чтобы vim был построен с + ruby.

% vim --version | grep +ruby

Они очень полезны для того, чтобы оставаться в vim и переходить между файлами.

...