GDQuest / GDQuest/GDScript-formatter
Discussion: hugging formatting for dictionaries and using commas as formatting hint
- Langage dominant
- Rust
- Étoiles
- 458
- Forks
- 40
- Merge moyen
- 1 j 15 h
- PR mergées (30 j)
- 4
Description
The following code:
```gdscript
for i in range(3):
properties.append({
"name": "number_%d" % i,
"type": TYPE_INT,
"hint": PROPERTY_HINT_ENUM,
"hint_string": "ZERO,ONE,TWO,THREE,FOUR,FIVE",
})
```
Will be formatted like this:
```gdscript
for i in range(3):
properties.append(
{
"name": "number_%d" % i,
"type": TYPE_INT,
"hint": PROPERTY_HINT_ENUM,
"hint_string": "ZERO,ONE,TWO,THREE,FOUR,FIVE",
}
)
```
But I think the original version reads better. I took the code from [this](https://docs.godotengine.org/en/stable/classes/class_object.html#class-object-private-method-get-property-list) example.
Also if the dictionary is shorter (I just removed the last line from the previous example):
```gdscript
for i in range(3):
properties.append({
"name": "number_%d" % i,
"type": TYPE_INT,
"hint": PROPERTY_HINT_ENUM,
})
```
It will be formatted like this:
```gdscript
for i in range(3):
properties.append({ "name": "number_%d" % i, "type": TYPE_INT, "hint": PROPERTY_HINT_ENUM })
```
But I'd expect the shape to be preserved since I have a comma at the end.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par reproduire les deux exemples de formatage de dictionnaires de l’issue avec le GDScript formatter et comparez la sortie aux mises en page demandées. Suivez le comportement du formatter responsable des dictionnaires multilignes, des virgules finales et des dictionnaires inline ; c’est terminé lorsque les exemples conservent la forme prévue et que le comportement de formatage existant reste intact.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- godot, rust
- Domaine
- tooling
- Type d'issue
- Fonctionnalité
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 55/100