Notepad++ UDL高亮线

Notepad++ UDL highlight line

我正在尝试在 notepad++ 中定义我自己的用户定义语言。原因:我想为不同的日志文件条目引入着色方案。有人知道是否有办法突出显示包含特定关键字的完整行吗?

如果特殊关键字在开头,您可以使用注释行

如果你想知道有错误的行,你最好使用搜索 window 的 标记 选项卡并检查 Bookmark line.

[2016 年 6 月 28 日编辑]

如果您想要一个更强大的解决方案来完全满足您的需要,您可以尝试使用插件 Python Scripts.

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

  • 在您的脚本中创建一个函数 highlight_preprocessor 来执行以下操作:
    1. 对于您拥有的每个关键字,通过调用 Editor.markerDeleteAll(<ID_keyword>) 删除之前的所有突出显示,其中 <ID_keyword> 是与关键字关联的数字(例如,10 表示 error , 11 表示 警告 , 等等)
    2. 对于每个 <ID_keyword>,通过调用函数 editor.markerSetBack(<ID_keyword>, (<R>, <G>, <B>) ) 设置突出显示的颜色(例如深灰色)(最后 3 个数字是颜色的 RGB 值 - 20/20 /20 表示深灰色)
    3. 解析文档的文本并为匹配关键字的每一行调用函数 editor.markerAdd(<line_number>, <ID_keyword>)
  • 通过将此行放在脚本末尾,每次保存文件时调用该函数 notepad.callback(highlight_preprocessor, [NOTIFICATION.FILEBEFORESAVE])

需要一些时间和精力才能让它发挥作用,但至少它是可能的。

在 close: 中使用 ((EOL)) 以便突出显示特定关键字的行尾。