Existe-t-il une variable dans le formateur externe (org.eclipse.jdt.core.formatter ......) pour appliquer chaque variable enum dans une ligne distincte?
Paramesh Korrakuti
Réponses:
198
La réponse de @wjans fonctionnait bien pour les énumérations normales, mais pas pour les énumérations avec des arguments. Pour développer un peu sa réponse, voici les paramètres qui m'ont fourni le formatage le plus sensible dans Eclipse Juno:
Window> Preferences> Java> Code Style>Formatter
Cliquez sur Edit
Sélectionnez l' Line Wrappingonglet
Sélectionnez le enumtreenode de déclaration
Réglez Line wrapping policysur Wrap all elements, every element on a new line (...)ainsi il indique maintenant 3 sur 3 entre parenthèses.
Décochez-la Force split, even if line shorter than maximum line width (...)pour indiquer maintenant 3 sur 3 entre parenthèses.
Sélectionnez le Constantstreenode
Vérifier Force split, even if line shorter than maximum line width
Cela définit les 3 sous-nœuds pour le treenode d'énumération sur la même politique d'encapsulation, et la même politique de partage de force à l'exception du Constantstreenode, de sorte que vos énumérations avec des arguments seront formatées chacune sur leur propre ligne. Les arguments ne seront enveloppés que s'ils dépassent la largeur de ligne maximale.
J'ai eu ce problème pendant des mois. La chose que je n'ai pas essayée était la "séparation de force". Je ne sais pas pourquoi cela devrait être nécessaire, car vous penseriez que "envelopper tous les éléments" engloberait tous les éléments! Merci pour la solution.
LegendLength
11
C'est un peu moche aussi, mais si la politique de votre entreprise vous empêche de changer le formateur, vous pouvez simplement mettre des commentaires à la fin des lignes que vous ne voulez pas encapsuler.
Cela fonctionne ... en quelque sorte. Le compilateur pense maintenant que c'est une erreur. Les mettre en commentaires permet de résoudre ce problème comme // @formatter: off
Bob Kuhar
4
Vous devez définir la stratégie de retour à la ligne sous la déclaration d'énumération pour «Constantes».
Définissez la stratégie d'emballage sur
Enveloppez tous les éléments, chaque élément sur une nouvelle ligne
ET
Cochez la case "Forcer le fractionnement, même si la ligne est plus courte que ,,,,,
Réponses:
La réponse de @wjans fonctionnait bien pour les énumérations normales, mais pas pour les énumérations avec des arguments. Pour développer un peu sa réponse, voici les paramètres qui m'ont fourni le formatage le plus sensible dans Eclipse Juno:
Window
>Preferences
>Java
>Code Style
>Formatter
Edit
Line Wrapping
ongletenum
treenode de déclarationLine wrapping policy
surWrap all elements, every element on a new line (...)
ainsi il indique maintenant 3 sur 3 entre parenthèses.Force split, even if line shorter than maximum line width (...)
pour indiquer maintenant 3 sur 3 entre parenthèses.Constants
treenodeForce split, even if line shorter than maximum line width
Cela définit les 3 sous-nœuds pour le treenode d'énumération sur la même politique d'encapsulation, et la même politique de partage de force à l'exception du
Constants
treenode, de sorte que vos énumérations avec des arguments seront formatées chacune sur leur propre ligne. Les arguments ne seront enveloppés que s'ils dépassent la largeur de ligne maximale.Exemples:
@wjans
Solution décrite ci-dessus:
la source
Vous pouvez le spécifier dans vos préférences de formateur:
la source
C'est un peu moche aussi, mais si la politique de votre entreprise vous empêche de changer le formateur, vous pouvez simplement mettre des commentaires à la fin des lignes que vous ne voulez pas encapsuler.
la source
Ce n'est pas sympa mais vous pouvez désactiver le formateur Eclipse pour certaines sections de code ...
l'option se trouve dans le panneau Windows-> Préférences-> Java-> Style de code-> Formatter-> Edit-> Off / On Tags
la source
Vous devez définir la stratégie de retour à la ligne sous la déclaration d'énumération pour «Constantes».
Définissez la stratégie d'emballage sur
ET
la source
Ajout de la dernière Eclipse 2018.9
Window > Preferences > Java > Code Style > Formatter
-Edit
Line Wrapping
nœud de l'arborescence.Wrapping settings
'enum' declaration
Constants
etConstant arguments
.Les constantes doivent l'être
Wrap all elements, every element on a new line
. Des arguments constants doivent l'êtreWrap where necessary
.la source