2013-03-23 7 views
6

Od dawna jestem osobą "dopasowującą nawiasy klamrowe". A dzięki szerokim monitorom umieszczam długie komentarze po kodzie. Więc w Eclipse chcę formatować takie rzeczy:Brak podziału wiersza przed komentarzem po innym w Eclipse

if(foo) 
{ 
    something(); 
} 
else 
{ 
    somethingElse(); 
} 

Dobrze; to łatwe. Ale potem dodać komentarz:

if(foo) //if foo is true 
{ 
    something(); 
} 
else //if no foo 
{ 
    somethingElse(); 
} 

formatuje Dratted Eclipse tak:

if(foo) //if foo is true 
{ 
    something(); 
} 
else 
//if no foo 
{ 
    somethingElse(); 
} 

Wielki. Ta cała zmarnowana linia. I wygląda brzydko. I to nie jest nawet dokładne, ponieważ chcę komentować linię else.

W jaki sposób mogę zmusić Eclipse do sformatowania mojego if/else z wyrównanymi nawiasami klamrowymi, ale czy moje komentarze mają być w tej samej linii co else?

Zostało to przetestowane w Eclipse 4.2.2, a właśnie potwierdziłem, że nie działa również w Eclipse 4.3M7.

Mam zgłoszony bug w tej sprawie; Zobaczmy, co mają do powiedzenia twórcy Eclipse.

+0

Dzięki, ale jest mnóstwo alternatyw. Mogłabym przestać używać wyrównanych klamer. Mógłbym użyć innego IDE. Mogłabym przełączyć się na język programowania, który używa nawiasów zamiast nawiasów klamrowych. Ale znacie programistów --- jesteśmy wybredni i mamy własne sposoby kodowania. Gdybym myślał, że inny sposób byłby dla mnie lepszy, robiłbym to. Ale podoba mi się mój styl kodowania w taki sposób, w jaki jest, i chcę, aby moje narzędzie, Eclipse, działało ze mną, a nie przeciwko mnie. –

+1

Pomyślałem, że będę w stanie znaleźć jakąś niejasną opcję ustawienia tego, ale nie widzę tego. Chciałbym też to wiedzieć. Jako "zlikwiduj komentarze", mocno wierzę, że kod NIE jest dokumentacją. Zbyt wiele komentarzy w kodzie jest BARDZO rzadko problemem. Nie wszystkie komentarze są dobre, nie wszystkie komentarze są nawet pomocne, ale odpowiedź brzmi: pisz lepiej komentarze, nie usuwaj ich. Dołączę do ciebie w poszukiwaniu sposobu na sformatowanie ich w taki sposób, w jaki chciałbyś je sformatować. – arcy

+0

Dzięki, @rcook; powiedziałeś wszystko, co chciałem powiedzieć. –

Odpowiedz

0

w Eclipse Profil istnieje opcja na karcie komentarze „Zachowaj spacje między kodu i liniowych komentarze”, można spróbować i zobaczyć, czy to działa

EDIT:

myślę Got it: W edycji formatowania przejdź do zakładki Braces i umieść Blocks jako . Ponieważ bardzo się tutaj zmieniłem, nie jestem pewien, czy to jedyny potrzebny. Ale jest to potrzebne. Znacznik Insert new line before else in an if na urządzeniu Control Statements jest również oznaczony.

+0

Próbowałem tego - nie działa. – arcy

+0

Przez "nie działa" mam na myśli to, że nie robi tego, co chciał OP. Próbowałem także tego, który wypowiedział "Włącz formatowanie komentarza liniowego", ale też tego nie robi. – arcy

+0

To nie działało w Eclipse 4.2.x, a właśnie potwierdziłem, że nie działa w Eclipse 4.3M7. –

3
  1. Idź do preferencji
  2. Type "format" w polu wyszukiwania
  3. Select "Java-> Code style-> Formatter" w drzewie
  4. Kliknij przycisk "Edytuj ..."
  5. Przejdź do zakładki „uwagi”
  6. Wybierz „zachować odstępy między kodem i linii komentuje”

że zrobił to dla ja w Galileo.

+0

To jest to samo, co odpowiedź @joaonlima. rcook wypróbował to i nie zadziałało. –

+0

czasami są różne trasy do tej samej opcji w Eclipse, ta działa dla mnie, więc opisałem dokładnie, jak się tam dostać. – jurgenv

+3

To nie działało w Eclipse 4.2.x, a właśnie potwierdziłem, że nie działa w Eclipse 4.3M7. –

1

Używam Eclipse Indigo (3.7), wszystko, co musiałem zrobić, to przejść do Oświadczeń o kontroli -> sprawdź "wstawić znak nowej linii przed" else "w wyrażeniu" jeśli "". (Właściwości wewnętrzne/Styl kodu Java/Formatter/Edycja ...)

Używam kopii domyślnego wbudowanego szablonu Eclipse. Jeśli masz pewność, że nie zmodyfikowałeś wbudowanego szablonu, poinformuj nas, z której wersji korzystasz.

+0

To nie działało w Eclipse 4.2.x, a właśnie potwierdziłem, że nie działa w Eclipse 4.3M7. Poza tym, dlaczego ustawienie "przed" innym "oświadczeniem" ma cokolwiek wspólnego z komentarzami i znakami nowej linii, które pojawiają się po wydaniu "else". W każdym razie nie działa to w Eclipse 4.3M7. –

0

Używam Eclipse Juno (3.8.1) i domyślny wbudowany szablon Eclipse jako program do edycji kodu Java. Mój kod wygląda tak, jak chcesz.

Nie musiałem nawet zmieniać opcji wymienionej w jego odpowiedzi.

Którą wersję Eclipse i szablon do formatowania kodu używasz?

+0

Używałem Eclipse 4.2.2; Używam teraz Eclipse 4.3M7. –