2012-12-07 13 views
5

Se i miei .emacs è vuota o se contiene solo le lineecorretta gestione delle rientro @Override di Java in emacs

(require 'cc-mode) 
(add-to-list 'c-offsets-alist '(annotation-top-cont .0)) 

(add-hook 'java-mode-hook 
      '(lambda() (c-set-offset 'annotation-top-cont 0))) 

allora invece di aver protetto allineato con @Override

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 

protetta esce invece rientrato rispetto a @Override

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 

Quali modifiche devo apportare al mio .emacs così t la rientranza esce come il campione in alto sopra?

+0

penso che si dovrebbe considerare l'utilizzo di Eclipse o qualche altro IDE; migliorerebbe enormemente la tua produttività. Uso molto emacs, ma mai per Java. –

+0

Concordo sul fatto che Eclipse sia eccezionale. Passo avanti e indietro tra Eclipse ed emacs (e questo problema è l'unica differenza tra i due). In questo momento trovo entrambi necessari, perché emacs ha un formidabile numero di funzionalità che manca a Eclipse. – Calaf

risposta

0

Vedere lo stile annotation-top-cont per la definizione c-offsets-alist. Per non rendere identificativo, è necessario impostarlo su 0. Altre informazioni in CC-mode manual.

+0

Scusa, Alex, potresti controllare di nuovo? annotation-top-cont non è sufficiente per risolvere il problema. – Calaf

+0

Penso che il problema è che si imposta c-offset-alist globalmente, ma nella documentazione si afferma che questa variabile diventa locale se è impostata in qualsiasi modo. È necessario utilizzare '(c-set-offset 'annotation-top-cont 0)' nella funzione 'java-mode-hook' ... –

+0

È ancora work-in-progress. Ho modificato la domanda per includere il tuo suggerimento. – Calaf