J'ai un code HTML mal formaté que j'aimerais reformater. Existe-t-il une commande qui reformate automatiquement le code HTML dans Sublime Text 2 afin qu'il soit plus esthétique et plus facile à lire?
Vous n'avez besoin d'aucun plugin pour faire cela. Il suffit de sélectionner toutes les lignes (CtrlA) puis dans le menu sélectionnez Édition → Ligne → Réindentation. Cela fonctionnera si votre fichier est enregistré avec une extension contenant du code HTML comme .html
ou .php
.
Si vous faites cela souvent, vous pouvez trouver ce mappage de clé utile:
{ "keys": ["ctrl+shift+r"], "command": "reindent" , "args": { "single_line": false } }
Si votre fichier n'est pas enregistré (par exemple, vous venez de coller un extrait de code dans une nouvelle fenêtre), vous pouvez définir manuellement la langue d'indentation en sélectionnant le menu Affichage → Syntaxe → language of choice
avant de sélectionner l'option de réindent.
Il existe une demi-douzaine de façons de formater HTML en Sublime. J'ai testé chacun des plugins les plus populaires (voir le résumé que j'ai fait sur mon blog pour plus de détails), mais voici un bref aperçu de certaines des options les plus populaires:
Avantages:
Les inconvénients:
<script>
Avantages:
Les inconvénients:
<script>
Avantages:
Les inconvénients:
Avantages:
Les inconvénients:
Avantages:
Les inconvénients:
HTML-CSS-JS Prettify est le gagnant de mon livre. Beaucoup de fonctionnalités, pas grand chose à redire.
Le seul paquet que j'ai pu trouver est Tag .
Vous pouvez l'installer en utilisant le contrôle du paquet. https://sublime.wbond.net
Après avoir installé le contrôle du paquet. Aller au contrôle du paquet ( Préférences -> Contrôle du paquet ) puis tapez install
, frappé enter. Puis tapez tag
et appuyez sur enter.
Après avoir installé Tag, sélectionnez le texte et appuyez sur le raccourci Ctrl+Alt+F.
Je recommande ce plugin: HTML/CSS/JS Prettify , ça marche vraiment.
Après l’installation, sélectionnez simplement le code et appuyez sur Ctrl+Shift+H.
Terminé!
Juste un conseil général. Ce que j’ai fait pour ranger automatiquement mon code HTML, c’est d’installer le paquet HTML_Tidy, puis d’ajouter le raccourci clavier suivant aux paramètres par défaut (que j’utilise):
{ "keys": ["enter"], "command": "html_tidy" },
cela lance HTML Tidy à chaque entrée. Il y a peut-être des inconvénients à cela, je suis assez nouveau pour Sublime moi-même, mais il semble faire ce que je veux :)
Bien que la question concerne le HTML, je voudrais également donner des informations sur la manière de formater automatiquement votre code Javascript pour Sublime Text 2 ;
Vous pouvez sélectionner tout votre code (ctrl + A) et utiliser la fonctionnalité in-app, réindentez (Edit
-> Line
-> Reindent
) ou vous pouvez utiliser le plugin de formatage JsFormat pour Sublime Text 2
si vous souhaitez avoir des paramètres plus personnalisables sur la façon de formater votre code afin de l'ajouter aux paramètres de tabulation/retrait par défaut de Sublime Text.
https://github.com/jdc0589/JsFormat
Vous pouvez facilement installer JsFormat en utilisant Package Control (Preferences
-> Package Control
) Ouvrez le contrôle du package puis tapez install, tapez enter. Puis tapez js format
et appuyez sur enter, vous avez terminé. (Le contrôleur de package affichera l'état de l'installation avec succès et les erreurs sur la barre inférieure gauche de Sublime
)
Ajoutez la ligne suivante à vos raccourcis clavier (Preferences
-> Key Bindings User
)
{ "keys": ["ctrl+alt+2"], "command": "js_format"}
J'utilise ctrl + alt + 2, vous pouvez modifier ce raccourci clavier comme bon vous semble. Jusqu'ici, JsFormat
est un bon plugin, ça vaut la peine de l'essayer!
J'espère que cela aidera quelqu'un.
Il y a un plugin appelé SublimeHtmlTidy qui fonctionne plutôt bien
Pour moi, la solution HTML Prettify
était extrêmement simple. Je suis allé à la page HTML Prettify .
Sublime Package Manager
prettify
HTML prettify
dans le menuBoom. Terminé. A l'air super
Il suffit d'aller à
Édition -> Balise -> Format automatique des balises sur le document
J'ai créé un paquetage appelé HTMLBeautify qui fait un travail décent de reformatage du code HTML. Je l'ai basé sur un script Perl retrouvé en 1997 - je l'ai mis à jour pour qu'il fonctionne avec toutes les nouvelles balises modernes. :)
Vérifiez-le et laissez-moi savoir ce que vous en pensez!
Il existe un Nice open source plugin CodeFormatter , qui (lors de la réindentation) peut embellir le code sale même si tout est en une seule ligne.
Je n'ai pas encore le privilège de commenter. Il s'agit donc simplement d'informations supplémentaires relatives à la réponse de @ peter réponse ci-dessus.
J'ai trouvé que HTML ne s'alignait pas comme prévu si IE commentaires conditionnels dans l'en-tête n'était pas complètement en ligne, par exemple. affleurant à gauche:
<!--[if lt IE 7]>
<p class='chromeframe'>Your browser is <em>unsupported</em>. <a href="http://browsehappy.com/">Upgrade to a different browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">install Google Chrome Frame</a> to experience this site.</p>
<![endif]-->
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
Je pense que c'est ce que vous cherchez:
J'utilise nettoie avec un système de construction personnalisé pour personnaliser le code HTML.
J'ai HTMLTidy.sublime-build dans mon répertoire Packages/User /:
{
"cmd": ["tidy", "-config", "$packages/User/tidy_config.cfg", "$file"]
}
et tidy_config.cfg dans le même répertoire:
indent: auto
tab-size: 4
show-warnings: no
write-back: yes
quiet: yes
indent-cdata: yes
tidy-mark: no
wrap: 0
Et sélectionnez simplement le système de construction et appuyez sur ctrl+b ou cmd+b pour reformater le contenu du fichier. Un problème mineur avec cela est que ST2 ne recharge pas automatiquement le fichier afin de voir les résultats, vous devez basculer vers un autre fichier et inversement (ou vers une autre application et inversement).
Sur Mac, j'ai utilisé macports pour installer Tidy, sous Windows, vous devez le télécharger vous-même et spécifier un répertoire de travail dans le système de construction, où se trouve Tidy:
"working_dir": "c:\\HTMLTidy\\"
ou l'ajouter à la PATH.
vous pouvez définir la touche de raccourci F12 facile!!!
{ "keys": ["f12"], "command": "reindent" , "args": { "single_line": false } }
voir détail ici .