2

我正在通过子类化编写自定义 Eclipse 编辑器TextEditor,但我无法使用Format我配置的操作。

我阅读了创建商业质量 IDE中的 3 个部分,并且了解了SourceViewerConfiguration. 我实现了所需的方法:

  override def getContentFormatter(viewer: ISourceViewer) = {
    val formatter = new MultiPassContentFormatter(getConfiguredDocumentPartitioning(viewer), IDocument.DEFAULT_CONTENT_TYPE)
    formatter.setMasterStrategy(new ScalaFormattingStrategy(textEditor))
    formatter
  }

Format但是,我在菜单、上下文菜单、工具栏等中找不到任何位置。Java 快捷方式 ( CMD-Shift-F) 也不起作用。

编辑:我在SourceViewerConfiguration我创建的子类中实现了其他方法,其他一切都在我的编辑器中按预期工作(完成、超链接、协调)。

公开格式化程序的首选方法是什么?我还需要做些什么吗?

4

1 回答 1

3

引用Eclipse 格式化程序常见问题解答

最后,您需要创建一个调用格式化程序的操作。文本基础结构没有定义通用的格式化操作,但很容易创建自己的格式化操作。该操作的 run 方法可以简单地在源查看器上调用以下命令来调用格式化程序:

sourceViewer.doOperation(ISourceViewer.FORMAT);

于 2012-07-31T18:48:25.793 回答