2012-04-04 129 views

回答

3

AFAIK沒有爲Groovy工作(智能)自動完成。如果您傾向於進行一些黑客攻擊,那麼最簡單的方法就是修改emacs-eclim(與Eclipse交談的Emacs包)以與Eclipse Groovy plugin一起使用。不應該那麼糟糕,因爲現有的可以用作腳手架的Eclipse Java代碼。

HTH和遺憾:(

3

我已經「黑客」都emacs-eclimEclim得到代碼完成,工作幾個小時不漂亮或功能完善,不夠好。

1注

  • 代碼完成是支持的,但它是緩慢的具有自動完成模式有時,特別是在完成觸發自動售貨機ically。我使用TAB來啓動自動完成功能彈出窗口和ALT-TAB用於完成緩衝區,如果我查找所有可能的完成項。
  • 支持更新問題報告的源,但不完全準確。正如你節省如果使用自動完成緩衝區進行增量構建和錯誤報告工具(通過抄送鈰問題Ø

,設置如下:

(ac-set-trigger-key "TAB") 
(setq ac-auto-start nil) 

2 。安裝

3.樣品的Emacs通過use-package和ELPA配置。

如果不使用用包,需要適應......

(use-package eclim                            
    :ensure emacs-eclim // overwrite ELPA install with my copy                           

    :init (setq help-at-pt-display-when-idle t                      
       eclimd-default-workspace "~/Documents/workspace/"                 
       help-at-pt-timer-delay 0.1)                       

    :config (progn (help-at-pt-set-timer)                       
       (mapC#'require '(eclimd auto-complete-config))                 
       (ac-config-default)                        
       (add-hook 'groovy-mode-hook 'auto-complete-mode)                 
       (require 'ac-emacs-eclim-source)                     
       (ac-emacs-eclim-config)                       

       (defun ers/eclim-run-class()                     
        (interactive)                         
        (beginning-of-buffer)                       
        (search "class ")                        
        (forward-word)                         
        (eclim-run-class))                        

       (bind-keys :map eclim-mode-map                     
          ("C-c C-e l m" . eclim-manage-projects)                
          ("C-c C-e l r" . ers/eclim-run-class)                 
          ("C-c C-e l c" . garbage-collect)                  
          ("C-c C-e l b" . eclim-project-build))                

       (add-hook 'groovy-mode-hook                      
          (lambda()                        
          (remove 'ac-source-clang 'ac-sources)                
          (eclim-mode t)))                      

       (add-hook 'java-mode-hook                      
          (lambda()                        
          (remove 'ac-source-clang 'ac-sources)                
          (eclim-mode t)))))