Skip to content

Commit d5e7d7d

Browse files
committed
feat: add spanish language support
1 parent 5c8d673 commit d5e7d7d

11 files changed

Lines changed: 139 additions & 6 deletions

File tree

src/components/Feature/src/FeatureList.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
class="ob-gradient-plate opacity-90 relative z-10 bg-ob-deep-900 rounded-2xl flex justify-start items-end px-6 pb-10 shadow-md"
88
>
99
<h2 class="text-3xl pb-8 lg:pb-14">
10-
<p :style="gradientText">EDITOR'S SELECTION</p>
10+
<p :style="gradientText">{{ t('home.editor_selection') }}</p>
1111
<span class="relative text-lg text-ob-bright font-semibold">
1212
<SvgIcon class="inline-block" icon-class="hot" stroke="white" />
1313
{{ t('home.recommended') }}

src/components/Header/src/Controls.vue

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,15 @@
3737
<span v-if="$i18n.locale == 'zh-CN'">简体</span>
3838
<span v-if="$i18n.locale == 'zh-TW'">繁體</span>
3939
<span v-if="$i18n.locale == 'en'">En</span>
40+
<span v-if="$i18n.locale == 'es'">Es</span>
4041
</span>
4142
<DropdownMenu>
4243
<DropdownItem name="en" :active="currentLocale === 'en'">
4344
English
4445
</DropdownItem>
46+
<DropdownItem name="es" :active="currentLocale === 'es'">
47+
Español
48+
</DropdownItem>
4549
<DropdownItem name="zh-CN" :active="currentLocale === 'zh-CN'">
4650
简体
4751
</DropdownItem>

src/components/MobileMenu.vue

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,12 @@
7979
>
8080
{{ route.i18n.en }}
8181
</span>
82+
<span
83+
class="relative z-50"
84+
v-else-if="$i18n.locale === 'es' && route.i18n.es"
85+
>
86+
{{ route.i18n.es }}
87+
</span>
8288
<span class="relative z-50" v-else>{{ route.name }}</span>
8389
</div>
8490
<Dropdown
@@ -104,6 +110,12 @@
104110
>
105111
{{ route.i18n.en }}
106112
</span>
113+
<span
114+
class="relative z-50"
115+
v-else-if="$i18n.locale === 'es' && route.i18n.es"
116+
>
117+
{{ route.i18n.es }}
118+
</span>
107119
<span class="relative z-50" v-else>{{ route.name }}</span>
108120
<DropdownMenu expand>
109121
<DropdownItem
@@ -129,6 +141,12 @@
129141
>
130142
{{ sub.i18n.en }}
131143
</span>
144+
<span
145+
class="relative z-50"
146+
v-else-if="$i18n.locale === 'es' && sub.i18n.es"
147+
>
148+
{{ sub.i18n.es }}
149+
</span>
132150
<span class="relative z-50" v-else>{{ sub.name }}</span>
133151
</DropdownItem>
134152
</DropdownMenu>

