是否可以将Eclipse配置为突出显示XML中的Java语法?

2022-04-18 00:00:00 syntax-highlighting java eclipse

我正在为一个产品编程,该产品包含嵌入到较大的XML文件中的Java(实际上是BeanShell)代码片段。这些是在运行时动态执行的。在整个文档的不同级别上可以有多个这样的代码标记。

<larger-xml-file>
 <java>
  // java code that I want to syntax highlight
 </java>
 <more-xml...>
</larger-xml-file>

允许在特定的XML标记内突出显示代码的基本语法将是非常好的。例如,我知道vi可以使用HTML中的<script>标记来实现这一点。这真的会帮助我捕捉到一些愚蠢的错误,比如缺少结尾引号。

如果它能允许完成或基本语法检查,那就更好了。

有没有办法在Eclipse中轻松配置此功能?

应该可以通过推荐答案项目TM4E通过TextMate语法突出显示语法。

Eclipse Wild Web Developer,其中使用了Eclipse TM4E,显示了嵌入/包含/注入语法是如何针对HTML中的JavaScript工作的:

  • HTML grammar includesJavaScript grammar
  • 必须通过扩展点注册两种语法:HTML和JavaScript
  • 为通用文本编辑器注册文件扩展名.html
<extension point="org.eclipse.core.contenttype.contentTypes">
   <content-type
      base-type="org.eclipse.core.runtime.text"
      file-extensions="html"
      id="contentType.html"
      name="HTML"
      priority="low"/>
</extension>
<extension point="org.eclipse.ui.genericeditor.presentationReconcilers">
   <presentationReconciler
      class="org.eclipse.tm4e.ui.text.TMPresentationReconciler"
      contentType="contentType.html"/>
</extension>
<extension point="org.eclipse.ui.editors">
   <editor
      name="HTML Editor"
      icon="icons/html_editor_icon.png"
      class="org.eclipse.ui.internal.genericeditor.ExtensionBasedTextEditor"
      contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
      id="language-editor.html"
      default="true"
      extensions="html">
   <contentTypeBinding
      contentTypeId="contentType.html"/>
   </editor>
</extension>

相关文章