我已经定义了标准的TextEditor来打开 .git 文件。 (code at GitHub)
<!-- git -->
<extension
point="org.eclipse.ui.editors">
<editor
class="org.eclipse.ui.editors.text.TextEditor"
contributorClass="org.eclipse.ui.texteditor.BasicTextEditorActionContributor"
default="true"
extensions="gitignore,gitmodules,gitattributes"
icon="icons/git.ico"
id="org.eclipse.ui.DefaultTextEditor"
name="Text Editor">
</editor>
</extension>
但是,无论我打开什么文件,此代码都会更改TextEditor的图标。
是自定义文本编辑器的唯一方法吗? 仅针对文件类型是否有特定的扩展点?
更新:定义自己的编辑器如下
import org.eclipse.ui.editors.text.TextEditor;
public class GitFilesEditor extends TextEditor{
让事情变得更复杂(我不想指定所有这些项目)
Multiple markers at this line
- The type org.eclipse.jface.text.source.Annotation cannot be resolved. It is indirectly referenced from required .class files
- The type org.eclipse.jface.text.revisions.RevisionInformation cannot be resolved. It is indirectly referenced from required .class files
- The type org.eclipse.jface.text.source.ISourceViewer cannot be resolved. It is indirectly referenced from required .class files
- The type org.eclipse.jface.text.IRegion cannot be resolved. It is indirectly referenced from required .class files
- The type org.eclipse.jface.text.source.IVerticalRuler cannot be resolved. It is indirectly referenced from required .class files
答案 0 :(得分:3)
您的编辑器具有与默认文本编辑器相同的ID:
id="org.eclipse.ui.DefaultTextEditor"
这肯定会混淆Eclipse编辑器扩展查找。只需在那里使用自定义ID,例如
id="org.nodeclipse.editor.git"
我还会将名称更改为“Git Text Editor”或类似内容,以避免在编辑器首选项页面中出现重复标签。