2012-07-31 58 views
2

我正在編寫一個自定義的Eclipse編輯器,通過繼承TextEditor,我不能使用我配置的Format操作。如何在自定義Eclipse編輯器中公開內容格式化程序?

我讀了Creating a commercial quality 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子類中實現了其他方法,並且其他所有方法在我的編輯器(完成,超鏈接,對帳)中按預期工作。

暴露格式化程序的首選方法是什麼?我需要做更多的事嗎?

回答

3

引述Eclipse formatter FAQ

最後,您將需要創建調用格式化的動作。 文本基礎結構沒有定義通用的格式化操作,但是創建自己的文檔非常容易。該操作的run方法 可以簡單地調用源代碼查看器下面的調用 格式:

sourceViewer.doOperation(ISourceViewer.FORMAT);

+0

非常感謝您的聯繫!我GOOGLE了很多,但沒有發現任何相關的。看起來不錯! – 2012-07-31 21:08:11

相關問題