2012-12-07 12 views
5

Jeśli moich .emacs jest pusty lub jeśli zawiera tylko liniePrawidłowe obchodzenie się z wcięcia Java @Override w 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))) 

wtedy zamiast posiadające chronione dostosowane @Override

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

chroniony wychodzi zamiast wcięte względem @Override

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

Jakie zmiany należy wprowadzić w moim .emacs tak t czapeczka wgłębienie wychodzi jako górna próbka powyżej?

+0

myślę, że należy rozważyć przy użyciu Eclipse IDE lub innej; znacznie poprawiłoby to twoją wydajność. Często używam emacs, ale nigdy dla Javy. –

+0

Zgadzam się, że Eclipse jest świetny. Przełączam się między Eclipse i emacs (i ten problem w jedynej różnicy w wcięciu między nimi). W tym momencie uważam, że oba są niezbędne, ponieważ emacs ma ogromną liczbę funkcji, których nie ma w środowisku Eclipse. – Calaf

Odpowiedz

0

Look do annotation-top-cont styl c-offsets-alist definicji. Aby nie było identyfikacji, musisz ustawić ją na 0. Więcej informacji pod numerem CC-mode manual.

+0

Przepraszam, Alex, czy mógłbyś jeszcze raz sprawdzić? adnotacja-wierzchołek-kropka nie jest wystarczająca, aby rozwiązać problem. – Calaf

+0

Myślę, że problem polega na tym, że ustawiłeś c-offset-alist globalnie, ale w dokumentacji stwierdza, że ​​ta zmienna staje się lokalna, jeśli jest ustawiona w dowolny sposób. Musisz użyć '(c-set-offset 'adnotacja-do-góry-0)' w '' java-mode-hook' function ... –

+0

To wciąż praca w toku. Zmodyfikowałem pytanie, aby uwzględnić Twoją sugestię. – Calaf

Powiązane problemy