2011-10-19 11 views
6

W moim edytorze kodu java, w moim profilu mam (faktycznie jest to domyślne zaćmienie) wszystkie opcje w zakładce "nawiasy klamrowe" ustawione na "ten sam wiersz". Niemniej jednak, kiedy mam kawałek kodu takiego:Wymuszenie "tej samej linii" na nawiasach klamrowych w edytorze Eclipse

interface TestI 
    { 
} 

i wzywam formatowania (wiązanie klawisz menu kontekstowego, cokolwiek) wszystko mogę to

interface TestI 
{ 
} 

nie przesuwa otwarcie szelki do tej samej linii, to samo odnosi się do metod kontroli, sprawozdań itp wtedy, kiedy ręcznie zmienić na

interface TestI  { 
} 

to następnie formatuje go:

interface TestI { 
} 

Zasadniczo szanuje on format, który zrobiłem ręcznie, ale jedynie formatuje spacje między nawiasami klamrowymi i innymi elementami.

Inne opcje formatowania w moim formatyzatorze działają zgodnie z podanymi. Używam najnowszego wydania Eclipse Indigo 3.7.1, miałem to samo z 3.7, a mój przyjaciel próbował go z wersją 3.5, więc myślę, że to jest celowe, ale z drugiej strony, dlaczego jest to "szelki" jeśli nie mogę ponownie sformatować kodu przy użyciu tej reguły ...

Mam nadzieję, że coś mi brakuje i że sprawię, że stracę przytomność, a problem zniknie, ponieważ mam gazillion klas do czyszczenia i nie chcę tego robić ręcznie .. :)

AKTUALIZACJA: kiedy ustawiam regułę nie na "ten sam wiersz", ale "na następnej linii", to formatowanie działa zgodnie z oczekiwaniami, wymusza regułę bez względu na to, jak napisałem kod, gdy tylko zmienię go z powrotem na "tę samą linię", formater nie wymusza tej reguły.

Odpowiedz

13

Znaleziono go ... to było spowodowane przez:

<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="false"/> 

który w formater zachodzącego GUI jest pod „Linia do owijania/Nigdy nie przystępować zawiniętych linii”

tak teraz Pamiętam ustawienie go, ale nigdy nie sądziłem, że to zlekceważy ustawienie klamry ...

niezastąpioną funkcją formatera byłoby ostrzeżenie, jeśli ustawisz opcje, które nie są opcjami z powodu innych opcji, które masz ustaw je.

+3

Niestety, to również zabiera moje starannie skomponowane ładnie zapakowane wywołania funkcji i zgniata je razem na 2,5 liniach chaotycznego bałaganu. Chciałbym, żeby zrobiły to tylko aparaty ortodontyczne. – Cheezmeister

+0

@Cheezmeister tak! Szkoda, że ​​nie ma konkretnego ustawienia dla aparatów ortodontycznych ... –

Powiązane problemy