有没有办法在用户定义语言中为关键字创建一个规则,规定它必须位于行首...或者至少是行中的第一个单词,才能成为关键字?
2vuwiymt1#
恐怕这是不可能的。你可以参考UDL2 documentation来了解用户定义语言的功能。它是有意限制的,以便足够容易地在普通用户的可用性和效率之间做出妥协。
解决方案:除了UDL2之外,我唯一能给你的建议就是创建你自己的Notepad++版本。如果你得到了源代码,你可以看到所有内置语言高亮显示器都是使用.lex文件程序化实现的。你可以创建你自己的高亮显示器,在那里你有无限的高亮显示可能性。然后你需要添加颜色定义到现有的XML文件,菜单项和必要的绑定,你应该完成了。提示:内置的Batch语言已经突出显示了行中的第一个单词,因此这可能是一个很好的起点。解决方法:如果突出显示行上的第一个单词就足够了,只需将语言切换为Batch。:)**另一个解决方案:**在这种情况下,用户RProgram总是建议人们从记事本++切换到SynWrite编辑器。它的用户定义语言有更广泛的功能。也许这将是你不用太深入就能得到想要的结果的最快方法。
.lex
hgtggwj02#
实际上内置的“INI文件”语言选项已经高亮显示了第一个单词(“键”)直到“=”符号(除了着色“部分”名称),但仅此而已。它可能对某些用途有用,但肯定是有限的适用性。
2条答案
按热度按时间2vuwiymt1#
恐怕这是不可能的。你可以参考UDL2 documentation来了解用户定义语言的功能。它是有意限制的,以便足够容易地在普通用户的可用性和效率之间做出妥协。
解决方案:除了UDL2之外,我唯一能给你的建议就是创建你自己的Notepad++版本。如果你得到了源代码,你可以看到所有内置语言高亮显示器都是使用
.lex
文件程序化实现的。你可以创建你自己的高亮显示器,在那里你有无限的高亮显示可能性。然后你需要添加颜色定义到现有的XML文件,菜单项和必要的绑定,你应该完成了。提示:内置的Batch语言已经突出显示了行中的第一个单词,因此这可能是一个很好的起点。解决方法:如果突出显示行上的第一个单词就足够了,只需将语言切换为Batch。:)
**另一个解决方案:**在这种情况下,用户RProgram总是建议人们从记事本++切换到SynWrite编辑器。它的用户定义语言有更广泛的功能。也许这将是你不用太深入就能得到想要的结果的最快方法。
hgtggwj02#
实际上内置的“INI文件”语言选项已经高亮显示了第一个单词(“键”)直到“=”符号(除了着色“部分”名称),但仅此而已。它可能对某些用途有用,但肯定是有限的适用性。