2009-11-13 3 views
19

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

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

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

+0

Связанный, но не дублированный: [Как вы вернетесь из gf в Vim] (http://stackoverflow.com/q/133626/834176). –

ответ

28

Добавить

set hidden 

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

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

:h jumplist 
5

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

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

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

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

3

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

2

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

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

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

Они требуют, чтобы ВИМ был построен с + рубин.

% vim --version | grep +ruby 

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