2012-04-04 17 views

Odpowiedz

3

AFAIK nie ma działającego (inteligentnego) automatycznego uzupełniania dla Groovy. Jeśli masz skłonność do hakowania, najprostszym sposobem na osiągnięcie tego byłoby zmodyfikowanie emacs-eclim (pakietu Emacs do rozmowy z Eclipse) do pracy z Eclipse Groovy plugin. Nie powinno być tak źle, ponieważ istnieje istniejący kod do pracy z Eclipse Java, który można wykorzystać jako rusztowanie.

HTH i przepraszam :(

3

ja „hacked” zarówno emacs-eclim i Eclim dostać uzupełniania kodu, nie całkiem lub funkcji autouzupełniania, wystarczająco dobre na kilka godzin pracy.

1. Uwagi:

  • ukończenie Code jest obsługiwany, ale jest powolny z autouzupełniania trybie czasem, zwłaszcza gdy zakończenie jest wyzwalany automatu ically. Używam TAB do automatycznego uzupełniania popup i ALT-TAB dla bufora uzupełnień, jeśli szukam wszystkich możliwych uzupełnień.
  • Aktualizacja źródła w przypadku zgłaszania problemów jest obsługiwana, ale nie w pełni dokładna. . Jak zapisać bufor przyrostową build jest wykonywana oraz raport błędów jest dostępne (problemy poprzez Cc Ce o

przypadku korzystania autouzupełnianie, ustaw następujące opcje:

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

2 . Montaż

3. Konfiguracja Emacs Przykładowe mrówka poprzez use-package i ELPA.

Jeśli nie używać użytkową pakietu dostosować w zależności od potrzeb ...

(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)))))