diff --git a/lib/lang.js b/lib/lang.js index 8531761b..ea78fc2c 100644 --- a/lib/lang.js +++ b/lib/lang.js @@ -2,12 +2,15 @@ import zhCN from './lang/zh-CN' import enUS from './lang/en-US' import zhHK from './lang/zh-HK' import zhTW from './lang/zh-TW' +import frFR from '@/lib/lang/fr-FR' import { isBrowser, mergeDeep } from './utils' + const lang = { 'en-US': enUS, 'zh-CN': zhCN, 'zh-HK': zhHK, - 'zh-TW': zhTW + 'zh-TW': zhTW, + 'fr-FR': frFR } export default lang @@ -16,7 +19,7 @@ export default lang * 获取当前语言字典 * @returns 不同语言对应字典 */ -export function generateLocaleDict (langString) { +export function generateLocaleDict(langString) { let userLocale = lang['en-US'] if (!langString) { return userLocale @@ -33,6 +36,9 @@ export function generateLocaleDict (langString) { case 'zh-tw': userLocale = lang['zh-TW'] break + case 'fr-fr': + userLocale = lang['fr-FR'] + break default: userLocale = lang['zh-CN'] } @@ -44,7 +50,7 @@ export function generateLocaleDict (langString) { * 初始化语言 * 根据用户当前浏览器语言进行切换 */ -export function initLocale (locale, changeLocale) { +export function initLocale(locale, changeLocale) { if (isBrowser()) { const targetLocale = generateLocaleDict(window.navigator.language) if (JSON.stringify(locale) !== JSON.stringify(targetLocale)) { diff --git a/lib/lang/fr-FR.js b/lib/lang/fr-FR.js new file mode 100644 index 00000000..30089a70 --- /dev/null +++ b/lib/lang/fr-FR.js @@ -0,0 +1,54 @@ +export default { + LOCALE: 'fr-FR', + NAV: { + INDEX: 'Accueil', + RSS: 'RSS', + SEARCH: 'Recherche', + ABOUT: 'À propos', + NAVIGATOR: 'Navigation', + MAIL: 'E-mail', + ARCHIVE: 'Archive' + }, + COMMON: { + MORE: 'Plus', + NO_MORE: 'Aucune donnée', + LATEST_POSTS: 'Nouveaux articles', + TAGS: 'Tags', + NO_TAG: 'Non tag', + CATEGORY: 'Catégorie(s)', + SHARE: 'Partager', + SCAN_QR_CODE: 'Scan QRCode', + URL_COPIED: "L'URL est copé!", + TABLE_OF_CONTENTS: 'Sommaire', + RELATE_POSTS: 'Article similaire', + COPYRIGHT: 'Droit d\'auteur', + AUTHOR: 'Auteur', + URL: 'Link', + ANALYTICS: 'Analytique', + POSTS: 'Articles', + ARTICLE: 'Article(s)', + VISITORS: 'Visiteurs', + VIEWS: 'Views', + COPYRIGHT_NOTICE: 'Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International (CC BY-NC-SA 4.0)', + RESULT_OF_SEARCH: 'Résultats', + ARTICLE_DETAIL: 'Plus de détails', + PASSWORD_ERROR: 'Mot de passe est incorrect!', + ARTICLE_LOCK_TIPS: 'Saisir le mot de passe pour accéder au contenu', + SUBMIT: 'Valider', + POST_TIME: 'Date de publication', + LAST_EDITED_TIME: 'Date de modification', + RECENT_COMMENTS: 'Nouveau commentaire' + }, + PAGINATION: { + PREV: 'PREV', + NEXT: 'NEXT' + }, + SEARCH: { + ARTICLES: 'Recherche les articles', + TAGS: 'Recherche les tags' + }, + POST: { + BACK: 'Page precedente', + TOP: 'Haut' + } +} diff --git a/themes/hexo/components/HeaderArticle.js b/themes/hexo/components/HeaderArticle.js index b11d7cfc..64636717 100644 --- a/themes/hexo/components/HeaderArticle.js +++ b/themes/hexo/components/HeaderArticle.js @@ -58,7 +58,7 @@ export default function HeaderArticle({ post, siteInfo }) { {BLOG.ANALYTICS_BUSUANZI_ENABLE &&