20

在使用 Vim 时,我有时会想查看函数定义或结构定义,因此我将使用C-]它跳转到它。但是,我遇到了一些问题。首先,我不知道如何轻松地跳回去。看来我之前的文件已关闭,我现在在新文件中。有没有办法跳回来,或者保留一堆我可以弹回的打开文件或其他什么?

我注意到的另一件事是,当我对当前文件进行更改时,我需要保存它,因为就像刚才提到的那样,我当前的文件在下一个文件打开之前就被关闭了。

有时我想一次查看我当前的代码和我的标题。有没有办法在拆分中打开标签定义?

4

4 回答 4

30

添加

set hidden

给你 vimrc。它允许您在不保存文件的情况下切换文件。我认为这是“必备”选项之一。

使用C-o跳回跳转列表中自动保存的先前位置。

:h jumplist
于 2009-11-13T10:32:16.847 回答
6

要从 C-] 跳回,请使用 CT。该:tags命令显示当前堆栈。

设置autowrite选项以在跳转到新文件之前自动保存您正在执行的操作。

使用 CW C-] 在新窗口中打开标签。

最后,:help tags帮助中的部分解释了所有这些以及更多内容。

于 2009-11-13T10:22:21.983 回答
3

另一个方便的有用功能是大写标记。这些标记不是缓冲区的本地标记,可用于跨文件跳转到它们。如果在开始漫长而艰巨的跳跃任务之前使用 mA 命令将线标记为“A”,您最终可以通过键入 'A 或 `A 快速返回到原始位置。

于 2009-11-13T19:35:54.157 回答
2

您可能需要考虑使用一些 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 和在文件之间跳转非常有用。

于 2009-11-13T19:41:10.633 回答