Skip to content

Commit dffad2c

Browse files
committed
add Persian and Chinese translations
1 parent 21ba955 commit dffad2c

File tree

1 file changed

+53
-2
lines changed

1 file changed

+53
-2
lines changed

src/i18n.rs

Lines changed: 53 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,24 @@
33
use std::fmt;
44

55
/// Supported languages
6-
/// Note: Persian/Chinese removed - RTL bug and missing font glyphs respectively
76
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq)]
87
pub enum Language {
98
#[default]
109
English,
1110
Russian,
1211
Spanish,
12+
Persian,
13+
Chinese,
1314
}
1415

1516
impl Language {
16-
pub const ALL: &[Self] = &[Self::English, Self::Russian, Self::Spanish];
17+
pub const ALL: &[Self] = &[
18+
Self::English,
19+
Self::Russian,
20+
Self::Spanish,
21+
Self::Persian,
22+
Self::Chinese,
23+
];
1724
}
1825

1926
impl fmt::Display for Language {
@@ -22,6 +29,8 @@ impl fmt::Display for Language {
2229
Self::English => "en",
2330
Self::Russian => "ru",
2431
Self::Spanish => "es",
32+
Self::Persian => "fa",
33+
Self::Chinese => "zh",
2534
})
2635
}
2736
}
@@ -37,6 +46,8 @@ impl Tr {
3746
Language::English => "WhatsMiner Chip Map",
3847
Language::Russian => "Карта чипов WhatsMiner",
3948
Language::Spanish => "Mapa de chips WhatsMiner",
49+
Language::Persian => "نقشه چیپ WhatsMiner",
50+
Language::Chinese => "WhatsMiner 芯片图",
4051
}
4152
}
4253

@@ -46,6 +57,8 @@ impl Tr {
4657
Language::English => "Ready",
4758
Language::Russian => "Готово",
4859
Language::Spanish => "Listo",
60+
Language::Persian => "آماده",
61+
Language::Chinese => "就绪",
4962
}
5063
}
5164

@@ -54,13 +67,17 @@ impl Tr {
5467
Language::English => "Connecting...",
5568
Language::Russian => "Подключение...",
5669
Language::Spanish => "Conectando...",
70+
Language::Persian => "...در حال اتصال",
71+
Language::Chinese => "连接中...",
5772
}
5873
}
5974

6075
pub fn error(lang: Language) -> &'static str {
6176
match lang {
6277
Language::English | Language::Spanish => "Error",
6378
Language::Russian => "Ошибка",
79+
Language::Persian => "خطا",
80+
Language::Chinese => "错误",
6481
}
6582
}
6683

@@ -74,6 +91,8 @@ impl Tr {
7491
Language::English => "User",
7592
Language::Russian => "Пользователь",
7693
Language::Spanish => "Usuario",
94+
Language::Persian => "کاربر",
95+
Language::Chinese => "用户",
7796
}
7897
}
7998

@@ -82,6 +101,8 @@ impl Tr {
82101
Language::English => "Pass",
83102
Language::Russian => "Пароль",
84103
Language::Spanish => "Clave",
104+
Language::Persian => "رمز",
105+
Language::Chinese => "密码",
85106
}
86107
}
87108

@@ -91,6 +112,8 @@ impl Tr {
91112
Language::English => "Fetch",
92113
Language::Russian => "Загрузить",
93114
Language::Spanish => "Obtener",
115+
Language::Persian => "دریافت",
116+
Language::Chinese => "获取",
94117
}
95118
}
96119

@@ -99,6 +122,8 @@ impl Tr {
99122
Language::English => "Loading...",
100123
Language::Russian => "Загрузка...",
101124
Language::Spanish => "Cargando...",
125+
Language::Persian => "...بارگذاری",
126+
Language::Chinese => "加载中...",
102127
}
103128
}
104129

@@ -107,6 +132,8 @@ impl Tr {
107132
match lang {
108133
Language::English | Language::Spanish => "Color:",
109134
Language::Russian => "Цвет:",
135+
Language::Persian => ":رنگ",
136+
Language::Chinese => "颜色:",
110137
}
111138
}
112139

