无法识别自定义 CEditor Eclipse CDT

Custom CEditor Eclipse CDT not recognized

如何选择使用我的 CEditor 实现而不是内置的?

<extension
  id="highlighter.CustomEditor1"
  point="org.eclipse.ui.editors">
  <editor
     default="true"
     name="CustomCHighlightEditor"
     extensions="c,cusc"
     icon="icons/c_file_obj.gif"
     class="highlighter.CustomEditor"
     contributorClass="org.eclipse.cdt.internal.ui.editor.CEditorActionContributor"
     symbolicFontName="org.eclipse.cdt.ui.editors.textfont"
     id="highlighter.CustomEditorC">
  </editor>

不工作(没有错误,没有变化)。如果我打开一个 C 文件,它仍然是用旧编辑器打开的。

编辑:

当尝试更改此图像中的默认编辑器时:

它只被我创建的 cusc 扩展识别,就像你在这里看到的:

所以必须有一些东西可以防止覆盖文件关联?

两种文件类型都缺少诸如折叠之类的 ceditor 功能:-/

编辑:现在可用,有一些偏好错误

专攻内容类型

如果您想让您的编辑器默认为某些特定的 C 文件打开,您需要定义您自己的内容类型,然后将您的编辑器与该专门的内容类型相关联。

例如 Ant extends 基本 xml 内容类型定义了一个特定于 ant 的内容类型。

<extension 
        point="org.eclipse.core.contenttype.contentTypes"> 
        <content-type  
            id="antBuildFile" 
            name="%antBuildFileContentType.name" 
            base-type="org.eclipse.core.runtime.xml"
            file-names="build.xml"
            file-extensions="macrodef,ent,xml,ant"
            priority="normal"> 
            <describer 
                class="org.eclipse.ant.internal.core.contentDescriber.AntBuildfileContentDescriber">
            </describer> 
        </content-type> 
    </extension>

关键是 ant 文件可以是 .xml 文件,但它的内容有些不同。查看 AntBuildfileContentDescriber 以了解 Ant 如何区分构建文件和普通 xml 文件。

如果您随后查看 ant UI 的 plug-in XML,您会发现与特定内容类型关联的编辑器。

更改默认编辑器

如果您只想更改 C 文件默认使用的编辑器并且有多个编辑器可用,请转至 首选项 -> 常规 -> Editors -> File Associations and select 你想要的文件(*.c)并更改默认值编辑.