2009-11-23 4 views

Odpowiedz

11

Brak szablonów dla modułów pobierających ani dla równań/kodów kreskowych. Są one zapisane w IDEA.

Source

Widać, że w tej IntelliJ Wishlist

+3

Są teraz (używam Ultimate 2016) - zobacz odpowiedzi poniżej – werner

10

Nie wspominając co wersja IDEA używasz, więc zakładam, że niedawne 8 lub 9.

Sprawdź ustawienia kodu styl, pod „wyrównanie i szelki”. Powinieneś znaleźć opcję "Proste metody w jednym wierszu".

+0

Jesteśmy 8.1.3. Wydaje się, że to nie działa. –

+0

Czy próbowałeś odznaczyć powiązane pole "Podziały linii" w grupie "Zachowaj podczas ponownego formatowania"? – seh

+3

Ustawienie jednoliniowe mówi IntelliJ, aby zostawił to w ten sposób przy ponownym formatowaniu, ale nie w taki sposób. –

9

Nie wiem dlaczego chcesz to zrobić, prawdopodobnie na oszczędność przestrzeni wizualnej. Jeśli tak, po prostu użyj funkcji IntelliJ, aby spasować trywialne programy pobierające/ustawiające i zapomnij o tym, jak linie się zajmują. Folding funkcji można znaleźć w

Ustawienia -> Ustawienia IDE -> Editor -> Code Folding -> Pokaż kod składane zarys -> Prosty nieruchomość dostępowe

26

Używam IntelliJ IDEA 14.1.0 i można dostosuj to zachowanie.

Wystarczy skorzystać z opcji "Generowanie ...", lub użyć Alt + Insert skrótu i ​​wybierz "Getter i Setter".

W otwartym oknie "Wybierz pola" widoczna jest opcja "Szablon gettera". Użyj przycisku "..." obok menu rozwijanego, aby edytować szablon.

Wybierz "IntelliJ Default" i kliknij przycisk "Kopiuj", aby utworzyć nowy o nazwie "AlwayStartWithGet", który można edytować.

Wystarczy usunąć następującą sekcję:

#if ($field.boolean) 
    #if ($StringUtil.startsWithIgnoreCase($name, 'is')) 
    #set($name = $StringUtil.decapitalize($name)) 
    #else 
    is## 
#end 
#else 
    get## 
#end 

I zastąpić go zwykłą

get## 

powinien być pozostawiony z:

publiC## 
#if($field.modifierStatic) 
    statiC## 
#end 
$field.type ## 
#set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project)))) 
get## 
${name}() { 
    return $field.name; 
} 

Teraz można korzystać z szablonu niestandardowego podczas generowania kodu, zaznaczając go w rozwijanym menu szablonów.

+0

To wygląda obiecująco, ale nie widzę przycisku szablonu Getter na górze tego okna dialogowego. Korzystanie z 14.0.2. – Gervase

+2

Pracowałem dla mnie, ale dokładniej ostatnia część szablonu powinna wyglądać następująco: '$ {name}() {return $ field.name; } ' w jednej linii –

+4

Upewnij się, że zaznaczyłeś również Ustawienia/kod Styl/Java/Proste bloki w jednym wierszu i Proste metody w jednym wierszu. W przeciwnym razie automatyczne formatowanie spowoduje powrót linii z powrotem i nie widać żadnego efektu po modyfikacji szablonu ... – werner

3

Na pomysł 2016.

szablon Getter

Merge ostatnie 3 linie w jednym wierszu:

${name}() { return $field.name; } 

Seter szablonu

Dodaj podwójnego mieszania (bez spacji) na koniec najdłuższa linia:

[...] ($field.type, $paramName) {## 

Merge ostatnie 2 linie w jednym wierszu:

$field.name = $paramName; } 

Uwaga: jak komentował @mindas, prawdopodobnie zechcesz zamiast wizualnego automatyczne zwijanie że nie uzyskać wersji.