如何在CodeMirror中添加关键字(并更改其颜色)?

迈尔斯

我目前正在使用Brackets(代码编辑器)创建一些C源文件。它使用CodeMirror来处理语法突出显示,并且我现在已经尝试了一段时间以尝试向其添加关键字。

通过在此处修改此代码并将“ printf”添加到关键字,我设法将“ printf”添加为关键字。但是,我想更改它的颜色,但无法做到这一点。我该怎么办?

另外,就像行注释(如“ //”)突出显示整行一样,如果行以“#”开头,​​并且颜色也发生变化,我也想这样做。

我敢肯定,我需要修改'clike.js'文件以添加新的关键字和其他一些.css文件,以便更改颜色,但我似乎还是无法解决。

谢谢你的帮助。

迈尔斯

解决了。

首先,我更改了'clike.js'文件,添加了以下'if'块来处理我想要的更改。

function tokenBase(stream, state) {
    var ch = stream.next();
    if (ch == "#") {
      if (stream.eat("i")) {
        stream.skipTo(" ")
        return "include";
      }
      else if (stream.eat("p")) {
        stream.skipToEnd();
        return "pragma";
      }
    }
    ...

因此,在解析文件时,外部块将检查“#”。当检测到一个字母时,它将检查下一个字母是“ i”还是“ p”。
这是因为我想突出显示以下任一内容:

#include ...

或者

#pragma ...

如果找到“ i”作为下一个字符,则我stream.skipTo(" ")会跳到下一个空格,以便仅#include将其突出显示。
如果找到了“ p”,我改用stream.skipToEnd()以便将整个行突出显示。

然后,return语句返回与找到的内容相关的字符串,并且主题.css文件中的相应样式指定了诸如颜色或样式之类的内容。
例如,在我的情况下,方括号默认灯光主题位于Brackets.app/Contents/www/extensions/default/LightTheme/main.less
在此文件中,我添加了以下几行:

.cm-pragma {color: #a50000;}
.cm-include {color: #A0522D;}

然后,它指定了您希望文本为的颜色,但是我假设还可以指定其他内容,例如粗体,斜体,字体等。

如果您希望使用新的返回类型“ test”,则可以return "test";在javascript文件中将其命名为主题文件中的相应样式.cm-include {...};

希望这可以对其他想要做同样事情的人有所帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在CodeMirror中添加关键字(并更改其颜色)?

来自分类Dev

如何在PhpStorm中更改特定关键字的颜色?

来自分类Dev

如何在Visual Studio 2019 for C ++中更改关键字``for,if,return''的字体颜色?

来自分类Dev

更改给定句子的关键字的颜色

来自分类Dev

CodeMirror自定义模式-如何在关键字上应用样式?

来自分类Dev

如何在SQL Server中更改作为关键字的表的名称

来自分类Dev

如何在Netbeans中更改'let'关键字的字体大小?

来自分类Dev

如何在SQL Server中更改作为关键字的表的名称

来自分类Dev

如何在lxml中添加python关键字术语作为标记属性?

来自分类Dev

如何在Mocha测试中向“ this”关键字添加类型?

来自分类Dev

如何在lxml中添加python关键字术语作为标记属性?

来自分类Dev

如何在php中手动添加描述和关键字?

来自分类Dev

如何在Python的字典中要求子关键字的关键字?

来自分类Dev

如何在Common Lisp中要求关键字参数?

来自分类Dev

如何在Javascript中定义关键字?

来自分类Dev

如何在Laravel中获取某些关键字的记录?

来自分类Dev

如何在CouchDB中实现关键字搜索

来自分类Dev

同步关键字如何在Java中起作用?

来自分类Dev

如何在Chrome中编辑关键字搜索?

来自分类Dev

如何在字符串中查找关键字

来自分类Dev

如何在Google中禁用关键字查询?

来自分类Dev

如何在C中刺激使用register关键字?

来自分类Dev

如何在Mongodb中存储项目的关键字

来自分类Dev

如何在整个网站中搜索关键字

来自分类Dev

如何在Clojure中创建动态关键字?

来自分类Dev

如何在Clojure宏中扩展关键字

来自分类Dev

如何在字典中获取关键字作为单词?

来自分类Dev

如何在elasticsearch中聚合“非关键字”字段?

来自分类Dev

如何在页面 Codeigniter 中显示关键字搜索

Related 相关文章

  1. 1

    如何在CodeMirror中添加关键字(并更改其颜色)?

  2. 2

    如何在PhpStorm中更改特定关键字的颜色?

  3. 3

    如何在Visual Studio 2019 for C ++中更改关键字``for,if,return''的字体颜色?

  4. 4

    更改给定句子的关键字的颜色

  5. 5

    CodeMirror自定义模式-如何在关键字上应用样式?

  6. 6

    如何在SQL Server中更改作为关键字的表的名称

  7. 7

    如何在Netbeans中更改'let'关键字的字体大小?

  8. 8

    如何在SQL Server中更改作为关键字的表的名称

  9. 9

    如何在lxml中添加python关键字术语作为标记属性?

  10. 10

    如何在Mocha测试中向“ this”关键字添加类型?

  11. 11

    如何在lxml中添加python关键字术语作为标记属性?

  12. 12

    如何在php中手动添加描述和关键字?

  13. 13

    如何在Python的字典中要求子关键字的关键字?

  14. 14

    如何在Common Lisp中要求关键字参数?

  15. 15

    如何在Javascript中定义关键字?

  16. 16

    如何在Laravel中获取某些关键字的记录?

  17. 17

    如何在CouchDB中实现关键字搜索

  18. 18

    同步关键字如何在Java中起作用?

  19. 19

    如何在Chrome中编辑关键字搜索?

  20. 20

    如何在字符串中查找关键字

  21. 21

    如何在Google中禁用关键字查询?

  22. 22

    如何在C中刺激使用register关键字?

  23. 23

    如何在Mongodb中存储项目的关键字

  24. 24

    如何在整个网站中搜索关键字

  25. 25

    如何在Clojure中创建动态关键字?

  26. 26

    如何在Clojure宏中扩展关键字

  27. 27

    如何在字典中获取关键字作为单词?

  28. 28

    如何在elasticsearch中聚合“非关键字”字段?

  29. 29

    如何在页面 Codeigniter 中显示关键字搜索

热门标签

归档