Js-beautify: Wrap aligner les attributs html uniquement lorsque la ligne atteint une certaine longueur

Créé le 27 sept. 2017  ·  8Commentaires  ·  Source: beautify-web/js-beautify

Est-il possible de n'envelopper que les attributs html lorsque la ligne atteint une certaine longueur de caractères. La façon dont cela fonctionne dans Phpstorm par exemple est que si j'ai quelque chose comme ça.

<div v-for="item in items" class="items">
    <p>{{item.name}}</p>
</div>

Le formateur Phpstorm n'encapsule pas les attributs mais si mon code ressemble à ceci

<div v-for="item in items" class="items" v-if="items.notEmpty()" :class="{active: isActive} :key="item.id">
    <p>{{item.name}}</p>
</div>

et la ligne contient plus de 100 caractères, alors elle enveloppera les attributs et les alignera comme ceci

<div v-for="item in items" 
     class="items" 
     v-if="items.notEmpty()" 
     :class="{active: isActive} 
     :key="item.id">
    <p>{{item.name}}</p>
</div>
html enhancement

Commentaire le plus utile

Je pensais qu'une option pour quelque chose comme un "nombre d'attributs avant l'emballage" serait bien, donc je pourrais dire que tout ce qui a < 4 attributs ne sera pas encapsulé, tandis que tout ce qui > = 4 attributs serait encapsulé, et ce serait configurable par utilisateur, bien sûr.

Tous les 8 commentaires

Voir #1125 pour une discussion connexe. Pas exactement la même caractéristique, mais liée.

Est-ce que cela est mis en œuvre? C'est très ennuyeux quand :
<meta content="IE=edge" http-equiv="X-UA-Compatible">

devient:

<meta content="IE=edge"
      http-equiv="X-UA-Compatible">

Même s'il y a beaucoup d'espace pour le garder sur une seule ligne

@RenaldasK
Ce problème n'est pas attribué. Il a besoin de quelqu'un pour mettre en œuvre un correctif et des tests, soumettre un PR et le mener à terme. Peut-être toi?

+1, c'est exactement la façon dont nous nous attendons à ce que le comportement fonctionne

Je pourrais y jeter un œil ce week-end. Cela devrait-il être mis en œuvre sous --wrap-attributes auto ou une nouvelle option ?

En fait, j'ai jeté un coup d'œil au problème #1285 et le comportement qui y est décrit correspond également à mes besoins, donc je pense que je pourrais plutôt bifurquer ce PR #1297 et essayer de le fusionner et de le fermer.

Je pensais qu'une option pour quelque chose comme un "nombre d'attributs avant l'emballage" serait bien, donc je pourrais dire que tout ce qui a < 4 attributs ne sera pas encapsulé, tandis que tout ce qui > = 4 attributs serait encapsulé, et ce serait configurable par utilisateur, bien sûr.

@Adondriel C'est délicat. Un attribut peut contenir seulement 3 à 5 caractères, un autre peut contenir 50 caractères. Le wrapping par défaut devrait traiter des longueurs, pas du nombre d'attributs, mais c'est une option supplémentaire intéressante à considérer...

Cette page vous a été utile?
0 / 5 - 0 notes