Vim:转到下一个方法的开始/结束


问题内容

Vim中是否有本机功能可以允许将光标移动到下一个方法的开头/结尾?我已经知道了[[]][],和][,但这些不切的工作,因为他们只对处于零柱支撑工作。因此,它们在导航C
++代码中几乎没有用。Vim中已经内置了这样的命令吗?如果没有,您会推荐一个可以实现它的插件吗?

谢谢你的帮助!

编辑:[{}]不会一直工作,因为您必须位于该块之内{}(而不是该块的更深层次),才能在右侧{}之后结束。

编辑2:这是一个代码列表,对于该代码列表[m,朋友不起作用。

namespace foo {

#define define_foo         \
    template <class T>     \
    struct foo_traits<X>   \
    {                      \
        using foo = X;     \
    };

template <class T>
struct foo_traits;

define_bar(T*, T*, T*);

template <class T>
struct baz;

template <class T>
struct baz<T&>
{
    static T* apply(T& t) { return &t; }
};

template <class T>
inline T a(T t) { return t; }

}

问题答案:

的vim [m/ ]m内置“适用于Java或类似结构的语言”。

我编写了处理Vim函数VBScript批处理文件等的自定义版本。这些都由我的CountJump插件提供支持,该插件可用于编写基于正则表达式的自定义跳转函数。