Translation status
21,900 | Strings | 100% | |
---|---|---|---|
579,954 | Words | 100% | |
4,047,601 | Characters | 100% |
Strings Words Characters | |||
---|---|---|---|
21,900 579,954 4,047,601 |
|
All strings | Browse Translate Zen |
21,900 579,954 4,047,601 |
|
Translated strings | Browse Translate Zen |
1 707 6,047 |
|
Translated strings with dismissed checks | Browse Translate Zen |
21,900 579,954 4,047,601 |
|
Strings without a label | Browse Translate Zen |
Other components
Component | Translated | Unfinished | Unfinished words | Unfinished characters | Untranslated | Checks | Suggestions | Comments | |
---|---|---|---|---|---|---|---|---|---|
Godot Documentation CC-BY-4.0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||
Godot Editor MIT | 0 | 0 | 0 | 0 | 0 | 0 | 2 | ||
Godot Properties MIT | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ||
Overview
Project website | godotengine.org | |
---|---|---|
Instructions for translators | Thanks for helping with Godot Engine translations! Please make sure to read the detailed instructions that we have for each translation components on: https://docs.godotengine.org/en/latest/contributing/documentation/editor_and_docs_localization.html |
|
Project maintainers |
![]() ![]() ![]() |
|
Translation license | MIT License | |
Translation process |
|
|
Source code repository |
https://github.com/godotengine/godot-editor-l10n
|
|
Repository branch | main | |
Last remote commit |
Sync translations with Godot 4.4
bdd8ce25
Rémi Verschelde authored yesterday |
|
Last commit in Weblate |
properties: Translated using Weblate (Persian)
add5acc4
![]() |
|
Weblate repository |
https://hosted.weblate.org/git/godot-engine/godot-properties/
|
|
File mask |
classes/*.po
|
|
Translation file |
Download
classes/uk.po
|
|
Last change | Feb. 22, 2025, 4:53 p.m. | |
Last change made by | Максим Горпиніч | |
Language | Ukrainian | |
Language code | uk | |
Text direction | Left to right | |
Case sensitivity | Case-sensitive | |
Number of speakers | 24,018,513 | |
Number of plurals | 3 | |
Plural type | One/few/many | |
Plurals | One | 1, 21, 31, 41, 51, 61, 71, 81, 91, 101, … | Few | 2, 3, 4, 22, 23, 24, 32, 33, 34, 42, … |
Many | 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, … | |
Plural formula |
(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)
|
an hour ago
String statistics
Strings percent | Hosted strings | Words percent | Hosted words | Characters percent | Hosted characters | |
---|---|---|---|---|---|---|
Total | 21,900 | 579,954 | 4,047,601 | |||
Translated | 100% | 21,900 | 100% | 579,954 | 100% | 4,047,601 |
Needs editing | 0% | 0 | 0% | 0 | 0% | 0 |
Read-only | 0% | 0 | 0% | 0 | 0% | 0 |
Failing checks | 0% | 0 | 0% | 0 | 0% | 0 |
Strings with suggestions | 0% | 0 | 0% | 0 | 0% | 0 |
Untranslated strings | 0% | 0 | 0% | 0 | 0% | 0 |
Quick numbers
and previous 30 days
Trends of last 30 days
+7%
Hosted words
+100%
+5%
Hosted strings
+100%
—
Translated
+100%
+100%
Contributors
—
![]() Translation changed |
|
![]() Translation changed |
|
![]() Translation changed |
|
![]() Translation changed |
|
![]() Translation changed |
|
![]() Translation changed |
|
![]() Translation changed |
|
![]() Translation changed |
|
![]() Translation changed |
|
![]() Translation changed |
|
21,900 | File in original format as translated in the repository | gettext PO file | |||||||
---|---|---|---|---|---|---|---|---|---|
21,900 | All strings, converted files enriched with comments; suitable for offline translation | CSV | gettext MO | gettext PO | TBX | TMX | XLIFF 1.1 with gettext extensions | XLIFF 1.1 | XLSX |
You can retrieve the data by iterating on the container, which will work as if iterating on the packed data itself. If the packed container is a [Dictionary], the data can be retrieved by key names ([String]/[StringName] only).
[codeblock]
var data = { "key": "value", "another_key": 123, "lock": Vector2() }
var packed = PackedDataContainer.new()
packed.pack(data)
ResourceSaver.save(packed, "packed_data.res")
[/codeblock]
[codeblock]
var container = load("packed_data.res")
for key in container:
prints(key, container[key])
[/codeblock]
Prints:
[codeblock lang=text]
key value
lock (0, 0)
another_key 123
[/codeblock]
Nested containers will be packed recursively. While iterating, they will be returned as [PackedDataContainerRef].
Ви можете отримати дані шляхом ітерації контейнера, який працюватиме так, ніби ітерації самих упакованих даних. Якщо упакований контейнер є [словником], дані можна отримати за іменами ключів (лише [String]/[StringName]).
[codeblock]
var data = { "key": "value", "another_key": 123, "lock": Vector2() }
var packed = PackedDataContainer.new()
packed.pack(
даніdata)ResourceSaver.save(packed, "packed_data.res")
[/codeblock]
[codeblock]
var container = load("packed_data.res")
для ключа в контейнері:for key in container:prints(ключ, контейнер[ключ
prints(key, container[key])
[/codeblock]
ПринтиPrint:[codeblock lang=text]
ключове значенняkey valveзамок
lock (0, 0)
another_key 123
[/codeblock]
Вкладені контейнери будуть упаковані рекурсивно. Під час ітерації вони повертатимуться як [PackedDataContainerRef].