有没有办法找到匹配#if,#else,#elif& Eclipse中的#endif?

时间:2015-07-02 08:23:12

标签: c++ c eclipse

我有一些很长的C& C ++头文件中包含许多嵌套的#if语句。

#if FOO
    ...
#elif BLAR
    #ifndef WIDGET
    #endif
#else
    ...
#end

有没有办法在Eclipse中的匹配语句之间跳转?我发现了一个类似的question that says it is possible in Visual Studio,它表明 CTRL + ] 组合键应该这样做,但这似乎只适用于匹配大括号。

2 个答案:

答案 0 :(得分:0)

在写这篇文章时我遇到了Visual Studio 2010 question: How to jump to matching #if/#elif/#endif statements?这个问题表明 Ctrl K / Ctrl J < / kbd>将在Visual C ++ 6.0中执行我想要的操作。

似乎光标位于#statment Ctrl + k 会将文件向下移动到匹配的语句,而 Ctrl + < kbd> K 将反向移动。

我还发现 Ctrl + L 会显示一个键盘快捷键列表,并列出 Ctrl + k as Find Next Ctrl + K as Find Previous 。再次按 Ctrl + L 会转到偏好设置&gt; 菜单,可以添加新组合。

答案 1 :(得分:0)

不,没有办法。但是,此错误报告于2007年提交,要求此功能:https://bugs.eclipse.org/bugs/show_bug.cgi?id=182579

如果您想要此功能,请去那里投票,以提高此请求的重要性并给予更高的优先级。您可能还会发表评论。

在添加此功能之前,非常糟糕的 解决方法as you suggested是使用“查找/替换”对话框和“查找下一个” /“查找上一个” ”快捷键,搜索#字符。

步骤: Ctrl + F ,然后在“查找”框中输入#。按下“查找”按钮。这将跳至找到的下一个#字符。现在,#字符已缓存在“查找/替换”对话框中,您可以关闭“查找/替换”对话框并根据需要使用快捷键:

  • Ctrl + K =“查找下一个”
  • Ctrl + Shift + K =“查找上一个”

您可以选择通过窗口->首选项->常规->键source)下的设置来更改这些键。

您可以使用 CTRL + Shift + L 查看快捷方式的“显示关键帮助”列表(取决于上下文),如this answer here所述。继续按下 CTRL + Shift + L 几次,以自动打开 Window-> Preferences-> General- ->键设置窗口。

在Eclipse IDE中针对Ubuntu 14.04中的C / C ++开发人员v4.7.3a进行了测试。

请对上面的Eclipse功能请求“错误”进行投票,以使开发人员添加适当的解决方案。