Les tabulations et des espaces de conversion
Je voudrais convertir automatiquement entre les tabulations et des espaces pour l'indentation quand je m'engage/code de mise à jour/à partir de notre dépôt. J'ai trouvé le AnyEdit plugin pour eclipse, qui peut convertir les répertoires de fichiers. Pas mal pour un début, mais quelqu'un at-il plus expierience sur comment gérer cela? Ou peut-être connaissez un script Ant ou autre chose?
- Consultez le lien suivant que j'avais écrit qui contient les étapes pour convertir les tabulations en espaces à partir d'Eclipse.
Vous devez vous connecter pour publier un commentaire.
Pourquoi ne pas simplement utiliser le formateur de code et/ou le nettoyage de la fonction? Il a des paramètres qui prennent soin de ce genre de choses pour vous. Vous pouvez même qu'il s'exécute automatiquement lors de l'enregistrement.
Edit: Comme Peter Perháč points dans les commentaires, cela ne vous répond que la moitié de la question. Je n'ai pas d'expérience pratique, mais vous pouvez essayer de le Maven Eclipse Plugin Format de format à partir d'une Maven build.
Malheureusement, Maven seulement, et je ne connais pas la lumière-poids de la ligne de commande de formatage. Mais si vous utilisez Maven, vous pouvez lier le format de but à la bonne phase, et si vous définissez l'Éclipse à l'auto-construction, il serait le format de mise à jour.
En fonction de l'outil SCM (git, svn, etc), vous pouvez également créer un hook qui exécute le construire (mais c'est peut-être un peu trop lourd pour que).
- Je utiliser le AnyEdit plugin auto-convertir les tabulations en espaces sur l'enregistrement d'un fichier. J'ai aussi configurer la base de l'éditeur de texte (à partir de laquelle à peu près tous les autres dérivent) pour insérer des espaces à la place des onglets. Cela semble redondant, mais ce qu'il fait est de vous assurer que je ne suis pas d'insérer des onglets, et un fichier que j'ai modifier qui a déjà onglets seront convertis dès que je l'enregistre en.
Onglets n'ont pas de place dans le code source. Si quelqu'un d'autre regarde le fichier avec leurs onglet-stops une valeur différente, ils perdent la plupart d'alignement/mise en forme de toute façon.
(Bien sûr, si vous avez des Makefiles que vous modifiez directement, vous aurez envie de faire en sorte que leurs pattes sont conservés. Mais dans mes projets, si elle est utilisée à toutes les Makefile est dérivé à partir d'une autre source, comme un Makefile.PL en Perl.)
Un peu excessif, et seulement quelque chose à tenter, avec dépôt des produits qui peut s'en occuper, mais un script hook pour appeler le retrait ou astyle pourrait faire l'affaire. C'vais formater tout le monde code de la même façon pour chaque fichier, en fonction de la façon dont vous écrivez le script hook, et il faudrait être pré-validation de cours.
Vous risquez de perdre l'alignement/mise en forme en utilisant les onglets à la place des espaces si et seulement si les onglets ne sont pas au début de la ligne. Ne jamais utiliser les onglets à l'intérieur des lignes, toujours utiliser les onglets à l'avant des lignes. Cela vous permet d'utiliser votre éditeur de texte pour ajuster votre niveau de retrait sans impact sur votre co-travailleurs de l'affichage du fichier. Défi: Trouver un exemple où les languettes à l'avant de la ligne perd de l'alignement.
- Je utiliser Kedit pour cette chose. Il a également nativement convertit les fichiers texte à partir d'un Macintosh, UNIX et MS-Dos. Depuis, c'est une ancienne de l'éditeur, j'ai utiliser l'un de ses scripts pour gérer les fichiers unicode.
Vous pouvez aussi regarder quelques autres smart éditeurs.
J'utilise Eclipse pour développeur Java EE 4.6.0 Néon. J'utilise http://marketplace.eclipse.org/content/anyedit-tools