Cookies Ce site ne conserve que ce dont il a besoin pour fonctionner. Il n’y a aujourd’hui ni mesure d’audience ni publicité, et rien ici ne vous suit sur d’autres sites. Lire la politique de confidentialité

Choisir ce que j’autorise
+92 312 8299940Devis gratuit
Outil gratuit, rien à installer

Beautificateur de code
Cinq langages, une seule indentation

Ce beautificateur de code lit un fichier comme le fait le langage, puis le dispose à nouveau. Choisissez l’un des cinq modes, réglez l’indentation et le style d’accolade, puis recopiez le résultat dans votre éditeur. Rien de ce que vous collez ne quitte le navigateur.

  • GratuitPrix
  • 5Langages
  • AucuneInscription
  • AucuneEnvois

Beautificateur de code

Réindentez Java, C, C++, ActionScript ou un crontab, et voyez les numéros de ligne de tout ce qui ne s’équilibre pas

Prêt. Collez un fichier ou appuyez sur l’un des boutons d’exemple.

Votre navigateur fait tout le travail ici, dans cet onglet. Nous n’envoyons rien, ne stockons rien et n’enregistrons rien.
La version courte

Ce qu’un beautificateur de code fait à un fichier

La disposition et le sens sont deux choses distinctes dans le code source. Donc un beautificateur de code peut changer chaque espace sans changer ce que fait le programme.

D’ailleurs, c’est toute la promesse. Ce beautificateur de code lit le fichier, détermine où chaque bloc commence et finit, puis réécrit les lignes avec une indentation qui suit l’imbrication.

Cinq modes se cachent derrière un seul éditeur dans ce beautificateur de code : Java, C, C++, ActionScript et crontab. Comme les quatre premiers partagent une grammaire à accolades, ils partagent l’essentiel du lecteur, et chacun ajoute ses propres règles.

Tout s’exécute dans cet onglet. Donc vous pouvez ranger un fichier sous clause de confidentialité sans qu’il touche un serveur.

Le résultat est un fichier qu’un relecteur peut lire. Comme un diff montre tout le changement de disposition, vous gardez la main sur ce qui retourne dans le dépôt.

Comment un beautificateur de code lit un fichier

Un formateur ne peut pas simplement compter les espaces. Au lieu de cela, il parcourt le texte une fois en suivant son état.

Schéma de cinq lignes de Java à gauche, chacune reliée par une flèche à l’état du parcours et à la profondeur d’indentation après cette ligne, où la première ligne ouvre une méthode donc la profondeur passe à un, les trois lignes suivantes mettent la même accolade dans une chaîne, un caractère littéral et un commentaire donc l’état change chaque fois mais la profondeur reste à un, et la dernière ligne ferme la méthode donc la profondeur retombe à zéro
Quatre états, un compteur, et une accolade qui ne compte que lorsque le parcours est dans le code.

Le parcours connaît quatre états : code ordinaire, chaîne littérale, caractère littéral et commentaire. Comme une accolade signifie une chose dans le code et rien du tout dans une chaîne, l’état décide de tout.

Capture du beautificateur de code avec l’exemple Java chargé, le volet de gauche montrant le code à plat d’une classe nommée Invoice avec une chaîne qui contient une accolade dans son texte, une boucle for et un commentaire qui contient aussi une accolade, le volet de droite montrant le même code réindenté de deux espaces par niveau, et le panneau en dessous indiquant le langage lu comme Java, treize lignes en entrée, treize en sortie, un commentaire trouvé et un pas d’indentation de deux espaces
L’exemple Java, avant et après, avec le décompte de ce que le lecteur a trouvé en dessous.

Cette seule règle sépare un beautificateur d’un rechercher-remplacer. Une expression régulière qui indente à chaque accolade ouvrante déplacera les lignes à l’intérieur d’une chaîne qui contient une accolade.

