2012-11-22 48 views
1

我爲Eclipse編寫自己的文本編輯器插件。我現在正在研究自己的格式化程序。其實,下面的鏈接http://wiki.eclipse.org/FAQ_How_do_I_support_formatting_in_my_editor%3F。 我寫了我的策略,我在我的SourceViewerConfiguration中覆蓋了getContentFormatter ..當我運行我的插件並按下Ctrl + Shift + F時,沒有任何反應。在Eclipse中的自定義插件中觸發格式器

我認爲,我在這裏缺少一個步驟。我應該創建一個處理程序什麼的?

謝謝

回答

0

什麼幫助了我。我創建了一個具有以下執行者主體的處理程序:

//get the editorPart  
if (editorPart != null) { 
       ITextOperationTarget target = (ITextOperationTarget) editorPart 
         .getAdapter(ITextOperationTarget.class); 
       if (target instanceof ISourceViewer) { 
        ISourceViewer textViewer = (ISourceViewer) target; 
        ((ITextOperationTarget) textViewer) 
          .doOperation(ISourceViewer.FORMAT); 
       } 
      } 

然後只需創建菜單項並將它們綁定到處理程序。

1

可能是你跳過鏈接頁面的最後一部分?

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

sourceViewer.doOperation(ISourceViewer.FORMAT); 
+0

這是什麼動作?處理程序? –

相關問題