如何创建自定义Eclipse语法高亮显示器

Wil*_*hin 38 eclipse eclipse-plugin syntax-highlighting

我一直在开发一种新语言的编译器.我认为能够在语法感知环境中展示它的开发是很好的.该语言有很多自定义关键字,其结构与Java或C/C++等常用语言有很大不同.

如何为Eclipse开发自定义语法highligher?我已经看到一些插件的引用,但文档不够彻底,不足以满足我的初学者的需求.

我的语言有语法/ RE,以及相关关键字列表.

zvi*_*ico 32

听起来像是在处理DSL(域特定语言).您正在寻找的声音与XText完全相同.以下是该页面的摘录:

Xtext是用于开发外部文本DSL的框架/工具.只需使用Xtext的简单EBNF语法语言描述您自己的DSL,生成器将创建一个解析器,一个AST-meta模型(在EMF中实现)以及一个功能齐全的Eclipse Text Editor.

另外,看看这个视频,这是对其中一个人的采访.我相信你会从这里拿走它:-)

您可能还想查看此插件.不完全是你想要的,但可能是一个很好的开始.


Uri*_*Uri 15

Eclipse框架使用相当复杂的文档模型来进行语法着色(它们称之为着色,而不是突出显示),它并不像在其他编辑器中那样简单.

如果您真的想尝试使用它,可能需要阅读Eclipse插件开发人员指南中的以下内容.

(上面的链接已经死了.这可能是类似的文件或者这个.)


Fab*_*zny 5

这正是 LiClipse ( http://www.liclipse.com/ )的目标之一:轻松制作一个具有语法突出显示、基本代码完成、大纲等的编辑器,以 Eclipse 为目标——注意它的核心(允许创建自定义语言)最近成为开源:http : //liclipse.blogspot.com.br/2016/05/liclipse-303-providing-back-to-open.html

添加新语言不需要 Java 技能(主要是在适当的位置创建一个新的 .liclipse——这是一个 YAML——文件,并创建一些基本规则来说明如何划分你的语言——即:通常只是分离代码来自字符串的注释——并指定分区中的关键字已经为您提供了正确的语法突出显示)。

如果您下载它,在 plugins\com.brainwy.liclipse.editor\languages 中有许多示例,在http://www.liclipse.com/text/supported_languages.htmlhttp://www有一些基本文档.liclipse.com/text/scope_definition.html关于如何做到这一点。

  • 我确实觉得这个主意不错,但请记住,LiClipse 并不是真正免费的`简而言之,许可证允许任何人在 30 天内评估 LiClipse,但必须购买才能继续使用。` (3认同)