Capture du beautificateur de code avec un fichier Java volontairement cassé, le volet de gauche montrant une classe dont la neuvième ligne ferme un bloc que personne n’a ouvert et dont la troisième ligne laisse une chaîne littérale ouverte, le volet de droite montrant le même fichier réindenté de deux espaces par niveau avec la profondeur arrêtée après le guillemet, le panneau en dessous indiquant neuf lignes en entrée, neuf en sortie et aucun commentaire trouvé, et un panneau sous le résultat listant deux notes qui nomment les numéros de ligne fautifs
Un fichier cassé, et les notes qui nomment la ligne de chaque faute.

Donc le parcours mesure une ligne plutôt que de la réécrire. Ensuite la profondeur atteinte au saut de ligne fixe l’indentation de la ligne suivante.

La profondeur monte à une accolade ouvrante et descend à une accolade fermante. Pendant ce temps, le parcours ignore une accolade dans un commentaire ou un littéral, et la profondeur reste où elle était.

Pourquoi une accolade dans une chaîne compte

Prenons une ligne qui construit un message avec une accolade isolée, ou une expression régulière écrite en littéral. Pour un compteur, chacune ressemble au début d’un bloc.

À partir de là, l’indentation est fausse pour tout le reste du fichier. L’erreur est silencieuse, car le fichier compile encore. Il se lit simplement mal à partir d’une ligne.

Le parcours l’évite en refusant de compter dans un littéral. Donc une accolade dans une chaîne est du texte, une accolade dans un commentaire est du texte, et seule une accolade dans le code bouge la profondeur.

Le parcours traite une citation échappée de la même façon. Comme une barre oblique inverse dans un littéral garde le parcours dans ce littéral, une citation au milieu d’une chaîne ne la termine pas.

La même machine à états explique trois des échecs courants listés plus bas sur cette page. Donc cela vaut la peine de le lire deux fois.

Indentation et style d’accolade, côte à côte

Ainsi, deux réglages font l’essentiel du travail visible dans un beautificateur de code. Le premier est l’indentation, et le second est l’endroit où se place l’accolade ouvrante.

Capture du beautificateur de code avec le style d’accolade réglé sur accolade ouvrante sur sa propre ligne et l’indentation sur quatre espaces, le volet de gauche tenant l’exemple Java à plat et le volet de droite montrant la même classe avec chaque accolade ouvrante déplacée sur sa propre ligne, le panneau en dessous indiquant treize lignes en entrée, dix-sept en sortie, un commentaire trouvé et un pas d’indentation de quatre espaces, et une note sous le résultat disant que quatre accolades isolées ont été déplacées sur leur propre ligne et qu’aucune autre ligne n’a été touchée
Choisir le style d’accolade, et la note qui dit exactement quelles lignes ont bougé.

La largeur d’indentation est un nombre d’espaces, de deux à huit, ou une tabulation. Comme le choix relève d’un style maison plutôt que de la justesse, les deux réponses conviennent tant que le fichier reste cohérent.

Le style d’accolade a trois réponses courantes, et la querelle est assez ancienne pour que Wikipédia recense les variantes nommées. Dans la première, l’accolade ouvre en fin de ligne concernée. Dans la deuxième, l’accolade ouvre sur sa propre ligne au même niveau. Dans la troisième, l’accolade ouvre sur sa propre ligne décalée d’un niveau.

Les mélanger dans un même fichier rend un code difficile à parcourir. Donc le réglage s’applique au fichier entier d’un coup, et le corps est redisposé selon le nouveau choix.

Une accolade fermante se place toujours à l’indentation de la ligne qui l’a ouverte. Cette seule règle rend une longue méthode lisible, car l’œil trouve la fin d’un bloc sans compter.

Ce que le formatage crontab apporte

Un fichier crontab n’est pas un langage à accolades, donc le lecteur change de travail. Au lieu d’imbriquer, il vérifie que chaque ligne a le bon nombre de champs.

