如何让vim标签跳转像OmniCppComplete一样智能?

5

我是这样生成标签的(使用 Exuberant Ctags 5.9~svn20110310):

 ctags --c++-kinds=+p --fields=+iaS --extra=+q -L ctags.files

我大致有这个类结构:

class RenderObject
{
    InterpolatedVector offset;
};

class Quad : public RenderObject
{
};

class KeyframeWidget : public Quad
{
    void shiftRight()
    {
        if (!offset.isInterpolating())
            offset.interpolateTo(Vector(offset.x+80, 0), 0.1, 0, 0, 0);
    }
};

以下内容是从Aquaria开源发布中获取的代码。

如果我在offsetCtrl-])处进行标签跳转,则可以在我的代码库中的每个offset处获得一个列表。当我在shiftRight()的结尾输入offset.后,OmniCppComplete开始仅为InterpolatedVector提供完成选项。

如何使我的标签跳转像OmniCppComplete一样聪明呢?

是不是标签跳转不使用任何上下文,所以它们只知道符号名称?(它是否与:tag <C-r><C-w><CR>完全相同?)是否有vim替代方案使它们具备上下文感知能力?

1个回答

2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接