Notepad ++ C / C ++预处理器突出显示

时间:2013-10-22 12:27:39

标签: notepad++

有没有人知道Notepad ++插件可以在检测到结果为#if时更改预处理器false内的背景颜色?

1 个答案:

答案 0 :(得分:1)

我看到的最佳解决方案是使用Notepad ++的优秀PythonScript插件。

安装插件后,您可以编写一个python脚本。

  • 在脚本中创建一个执行以下操作的函数highlight_preprocessor

    1. 使用命令notepad.getCurrentFilename()
    2. 获取文件的路径
    3. 解析源文件中包含的所有头文件,以检索潜在的预处理器宏的值
    4. 删除之前的任何突出显示
    5. 解析文档的文本并返回应该高亮显示的行数(通过查找#if块,评估布尔表达式,以及是否" false"列出所有#if#endif之间的块中的行
    6. 对于每一行,请调用函数editor.markerAdd(<line number>,10)
    7. 通过调用函数editor.markerSetBack(10, (200, 200,200) )(其中最后3个数字是颜色的RGB值)设置高光(例如深灰色)的颜色
  • 每次保存文件时都要调用该函数,方法是将此行放在脚本末尾notepad.callback(highlight_preprocessor, [NOTIFICATION.FILEBEFORESAVE])

需要一些时间和精力才能使其发挥作用,但至少有可能。

希望它可以帮助一些想尝试的人。