Capture du beautificateur de code en mode crontab avec un fichier de maintenance de neuf lignes, une ligne de commentaire, deux lignes d’affectation pour le shell et le courrier, une ligne vide et cinq lignes de planification, les cinq colonnes de champs de chaque planification espacées régulièrement avec la commande laissée telle quelle, une ligne commençant par arobase pour une tâche de redémarrage, et une note sous le résultat disant qu’une ligne commence par arobase, ce qui est une planification écrite en un mot, donc elle reste hors des cinq colonnes et n’a pas été touchée
Le mode crontab espace les cinq colonnes et laisse la commande, ainsi que toute ligne avec arobase, intactes.

Cinq champs forment une planification : minute, heure, jour du mois, mois et jour de la semaine, comme les présente la référence cron. Ensuite vient une commande, et ses propres espaces sont laissés tels quels.

Donc l’outil compte les champs, nomme ceux qui manquent et signale une valeur qui ne peut rien vouloir dire. Une heure de 26 et une minute de 61 sont impossibles, et faciles à taper.

Une valeur de pas et une plage reçoivent le même traitement. Comme cinq barre oblique deux et neuf tiret dix-sept sont les deux formes les plus mal tapées, l’outil vérifie chacune contre ses propres limites.

Les commentaires commençant par un dièse restent en place. Par conséquent le fichier revient avec ses notes intactes et ses colonnes alignées.

Étape par étape

Comment utiliser le beautificateur de code

Quatre étapes, et aucune ne demande de compte. Le beautificateur de code fait le reste.

  • 1

    Choisissez le langage

    Donc choisissez Java, C, C++, ActionScript ou crontab. Le mode décide quel lecteur s’exécute, et c’est le seul réglage qui change ce que l’outil comprend.

  • 2

    Collez le fichier

    Collez ensuite un fichier entier ou une seule méthode. Comme le parcours lit le texte plutôt qu’une forme compilée, un fragment convient tant que ses accolades s’équilibrent.

  • 3

    Réglez l’indentation et le style d’accolade

    Ensuite, choisissez deux, quatre ou huit espaces, ou une tabulation. Puis choisissez où se place l’accolade ouvrante. Ainsi le résultat suit le style maison plutôt que le défaut de votre éditeur.

  • 4

    Lisez les notes, puis copiez

    Enfin, parcourez les notes sous l’aperçu. Après cela, recopiez le résultat ou téléchargez-le avec l’extension suggérée par le mode.

Pourquoi cette page

Pourquoi utiliser ce beautificateur de code

Cinq raisons, et chacune évite un aller-retour.

  • Il lit les chaînes et les commentaires

    Comme le parcours suit son état, une accolade dans un littéral ou un commentaire ne bouge jamais l’indentation. Donc un fichier avec un message plein d’accolades revient correct.

  • Cinq modes, un éditeur

    Donc vous passez de Java à un crontab sans ouvrir un second onglet. Ensemble, ils couvrent l’essentiel de ce que contient un répertoire de build.

  • Rien n’est envoyé

    La lecture et la réécriture tournent toutes deux dans cet onglet. Donc un fichier sous clause de confidentialité ne diffère en rien d’un fichier public ici.

  • Les notes nomment la ligne

    Comme les notes nomment la ligne d’une accolade non équilibrée, un fichier qui ne se stabilise pas se trouve facilement. Donc l’outil sert aussi de contrôle rapide.

  • Il ne touche pas au sens

    Seuls les espaces changent. Donc un jeton, une chaîne ou un commentaire garde chaque caractère qu’il avait. Ainsi la différence en relecture est purement la disposition.

Règles de base

Des habitudes qui gardent le code formaté lisible