src/locales/languages/en.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
"not-found": "Page not found"
1212
},
1313
"home": {
14+
"editor_selection": "EDITOR'S SELECTION",
1415
"recommended": "Feature Articles"
1516
},
1617
"titles": {

src/locales/languages/es.json

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
{
2+
"menu": {
3+
"home": "Inicio",
4+
"about": "Acerca de",
5+
"archives": "Archivo",
6+
"categories": "Categorias",
7+
"tags": "Etiquetas",
8+
"post": "Artículos",
9+
"search": "Resultados de la búsqueda",
10+
"message-board": "Centro de mensajes",
11+
"not-found": "Página no encontrada"
12+
},
13+
"home": {
14+
"editor_selection": "SELECCION DEL EDITOR",
15+
"recommended": "Destacados"
16+
},
17+
"titles": {
18+
"articles": "Artículos",
19+
"about": "Acerca de",
20+
"category_list": "Categorias",
21+
"tag_list": "Etiquetas",
22+
"toc": "Tabla de Contenido",
23+
"comment": "Comentarios",
24+
"recent_comment": "Comentarios Recientes"
25+
},
26+
"settings": {
27+
"months": [
28+
"Enero",
29+
"Febrero",
30+
"Marzo",
31+
"Abril",
32+
"Mayo",
33+
"Junio",
34+
"Julio",
35+
"Agosto",
36+
"Septiembre",
37+
"Octubre",
38+
"Noviembre",
39+
"Diciembre"
40+
],
41+
"articles": "Artículos",
42+
"categories": "Categorias",
43+
"tags": "Etiquetas",
44+
"words": "Palabras",
45+
"visitor_count": "Cantidad de visitantes",
46+
"visit_count": "Cantidad de visitas",
47+
"button-all": "Todos",
48+
"paginator": {
49+
"newer": "Pre",
50+
"older": "Siguiente",
51+
"prev": "Anterior",
52+
"next": "Siguiente"
53+
},
54+
"more-tags": "Ver más",
55+
"admin-user": "Dueño",
56+
"shared-on": "compartido en",
57+
"recently-search": "Buscado recientemente:",
58+
"search-result": "Encontrados [total] resultados.",
59+
"no-recent-search": "Sin busquedas recientes.",
60+
"no-search-result": "No se encontraron resultados.",
61+
"cmd-to-select": "para seleccionar",
62+
"cmd-to-navigate": "para navegar",
63+
"cmd-to-close": "para cerrar",
64+
"searched-by": "Búsqueda por",
65+
"tips-back-to-top": "Volver arriba",
66+
"tips-open-menu": "Abrir menú",
67+
"tips-back-to-home": "Volver al inicio",
68+
"tips-open-search": "Abrir buscador",
69+
"default-category": "Artículo",
70+
"default-tag": "ninguno",
71+
"empty-tag": "Sin etiquetas.",
72+
"empty-recent-comments": "Sin comentarios.",
73+
"pinned": "Pin",
74+
"featured": "Hot",
75+
"page-views-value": "Visitas a la Página: ",
76+
"site-running-for": "Tiempo de actividad: ",
77+
"site-running-for-unit": "días",
78+
"links": "Links Amigos",
79+
"links-slogan": "Mejorando con cada blogger",
80+
"links-random-visit": "Visitas random",
81+
"links-apply": "Aplicar a lista de amigos",
82+
"links-badge-personal": "Personal",
83+
"links-badge-personal-desc": "Graba cada paso del camino.",
84+
"links-badge-tech": "Tecnología",
85+
"links-badge-tech-desc": "Blogs de tecnología relacionados.",
86+
"links-badge-designer": "Diseñador",
87+
"links-badge-designer-desc": "Blogs de diseño relacionados.",
88+
"links-badge-vip": "Patrocinadores",
89+
"links-badge-vip-desc": "Patrocinadores recientes",
90+
"notification-random-jump": "Elegir un blogger afortunado al que recurrir."
91+
}
92+
}

src/locales/languages/zh-CN.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
"not-found": "无法找到页面"
1212
},
1313
"home": {
14+
"editor_selection": "EDITOR'S SELECTION",
1415
"recommended": "推荐文章"
1516
},
1617
"titles": {

src/locales/languages/zh-TW.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
"not-found": "無法找到頁面"
1212
},
1313
"home": {
14+
"editor_selection": "EDITOR'S SELECTION",
1415
"recommended": "推薦文章"
1516
},
1617
"titles": {

src/models/ThemeConfig.class.ts

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@ export class ThemeMenu implements ObMenu {
8080
i18n: {
8181
'zh-CN': '首页',
8282
'zh-TW': '首頁',
83-
en: 'Home'
83+
en: 'Home',
84+
es: 'Inicio'
8485
}
8586
})
8687
}
@@ -98,7 +99,8 @@ export class ThemeMenu implements ObMenu {
9899
i18n: {
99100
'zh-CN': '关于',
100101
'zh-TW': '關於',
101-
en: 'About'
102+
en: 'About',
103+
es: 'Acerca de'
102104
}
103105
},
104106
Archives: {
@@ -107,7 +109,8 @@ export class ThemeMenu implements ObMenu {
107109
i18n: {
108110
'zh-CN': '归档',
109111
'zh-TW': '歸檔',
110-
en: 'Archives'
112+
en: 'Archives',
113+
es: 'Archivos'
111114
}
112115
},
113116
Tags: {
@@ -116,7 +119,8 @@ export class ThemeMenu implements ObMenu {
116119
i18n: {
117120
'zh-CN': '标签',
118121
'zh-TW': '標簽',
119-
en: 'Tags'
122+
en: 'Tags',
123+
es: 'Etiquetas'
120124
}
121125
},
122126
Links: {
@@ -125,7 +129,8 @@ export class ThemeMenu implements ObMenu {
125129
i18n: {
126130
'zh-CN': '友情链接',
127131
'zh-TW': '友情鏈接',
128-
en: 'Friend Links'
132+
en: 'Friend Links',
133+
es: 'Links Amigos'
129134
}
130135
}
131136
}
@@ -157,6 +162,7 @@ export class ThemeMenu implements ObMenu {
157162
}
158163

159164
enum LocalesTypes {
165+
es,
160166
en,
161167
'zh-CN',
162168
'zh-TW'

src/utils/comments/github-api.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -357,6 +357,7 @@ export class GithubComment implements RecentComment {
357357
*/
358358
transformTime(lang: Locales): void {
359359
const templates = {
360+
es: 'comentado [TIME]',
360361
en: 'commented [TIME]',
361362
'zh-CN': '[TIME]评论了',
362363
'zh-TW': '[TIME]評論了'

src/utils/comments/leancloud-api.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -329,6 +329,7 @@ export class LeanCloudComment implements RecentComment {
329329
*/
330330
transformTime(lang: Locales): void {
331331
const templates = {
332+
es: 'comentado [TIME]',
332333
en: 'commented [TIME]',
333334
'zh-CN': '[TIME]评论了',
334335
'zh-TW': '[TIME]評論了'

0 commit comments

Comments
 (0)