How does YarnSpinner-Godot store translated strings and what happens to them when I edit the source dialogue?
YarnSpinner-Godot updates each language CSV on 'Update Localizations': removed line IDs are deleted, new IDs are added with empty text, and lines whose base text changed (lock hash differs) get their translation prefixed as needing update, after which the lock is refreshed. The code's marker is '(NEEDS UPDATE) ' whereas the usage doc says '(NEEDS UPDATED)', so a search for the documented marker would miss stale rows.
YarnSpinner-Godot updates each language CSV on 'Update Localizations': removed line IDs are deleted, new IDs are added with empty text, and lines whose base text changed (lock hash differs) get their translation prefixed as needing update, after which the lock is refreshed. The code's marker is '(NEEDS UPDATE) ' whereas the usage doc says '(NEEDS UPDATED)', so a search for the documented marker would miss stale rows.
Curator qualifications: Docs/code read 2026-10-22; editor not run. Execution not tested; Godot .translation generation per producer.
Limitations: Docs/code read 2026-10-22; editor not run.
Evidence status: statements located in the cited sources by a correlated desk review (Claude); not executed; not independently reviewed.
Structured fields
{
"citations": [
{
"url": "https://github.com/YarnSpinnerTool/YarnSpinner-Godot/blob/42af8f6d66895ccec57bdfbe1e2b897abba13af1/docs/Usage.md",
"note": "docs/Usage.md L62; addons/YarnSpinner-Godot/Editor/YarnProjectEditorUtility.cs L267-319"
},
{
"url": "https://github.com/YarnSpinnerTool/YarnSpinner-Godot/blob/42af8f6d66895ccec57bdfbe1e2b897abba13af1/addons/YarnSpinner-Godot/Editor/YarnProjectEditorUtility.cs",
"note": "docs/Usage.md L62; addons/YarnSpinner-Godot/Editor/YarnProjectEditorUtility.cs L267-319"
},
{
"url": "https://github.com/YarnSpinnerTool/YarnSpinner-Godot/blob/42af8f6d66895ccec57bdfbe1e2b897abba13af1/Samples/VisualNovel/Localization/VisualNovel_es.csv",
"note": "docs/Usage.md L62; addons/YarnSpinner-Godot/Editor/YarnProjectEditorUtility.cs L267-319"
},
{
"url": "https://github.com/YarnSpinnerTool/YarnSpinner-Godot/blob/42af8f6d66895ccec57bdfbe1e2b897abba13af1/addons/YarnSpinner-Godot/Runtime/StringTableEntry.cs",
"note": "docs/Usage.md L62; addons/YarnSpinner-Godot/Editor/YarnProjectEditorUtility.cs L267-319"
}
]
}Evidence claims
- [sourced_fact] YarnSpinner-Godot updates each language CSV on 'Update Localizations': removed line IDs are deleted, new IDs are added with empty text, and lines whose base text changed (lock hash differs) get their translation prefixed as needing update, after which the lock is refreshed. The code's marker is '(NEEDS UPDATE) ' whereas the usage doc says '(NEEDS UPDATED)', so a search for the documented marker would miss stale rows. · locator: docs/Usage.md L62; addons/YarnSpinner-Godot/Editor/YarnProjectEditorUtility.cs L267-319 source
Rights
| component | license | hosting | redistribution | modification | training | Evidence and notes |
|---|---|---|---|---|---|---|
| documentation | unknown | permitted | permitted | unknown | unknown | Applies to this original summary only, not to the cited sources. |
Linked records
- cites → https://github.com/YarnSpinnerTool/YarnSpinner-Godot/blob/42af8f6d66895ccec57bdfbe1e2b897abba13af1/Samples/VisualNovel/Localization/VisualNovel_es.csv
- cites → https://github.com/YarnSpinnerTool/YarnSpinner-Godot/blob/42af8f6d66895ccec57bdfbe1e2b897abba13af1/addons/YarnSpinner-Godot/Editor/YarnProjectEditorUtility.cs
- cites → https://github.com/YarnSpinnerTool/YarnSpinner-Godot/blob/42af8f6d66895ccec57bdfbe1e2b897abba13af1/addons/YarnSpinner-Godot/Runtime/StringTableEntry.cs
- cites → https://github.com/YarnSpinnerTool/YarnSpinner-Godot/blob/42af8f6d66895ccec57bdfbe1e2b897abba13af1/docs/Usage.md