Six habitudes qui décident si un fichier formaté reste lisible.

  • Formatez le fichier, pas le fragment Donc faites passer le fichier entier d’un coup. Une méthode formatée seule peut atterrir à une profondeur différente de la classe qui l’entoure, et la jointure se voit.
  • Gardez une seule indentation par dépôt Comme un dépôt mixte rend chaque diff bruyant, le nombre compte moins que la cohérence. Choisissez-en un et laissez-le dans la config de l’éditeur.
  • Formatez avant la relecture, pas pendant Donc mettez le changement de disposition dans son propre commit. Ainsi le relecteur voit un diff d’espaces uniquement, et le changement de logique reste une lecture à part.
  • Laissez les longues chaînes littérales tranquilles Un beautificateur ne peut pas couper un littéral sans le changer. Comme une URL ou une instruction SQL coupée veut dire autre chose, gardez ces lignes longues.
  • Vérifiez les colonnes crontab à l’œil Donc relisez les cinq champs une fois après le formatage. Une valeur que l’outil accepte peut encore planifier la tâche à la mauvaise heure. C’est le fichier qui le montre.
  • Surveillez le décompte de lignes initial Enfin, comparez le nombre de lignes avant et après. Comme un formateur ne déplace que les espaces, le compte doit correspondre. Une différence signifie que quelque chose d’autre a changé.
Attention ici

Six façons dont un formateur vous surprend

Chacun de ces cas semble correct dans l’aperçu et coûte du temps plus tard.

  • Formater un fichier qui ne compile pas

    Attention ici. Une accolade non équilibrée laisse le parcours décalé d’un niveau pour tout le reste du fichier. Donc l’aperçu semble décalé et les notes nomment la ligne fautive.

  • Attendre qu’un préprocesseur soit compris

    Le lecteur prend une ligne dièse comme un define ou un include pour une ligne plutôt que pour du code. Donc une macro qui ouvre une accolade fausse le comptage, et l’outil le dit.

  • Coller deux fichiers d’un coup

    Deux unités de traduction dans un même volet partagent un compteur de profondeur. Comme le compteur ne se réinitialise jamais, le second fichier démarre là où le premier s’est arrêté.

  • Faire confiance à une indentation alors qu’une chaîne reste ouverte

    Une citation non fermée garde le parcours dans un littéral jusqu’à la fin du fichier. Donc le parcours ignore toutes les accolades suivantes, et l’indentation cesse complètement de bouger.

  • Reformater un fichier en cours de relecture

    En effet, un changement de disposition sur une branche que quelqu’un d’autre lit rend le vrai diff difficile à trouver. Donc mettez-vous d’accord sur le moment, ou attendez la fusion.

  • Croire que le mode de langage est un compilateur

    Le mode décide seulement quel lecteur s’exécute. Comme ce lecteur ne construit aucun arbre syntaxique, il ne signale ni type erroné ni point-virgule manquant.

Questions

Questions sur le beautificateur de code

Ce beautificateur de code est-il gratuit ?

Oui. Aucun compte, aucune limite et aucune offre payante. Donc vous formatez autant de fichiers que vous voulez.

Quels langages formate-t-il ?

Cinq : Java, C, C++, ActionScript et crontab. Les quatre langages à accolades partagent un lecteur, et chacun ajoute ses propres règles.

Change-t-il ce que fait mon programme ?

Non. Seuls les espaces bougent. Chaque jeton, chaîne et commentaire garde ses caractères, donc le résultat compile de la même façon.

Va-t-il indenter une accolade dans une chaîne ?

Non. Le parcours passe en état littéral et ignore tout ce qui s’y trouve. Donc un message ou une expression régulière pleine d’accolades ne touche pas à l’indentation.

Corrige-t-il les erreurs de syntaxe ?

Non. Il signale une accolade non équilibrée et nomme la ligne, ce qui reste une preuve utile. Corriger le code reste votre travail.

Puis-je choisir la largeur d’indentation ?

Oui. Deux, quatre ou huit espaces, ou une tabulation. Le réglage s’applique au fichier entier plutôt qu’à une sélection.

Quels styles d’accolade puis-je choisir ?

Trois. La première met l’accolade ouvrante en fin de ligne. La deuxième la met sur sa propre ligne, au même niveau. La troisième la décale d’un niveau. Allman et K&R sont les deux que vous avez sûrement rencontrés.

Réduit-il les lignes vides ?

Oui, il peut. Une suite de lignes vides dans une méthode devient une seule ligne. La ligne vide unique entre deux méthodes reste.

