blob: f4bcafc03713348a69d617acc72e98b13e7eceae (
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
|
Переводы на другие языки (локализация)
======================================
Как перевести Канборд на новый язык?[¶](#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 "Ссылка на этот заголовок")
-----------------------------------------------------------------------------------------------------------------------------------
Из терминала запустите следующую команду:
./kanboard locale:compare
Все отсутствующие и неиспользуемые переводы будут показаны на экране. Добавьте их во французскую локализацию и синхронизируйте с другими локализациями (смотрите ниже)
Как синхронизировать файлы переводов?[¶](#how-to-synchronize-translation-files "Ссылка на этот заголовок")
----------------------------------------------------------------------------------------------------------
В оболочке Unix запустите следующую команду:
./kanboard locale:sync
Французский перевод используется для ссылки на другие локализации.
[Русская документация Kanboard](http://kanboard.ru/doc/)
|