Vim:转到下一个方法的开头/结尾

新手上路,请多包涵

Vim 中是否有允许将光标移动到下一个方法的开头/结尾的本机功能? I already know about [[ , ]] , [] , and ][ , but these don’t cut the job, because they only work在第 0 列的大括号上。因此,它们在导航 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; }

}

原文由 void-pointer 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 390
1 个回答

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

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

原文由 Ingo Karkat 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题