0

我是 OS X 新手,使用TextMate作为编辑器。在 TextMate 中,我正在使用Mac Classic为标准 C++ 提供语法着色的主题。

问题:我如何配置 Textmate 以便它可以为 OpenCV 数据类型(如“Mat”等)提供语法着色。

PS:我只想使用 Textmate 作为编辑器,因为我想通过终端编译和运行我的代码。

4

1 回答 1

0

我找不到 OpenCV 的现有捆绑包,因此您必须创建自己的语言语法:

Textmate 手册 - 语言语法

所以有2个建议;

首先是破解你的 C++ 语言:

  • Bundles-> Bundle Editor-> C-> Language Grammars->C++
  • 插入此代码,可能在该{include= 'source.c';},行之后

    {name = 'keyword.control.c++'; match = '\b(Mat|Range|Rect)\b'; },

  • 然后,您包含所有您想要识别的关键字,就像我用MatRange和演示的那样Rect

或者

您可以创建自己的语言包。按照上述手册,这是一个可能有效的未经测试的语法。

{
  scopeName = 'source.opencv';
  fileTypes = ( );
  foldingStartMarker = '\{\s*$';
  foldingStopMarker = '^\s*\}';
  patterns = (
      { 
        name = 'meta.function';
        match = '\b(Mat|Range|Rect)\b';
      },
   );
}

请注意,适当的捆绑软件会创建一种具有正确范围选择器的新语言。

这里的一个好处是,如果您成功创建捆绑包,您可以将其添加到官方捆绑包列表中,从而节省其他人的努力。如果您走得那么远,请联系邮件列表以将其正式添加。

于 2015-02-19T15:31:46.753 回答