Respostas:
Complementando a resposta de Deepak Azad, o que você precisa exatamente é o seguinte:
Windows : Janela → Preferências → Java → Estilo de código
→ Formatador → Editar → Quebra de linha (guia)Mac OS : ADT → Preferências → Java → Estilo de código
→ Formatador → Editar → Quebra de linha (guia)
Em seguida, na lista à esquerda, selecione:
Chamadas de função → invocações qualificadas
Agora, abaixo desta lista, defina a política de quebra de linha para:
Envolva todos os elementos, exceto o primeiro elemento, se não for necessário
Verifique :
Força a divisão, mesmo se a linha for menor que a largura máxima
Por fim, defina a política de recuo para (obrigado @Turbo ):
Recuar na coluna
Deve fornecer o comportamento exato que você pediu.
BÔNUS: Android Studio / IntelliJ Idea:
Mac OS : Android Studio → Preferências (
Cmd +,
) → Editor → Estilo de código → Java → guia Encapsulamento e colchetes → Chained method calls
selecionar
Embrulhar sempre
e verificar
Alinhar quando multilinha
Indent on column
, às vezes adiciona espaço extra; por exemplo, session.createQuery
torna session .createQuery
- se e assim por diante. No entanto, reverter para a opção padrão resolveu o problema para mim.
Janela → Preferências → Java → Estilo de código → Formador → Editar → Quebra de linha → Nunca junte linhas já quebradas
I am sorry i did not explain: It won't format it. It will simply not mess it up, if you do it manually. –
Janela> Preferências> Java> Estilo de código> Formador> Editar> Quebra de linha> Chamadas de função, defina a 'Política de quebra de linha' como 'Quebra todos os elementos, cada elemento em uma nova linha'.
Para aqueles que têm configurações de formatação de código eclipse verificadas no controle de origem (para formatação de código consistente em toda a equipe), a .settings
pasta é verificada.
A propriedade que fornecerá esse comportamento de formatação está no .settings/org.eclipse.jdt.core.prefs
arquivo.
A propriedade é:
org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=80
Se você deseja fazer a formatação desses segmentos sozinho, pode evitar que o Eclipse reformate esses segmentos usando:
// @formatter:off
...
// @formatter:on
Pode ser necessário habilitar isso em suas preferências: http://archive.eclipse.org/eclipse/downloads/drops/R-3.6-201006080911/eclipse-news-part2.html#JavaFormatter
Consulte também: Como desligar o formatador de código Eclipse para certas seções do código Java?
in: Window-> Preferences-> Java-> Code Style-> Format-> Edit-> Line wrapping-> Function call-> Qualified invocation
selecione a política de recuo como recuo na coluna
return new SomeClass().A().B().C();
com cada chamada de método em uma linha separada.