@@ -115,6 +142,8 @@ impl Tr {
115142
Language::English => "Lang:",
116143
Language::Russian => "Язык:",
117144
Language::Spanish => "Idioma:",
145+
Language::Persian => ":زبان",
146+
Language::Chinese => "语言:",
118147
}
119148
}
120149

@@ -123,6 +152,8 @@ impl Tr {
123152
Language::English => "Click 'Fetch' to load miner data",
124153
Language::Russian => "Нажмите 'Загрузить' для получения данных",
125154
Language::Spanish => "Haga clic en 'Obtener' para cargar datos",
155+
Language::Persian => "برای بارگذاری داده‌ها روی 'دریافت' کلیک کنید",
156+
Language::Chinese => "点击'获取'加载矿机数据",
126157
}
127158
}
128159

@@ -132,13 +163,17 @@ impl Tr {
132163
Language::English => "── System Info ──",
133164
Language::Russian => "── Информация ──",
134165
Language::Spanish => "── Info Sistema ──",
166+
Language::Persian => "── اطلاعات سیستم ──",
167+
Language::Chinese => "── 系统信息 ──",
135168
}
136169
}
137170

138171
pub fn firmware(lang: Language) -> &'static str {
139172
match lang {
140173
Language::English | Language::Spanish => "FW",
141174
Language::Russian => "ПО",
175+
Language::Persian => "FW",
176+
Language::Chinese => "固件",
142177
}
143178
}
144179

@@ -147,13 +182,17 @@ impl Tr {
147182
Language::English => "Slot",
148183
Language::Russian => "Слот",
149184
Language::Spanish => "Ranura",
185+
Language::Persian => "اسلات",
186+
Language::Chinese => "槽位",
150187
}
151188
}
152189

153190
pub fn chips(lang: Language) -> &'static str {
154191
match lang {
155192
Language::English | Language::Spanish => "chips",
156193
Language::Russian => "чипов",
194+
Language::Persian => "چیپ",
195+
Language::Chinese => "芯片",
157196
}
158197
}
159198

@@ -162,6 +201,8 @@ impl Tr {
162201
Language::English => "slots",
163202
Language::Russian => "слотов",
164203
Language::Spanish => "ranuras",
204+
Language::Persian => "اسلات",
205+
Language::Chinese => "槽位",
165206
}
166207
}
167208

@@ -171,6 +212,8 @@ impl Tr {
171212
Language::English => "Temperature",
172213
Language::Russian => "Температура",
173214
Language::Spanish => "Temperatura",
215+
Language::Persian => "دما",
216+
Language::Chinese => "温度",
174217
}
175218
}
176219

@@ -179,6 +222,8 @@ impl Tr {
179222
Language::English => "Errors",
180223
Language::Russian => "Ошибки",
181224
Language::Spanish => "Errores",
225+
Language::Persian => "خطاها",
226+
Language::Chinese => "错误",
182227
}
183228
}
184229

@@ -191,6 +236,8 @@ impl Tr {
191236
Language::English => "Gradient",
192237
Language::Russian => "Градиент",
193238
Language::Spanish => "Gradiente",
239+
Language::Persian => "گرادیان",
240+
Language::Chinese => "梯度",
194241
}
195242
}
196243

@@ -199,13 +246,17 @@ impl Tr {
199246
Language::English => "Outliers",
200247
Language::Russian => "Выбросы",
201248
Language::Spanish => "Atípicos",
249+
Language::Persian => "پرت‌ها",
250+
Language::Chinese => "异常值",
202251
}
203252
}
204253

205254
pub fn color_mode_nonce(lang: Language) -> &'static str {
206255
match lang {
207256
Language::English | Language::Spanish => "Nonce",
208257
Language::Russian => "Нонс",
258+
Language::Persian => "نانس",
259+
Language::Chinese => "随机数",
209260
}
210261
}
211262
}

0 commit comments

Comments
 (0)