blob: 0b9c675248348b268b361b7cdc54d6cfa66cce64 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
Переводы на другие языки (локализация)
======================================
Как перевести Канборд на новый язык?[¶](#how-to-translate-kanboard-to-a-new-language "Ссылка на этот заголовок")
----------------------------------------------------------------------------------------------------------------
- Переводы хранятся в директории `app/Locale`
- В этой директории есть поддиректории для разных языков, например, для русского имеется `ru_RU`, для французского - `fr_FR` и т.д.
- Переводы находятся в PHP файле, который возвращает массив с парой ключ-значение
- Ключ - оригинальный текст на английском и значение - перевод на соответсвующем языке
- **Французские переводы всегда в актуальном состоянии**
- Всегда используйте последнюю версию (branch master)
### Создание нового перевода[¶](#create-a-new-translation "Ссылка на этот заголовок")
1. Создайте новую директорию: `app/Locale/xx_XX`, например `app/Locale/fr_CA` для канадского фрацузского
2. Создайте новый файл для перевода: `app/Locale/xx_XX/translations.php`
3. Используйте как образец содержимое французского перевода (локализации) и замените значения
4. Внесите изменения в файл `app/Model/Language.php`
5. Проверьте добавленный язык на локальной версии Канборда
6. Пошлите [pull-request на Github](https://help.github.com/articles/using-pull-requests/)
Как обновить имеющийся перевод?[¶](#how-to-update-an-existing-translation "Ссылка на этот заголовок")
-----------------------------------------------------------------------------------------------------
1. Откройте файл перевода `app/Locale/xx_XX/translations.php`
2. Отсутсвующие переводы закоментированы - `//` и значения пустые, нужно заполнить значения и удалить коментарий
3. Проверьте внесенные изменения на локальной версии Канборда и пошлите [pull-request](https://help.github.com/articles/using-pull-requests/)
Как добавить новый текст перевода в приложение?[¶](#how-to-add-new-translated-text-in-the-application "Ссылка на этот заголовок")
---------------------------------------------------------------------------------------------------------------------------------
Переводы отображаются с помощью функций в исходном коде:
- `t()`: показывает текст с HTML escaping
- `e()`: показывает текст без HTML escaping
Всегда используйте английскую версию исходного кода.
Текстовые строки используют функцию `sprintf()` для замены элементов:
- `%s` используется для замены строки
- `%d` используется для замены цифры
Ознакомится с доступными форматами вы можете в [документации PHP](http://php.net/sprintf).
Как найти отсутствующие переводы в приложении?[¶](#how-to-find-missing-translations-in-the-applications "Ссылка на этот заголовок")
-----------------------------------------------------------------------------------------------------------------------------------
Из терминала запустите следующую команду:
./cli locale:compare
Все отсутствующие и неиспользуемые переводы будут показаны на экране. Добавьте их во французскую локализацию и синхронизируйте с другими локализациями (смотрите ниже)
Как синхронизировать файлы переводов?[¶](#how-to-synchronize-translation-files "Ссылка на этот заголовок")
----------------------------------------------------------------------------------------------------------
В оболочке Unix запустите следующую команду:
./cli locale:sync
Французский перевод используется для ссылки на другие локализации.
[Русская документация Kanboard](http://kanboard.ru/doc/)
|