我正在尝试在记事本++中定义我自己的用户定义语言。原因:我想为不同的日志文件条目介绍着色方案。有人知道是否有办法突出显示包含特定关键字的完整行?
问问题
919 次
2 回答
1
如果特殊关键字在开头,您可以使用注释行
如果您想要知道有一些错误的行,您最好使用搜索窗口的标记Bookmark line
选项卡并勾选。
[2016 年 6 月 28 日编辑]
如果您想要一个更强大的解决方案来完全满足您的需求,您可以尝试使用插件Python Scripts。
安装插件后,您可以编写 python 脚本。
- 在您的脚本中创建一个
highlight_preprocessor
执行以下操作的函数:Editor.markerDeleteAll(<ID_keyword>)
对于您拥有的每个关键字,通过调用where is a digit 与关键字关联来删除任何先前的突出显示<ID_keyword>
(例如,10 表示错误,11 表示警告等)- 对于每个
<ID_keyword>
,通过调用函数设置高亮的颜色(例如深灰色)editor.markerSetBack(<ID_keyword>, (<R>, <G>, <B>) )
(其中最后 3 个数字是颜色的 RGB 值 - 深灰色为 20/20/20) - 解析文档的文本,并为匹配关键字的每一行调用该函数
editor.markerAdd(<line_number>, <ID_keyword>)
- 每次保存文件时调用该函数,方法是将此行放在脚本的末尾
notepad.callback(highlight_preprocessor, [NOTIFICATION.FILEBEFORESAVE])
需要一些时间和精力才能使其工作,但至少是可能的。
于 2016-06-22T09:28:14.367 回答
1
在 close: 中使用 ((EOL)) 以便它使用特定关键字突出显示直到行尾。
于 2020-02-25T22:39:00.070 回答