GraphiteEditor / GraphiteEditor/Graphite
Design a user-facing textual grammar for Graphene nodes and networks
- Langage dominant
- Rust
- Étoiles
- 27.2k
- Forks
- 1.3k
- Merge moyen
- 20 h 5 min
- PR mergées (30 j)
- 57
Description
Currently the `CopyBufferEntry` is serialised using JSON when a user copies a layer:
```json
{
"nodes": {
"2": {
"alias": "custom alias",
"name": "Transform",
"inputs": [
{
"Node": {
"node_id": 3,
"output_index": 0,
"lambda": false
}
},
{
"Value": {
"tagged_value": {
"DVec2": [
5.049571603427239,
118.83782129742963
]
},
"exposed": false
}
},
```
However this should be changed to be in a format that looks something like:
```toml
[node parent(4) / transform(2)]
alias = "custom alias"
position = [1, 3]
vector_data = { node_id = 3, output_index = 0 }
translation = { value = [5.04, 118.8], exposed = false }
```
whereby each input is stored in snake case if it is overwritten.
Or possibly a format using the [ron](https://github.com/ron-rs/ron) grammar. This is the current line of thinking for the design.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par localiser la sérialisation actuelle de CopyBufferEntry et retracer la manière dont les calques copiés sont représentés. Comparez la grammaire proposée de type TOML avec la grammaire RON liée, notamment les références de nœuds, les entrées remplacées, les alias et les positions. La tâche est terminée lorsque le projet dispose d’une grammaire destinée aux utilisateurs qui a été arrêtée et d’une orientation documentée pour son implémentation.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- rust
- Domaine
- computer-graphics
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100