Peut-il formater un fichier crontab ?

Oui, c’est le cinquième mode. Il aligne les cinq champs de planification, garde les commentaires en place et signale une valeur hors plage.

Exécute-t-il mon code ?

Non. Il n’exécute rien, ne compile rien et n’évalue rien. Par ailleurs, le fichier est lu comme du texte et réécrit comme du texte.

Mon code est-il envoyé quelque part ?

Non. La lecture et la réécriture se font dans cet onglet. Donc un fichier sous clause de confidentialité reste sur votre machine.

Puis-je coller un fichier entier ?

Oui. Un fichier de quelques milliers de lignes se formate en un instant. La limite vient de votre machine, pas d’un quota serveur.

Gère-t-il un fichier d’en-tête ?

Oui. Un en-tête C ou C++ suit la même grammaire, donc il se formate pareil. Seules les sections riches en macros demandent un second coup d’œil, comme noté plus haut.

Quelles fins de ligne ressortent ?

Celles de l’entrée. Comme un fichier avec retours chariot les garde, recoller le résultat ne transforme pas chaque ligne en changement.

Puis-je télécharger le résultat ?

Oui. Le téléchargement utilise l’extension suggérée par le mode, donc un fichier Java arrive en fichier texte plutôt qu’en page.

Trie-t-il les imports ou réordonne-t-il quelque chose ?

Non. Les lignes gardent leur ordre. Comme réordonner peut changer le sens, l’outil ne déplace que les espaces.

Peut-il aussi minifier ?

Non, et c’est voulu. Minifier retire aussi les commentaires, ce qui est une autre décision. Les minificateurs ici s’en occupent.

Pourquoi mon fichier reste-t-il mal indenté ?

La cause habituelle est une citation non fermée ou une accolade non équilibrée plus haut dans le fichier. Les notes sous l’aperçu nomment la ligne où la profondeur a cessé de correspondre.

Fonctionne-t-il sur téléphone ?

Oui. Les volets s’empilent et les réglages passent en lignes. Donc une petite correction reste possible loin d’un bureau, même si un fichier entier est plus facile au clavier.

Garde-t-il mes commentaires ?

Oui. Un commentaire de ligne et un commentaire de bloc survivent tous deux, et le compteur de profondeur ignore les deux. Donc un commentaire ne change jamais la disposition autour de lui.

Le code formaté est-il à moi ?

Il est à vous. Rien ici ne réclame de licence sur votre fichier, et il n’y a aucun crédit à donner.

Ai-je besoin d’un compte ou d’une extension ?

Non. Aucune inscription, aucun plugin et aucune extension à ajouter. Donc vous fermez l’onglet quand le fichier est propre.

Pour continuer

Des outils qui vont avec celui-ci

Quatre pages vers lesquelles ce travail mène souvent.

  • Minificateur CSS

    Une fois une feuille de style disposée, retirez les espaces. Comme un fichier livré paie chaque commentaire et chaque saut de ligne, c’est l’étape avant l’envoi.

    Ouvrir l’outil →
  • Minificateur JavaScript

    Réduisez ensuite un script de la même façon. Donc le fichier que le navigateur télécharge est plus petit que celui que lit un relecteur.

    Ouvrir l’outil →
  • Formateur JSON

    Un document JSON mérite le même traitement qu’un fichier source. Comme un objet imbriqué sur une ligne cache sa forme, cette page le déplie.

    Ouvrir l’outil →
  • Testeur de sélecteurs CSS

    Quand une règle de la feuille de style ne correspond à rien, cette page la nomme. Comme un sélecteur qui ne correspond à rien échoue en silence, cela vaut une vérification.

    Ouvrir l’outil →

Réindentez le fichier et passez à la suite

Choisissez le langage, collez le fichier, réglez l’indentation et le style d’accolade, puis lisez les notes. De plus, rien n’est envoyé, rien ne s’exécute, et seuls les espaces changent. La plupart des fichiers redeviennent lisibles en un instant.