Parcourir la source

update i18n tool

gavin.chen il y a 1 an
Parent
commit
a076b9b8a6
4 fichiers modifiés avec 26 ajouts et 20 suppressions
  1. 0 0
      dev_tool/i18n_exclude_en.json
  2. 5 0
      dev_tool/i18n_exclude_zh.json
  3. 20 19
      dev_tool/i18n_scanner.js
  4. 1 1
      src/i18n/en.json

+ 0 - 0
dev_tool/i18n_special_rule.json → dev_tool/i18n_exclude_en.json


+ 5 - 0
dev_tool/i18n_exclude_zh.json

@@ -0,0 +1,5 @@
+{
+  "sale_email": "vinno@vinno.com",
+  "service_email": "vinnoservice@vinno.com",
+  "copyright": "@2017 Vinno Corporation. All rights reserved."
+}

+ 20 - 19
dev_tool/i18n_scanner.js

@@ -1,16 +1,17 @@
-var fs = require('fs');
-var path = require('path');
-var Parser = require('i18next-scanner').Parser;
-const sp_rule = require('./i18n_special_rule.json');
-const existedEn = require('../src/i18n/en.json');
+var fs = require("fs");
+var path = require("path");
+var Parser = require("i18next-scanner").Parser;
+const zhExclude = require("./i18n_exclude_zh.json");
+const enExclude = require("./i18n_exclude_en.json");
+const existedEn = require("../src/i18n/en.json");
 
-var directoryPaths = ['src/pages', 'src/components'];
+var directoryPaths = ["src/pages", "src/components"];
 var existedEnTranslation = existedEn.translation;
 
 var zhHandler = function (key) {
   /// 读取特殊规则,如果有特殊规则,就从特殊规则取值
-  if (sp_rule[key]) {
-    zhParser.set(key, sp_rule[key]);
+  if (zhExclude[key]) {
+    zhParser.set(key, zhExclude[key]);
     return;
   }
   zhParser.set(key, key);
@@ -18,8 +19,8 @@ var zhHandler = function (key) {
 
 var enHandler = function (key) {
   /// 读取特殊规则,如果有特殊规则,就从特殊规则取值
-  if (sp_rule[key]) {
-    enParser.set(key, sp_rule[key]);
+  if (enExclude[key]) {
+    enParser.set(key, enExclude[key]);
     return;
   }
   /// 如果已经有翻译,就从已有翻译取值
@@ -27,7 +28,7 @@ var enHandler = function (key) {
     enParser.set(key, existedEnTranslation[key]);
     return;
   }
-  var defaultValue = '__TRANSLATION__';
+  var defaultValue = "__TRANSLATION__";
   enParser.set(key, defaultValue);
 };
 
@@ -43,10 +44,10 @@ function processDirectory(directoryPath) {
     if (fs.statSync(fullPath).isDirectory()) {
       processDirectory(fullPath);
     } else {
-      let content = fs.readFileSync(fullPath, 'utf-8');
+      let content = fs.readFileSync(fullPath, "utf-8");
 
-      zhParser.parseFuncFromString(content, { list: ['t'] }, zhHandler);
-      enParser.parseFuncFromString(content, { list: ['t'] }, enHandler);
+      zhParser.parseFuncFromString(content, { list: ["t"] }, zhHandler);
+      enParser.parseFuncFromString(content, { list: ["t"] }, enHandler);
     }
   }
 }
@@ -61,14 +62,14 @@ var enTranslations = enParser.get({ sort: true });
 
 // 写入翻译到目标json文件
 fs.writeFileSync(
-  'src/i18n/zh.json',
-  JSON.stringify(zhTranslations.en, null, 2),
+  "src/i18n/zh.json",
+  JSON.stringify(zhTranslations.en, null, 2)
 );
 
 fs.writeFileSync(
-  'src/i18n/en.json',
-  JSON.stringify(enTranslations.en, null, 2),
+  "src/i18n/en.json",
+  JSON.stringify(enTranslations.en, null, 2)
 );
 
 var fileTranslations = Object.keys(zhTranslations.en.translation).length;
-console.log('✅ 翻译查找完成,共找到 ' + fileTranslations + ' 个翻译项');
+console.log("✅ 翻译查找完成,共找到 " + fileTranslations + " 个翻译项");

+ 1 - 1
src/i18n/en.json

@@ -48,4 +48,4 @@
     "飞依诺科技股份有限公司": "VINNO Technology (Suzhou)Co., Ltd.",
     "首页": "Home"
   }
-}
+}