在eclipse插件中:如何在java编辑器中以编程方式突出显示代码行?

时间:2012-12-10 13:41:48

标签: eclipse eclipse-plugin editor

我正在尝试开发一个eclipse插件,它可以对java代码进行一些文档检查,并在编辑器中突出显示一些代码行。

为了实现我的目标,我不想在eclipse中创建一个新的编辑器,我只是想扩展默认的java编辑器,在不满足某些预定要求的方法下绘制一条线(或突出显示)

我是否需要创建PresentationReconciler?如果是,我如何让JDT或工作台使用我的协调程序。

我从未做过插件开发,这是我的第一次尝试。

5 个答案:

答案 0 :(得分:4)

您有几个出发点:

  • Annotations JFace文本编辑器的UI功能,可让您在开放式编辑器中以可视方式标记某些位置。

  • Markers Workbench 功能,更高级别。它们是通用的“可能与Workbench资源相关联的对象”,它们可以显示在多个位置:例如,在文本编辑器中(作为注释)或在“问题”视图中。

根据您的目的,您可以将插件插入与其中任何一个相关的扩展点。

答案 1 :(得分:1)

Eclipse Java编辑器位于org.eclipse.jdt.internal.ui.javaeditor.JavaEditor包中。

包名称中的“内部”意味着Eclipse开发团队可以更改Java编辑器如何使用新修订版。

答案 2 :(得分:1)

试试此帮助页面:Juno Help on syntax highlighting

在页面的最后,它描述了如何动态添加PresentationReconciler,用于语法突出显示。看看是否符合您要解决的问题。

答案 3 :(得分:0)

我假设你已经有了一个插件项目。

在plugin.xml中,打开标签Extensions,点击Add...,搜索org.eclipse.ui.editors,然后您会看到一个名为Editor的模板,该模板会生成一个简单的xml编辑器来实验和玩耍。此外,您将能够看到定义自定义编辑器所需的结构。

希望这会有所帮助......

答案 4 :(得分:0)

我不知道你是否还需要这个,但是你想要使用Annotations来跟踪你需要突出显示的编辑器的哪些部分。

为了实际执行突出显示的图形效果,您可以通过PresentationReconciler进行语法突出显示,但我没有经验。

我们使用了从http://editbox.sourceforge.net/借来的技术,取代了编辑器Shell的背景图像。它的开源,所以检查出来。 (我们的代码也可能有所帮助 - 它在https://github.com/IDE4edu/EclipseEditorOverlay