52 votes

Comment indenter le modèle d'interface fluide "correctement" avec eclipse?

Je viens de créer un générateur pour certaines interfaces fluides. Maintenant, j'ai beaucoup de code ressemblant à ceci:

 new MyFluentInterface()
    .setFirst( "first" )
    .setSecond( "second" )
    .setThird( "third" )
    .invoke( obj );
 

J'aime l'indentation illustrée ci-dessus, mais je ne trouve pas le moyen de configurer eclipse pour l'indenter correctement.

Eclipse indente toujours comme ceci:

 new MyFluentInterface()
.setFirst( "first" )
.setSecond( "second" )
.setThird( "third" )
.invoke( obj );
 

Comment configurer eclipse pour qu'il indente ce modèle d'interface fluide, comme indiqué dans mon premier exemple de code?

68voto

Pascal Thivent Points 295221

Avec Eclipse 3.6, ce qui semble faisable par la configuration de votre personnalisé Java Code > Style > Formateur de profil. Modifier et aller à la Ligne d'Habillage et sélectionnez l'onglet Appel de Fonction > Qualifié invocations. Ensuite, dans les Paramètres pour les invocations, configurer des choses comme ceci:

alt text

Cela devrait produire le résultat attendu:

SomeEntity e1 = new SomeEntity.Builder()
    .age(10)
    .amount(10.0d)
    .firstname("foo")
    .lastname("bar")
    .build();

Mais bien évidemment, cela aura une incidence sur tous les code, personnellement, je n'aime pas. Donc je suis en utilisant le nouveau Off/Sur les Balises à partir d'Eclipse 3.6 (dernier onglet lors de la modification d'un profil):

alt text

Et joindre les pièces qui ne sont pas formatés comme je veux le faire moi-même:

// @formatter:off
SomeEntity e2 = new SomeEntity.Builder()
    .age(10)
    .amount(10.0d)
    .firstname("foo")
    .lastname("bar")
    .build();
// @formatter:on

Choisissez votre poison :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X