From 040bfe4b456eb910dc7ddbcc3f5ae0e42d440951 Mon Sep 17 00:00:00 2001
From: wpxp123456 <2677556700@qq.com>
Date: Wed, 29 Jul 2020 14:59:58 +0800
Subject: [PATCH] feat(zh en): zh en
zh en
---
 src/controllers/conditionformat.js | 467 +++++++++++++++------------
 src/controllers/menuButton.js      | 502 ++++++++++++++---------------
 src/locale/en.js                   | 116 +++++++
 src/locale/zh.js                   | 117 +++++++
 4 files changed, 737 insertions(+), 465 deletions(-)
diff --git a/src/controllers/conditionformat.js b/src/controllers/conditionformat.js
index c9d3c6e..c54e1f0 100644
--- a/src/controllers/conditionformat.js
+++ b/src/controllers/conditionformat.js
@@ -98,6 +98,8 @@ const conditionformat = {
     init: function(){
         let _this = this;
 
+        const conditionformat_Text = locale().conditionformat;
+
         // 管理规则
         $(document).off("change.CFchooseSheet").on("change.CFchooseSheet", "#luckysheet-administerRule-dialog .chooseSheet", function(){
             let index = $("#luckysheet-administerRule-dialog .chooseSheet option:selected").val();
@@ -221,10 +223,10 @@ const conditionformat = {
         $(document).off("click.CFnewConditionRule").on("click.CFnewConditionRule", "#newConditionRule", function(){
             if(Store.luckysheet_select_save.length == 0){
                 if(isEditMode()){
-                    alert("请选择应用范围");
+                    alert(conditionformat_Text.pleaseSelectRange);
                 }
                 else{
-                    tooltip.info("请选择应用范围", "");
+                    tooltip.info(conditionformat_Text.pleaseSelectRange, "");
                 }
                 return;
             }
@@ -304,7 +306,7 @@ const conditionformat = {
                             //条件值是否是选区
                             let rangeArr1 = _this.getRangeByTxt(v1);
                             if(rangeArr1.length > 1){
-                                _this.infoDialog("只能对单个单元格进行引用", "");
+                                _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                 return;
                             }
                             else if(rangeArr1.length == 1){
@@ -318,13 +320,13 @@ const conditionformat = {
                                     conditionValue.push(v1);
                                 }
                                 else{
-                                    _this.infoDialog("只能对单个单元格进行引用", "");
+                                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                     return;
                                 }
                             }
                             else if(rangeArr1.length == 0){
                                 if(isNaN(v1) || v1 == ""){
-                                    _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                                    _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                                     return;
                                 }
                                 else{
@@ -334,7 +336,7 @@ const conditionformat = {
 
                             let rangeArr2 = _this.getRangeByTxt(v2);
                             if(rangeArr2.length > 1){
-                                _this.infoDialog("只能对单个单元格进行引用", "");
+                                _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                 return;
                             }
                             else if(rangeArr2.length == 1){
@@ -348,13 +350,13 @@ const conditionformat = {
                                     conditionValue.push(v2);
                                 }
                                 else{
-                                    _this.infoDialog("只能对单个单元格进行引用", "");
+                                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                     return;
                                 }
                             }
                             else if(rangeArr2.length == 0){
                                 if(isNaN(v2) || v2 == ""){
-                                    _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                                    _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                                     return;
                                 }
                                 else{
@@ -369,7 +371,7 @@ const conditionformat = {
                             //条件值是否是选区
                             let rangeArr = _this.getRangeByTxt(v);
                             if(rangeArr.length > 1){
-                                _this.infoDialog("只能对单个单元格进行引用", "");
+                                _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                 return;
                             }
                             else if(rangeArr.length == 1){
@@ -383,13 +385,13 @@ const conditionformat = {
                                     conditionValue.push(v);
                                 }
                                 else{
-                                    _this.infoDialog("只能对单个单元格进行引用", "");
+                                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                     return;
                                 }
                             }
                             else if(rangeArr.length == 0){
                                 if(isNaN(v) || v == ""){
-                                    _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                                    _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                                     return;
                                 }
                                 else{
@@ -407,7 +409,7 @@ const conditionformat = {
                         //条件值是否是选区
                         let rangeArr = _this.getRangeByTxt(v);
                         if(rangeArr.length > 1){
-                            _this.infoDialog("只能对单个单元格进行引用", "");
+                            _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                             return;
                         }
                         else if(rangeArr.length == 1){
@@ -421,13 +423,13 @@ const conditionformat = {
                                 conditionValue.push(v);
                             }
                             else{
-                                _this.infoDialog("只能对单个单元格进行引用", "");
+                                _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                 return;
                             }
                         }
                         else if(rangeArr.length == 0){
                             if(isNaN(v) || v == ""){
-                                _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                                _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                                 return;
                             }
                             else{
@@ -442,7 +444,7 @@ const conditionformat = {
                         let v = $("#luckysheet-newConditionRule-dialog #daterange-btn").val();
 
                         if(v == "" || v == null){
-                            _this.infoDialog("请选择日期", "");
+                            _this.infoDialog(conditionformat_Text.pleaseSelectADate, "");
                             return;
                         }
                         
@@ -472,7 +474,7 @@ const conditionformat = {
                     let v = $("#luckysheet-newConditionRule-dialog #conditionVal input").val().trim();
 
                     if(parseInt(v) != v || parseInt(v) < 1 || parseInt(v) > 1000){
-                        _this.infoDialog("请输入一个介于 1 和 1000 之间的整数", "");
+                        _this.infoDialog(conditionformat_Text.pleaseEnterInteger, "");
                         return;
                     }
                     
@@ -669,7 +671,7 @@ const conditionformat = {
                             //条件值是否是选区
                             let rangeArr1 = _this.getRangeByTxt(v1);
                             if(rangeArr1.length > 1){
-                                _this.infoDialog("只能对单个单元格进行引用", "");
+                                _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                 return;
                             }
                             else if(rangeArr1.length == 1){
@@ -683,13 +685,13 @@ const conditionformat = {
                                     conditionValue.push(v1);
                                 }
                                 else{
-                                    _this.infoDialog("只能对单个单元格进行引用", "");
+                                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                     return;
                                 }
                             }
                             else if(rangeArr1.length == 0){
                                 if(isNaN(v1) || v1 == ""){
-                                    _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                                    _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                                     return;
                                 }
                                 else{
@@ -699,7 +701,7 @@ const conditionformat = {
 
                             let rangeArr2 = _this.getRangeByTxt(v2);
                             if(rangeArr2.length > 1){
-                                _this.infoDialog("只能对单个单元格进行引用", "");
+                                _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                 return;
                             }
                             else if(rangeArr2.length == 1){
@@ -713,13 +715,13 @@ const conditionformat = {
                                     conditionValue.push(v2);
                                 }
                                 else{
-                                    _this.infoDialog("只能对单个单元格进行引用", "");
+                                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                     return;
                                 }
                             }
                             else if(rangeArr2.length == 0){
                                 if(isNaN(v2) || v2 == ""){
-                                    _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                                    _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                                     return;
                                 }
                                 else{
@@ -734,7 +736,7 @@ const conditionformat = {
                             //条件值是否是选区
                             let rangeArr = _this.getRangeByTxt(v);
                             if(rangeArr.length > 1){
-                                _this.infoDialog("只能对单个单元格进行引用", "");
+                                _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                 return;
                             }
                             else if(rangeArr.length == 1){
@@ -748,13 +750,13 @@ const conditionformat = {
                                     conditionValue.push(v);
                                 }
                                 else{
-                                    _this.infoDialog("只能对单个单元格进行引用", "");
+                                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                     return;
                                 }
                             }
                             else if(rangeArr.length == 0){
                                 if(isNaN(v) || v == ""){
-                                    _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                                    _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                                     return;
                                 }
                                 else{
@@ -772,7 +774,7 @@ const conditionformat = {
                         //条件值是否是选区
                         let rangeArr = _this.getRangeByTxt(v);
                         if(rangeArr.length > 1){
-                            _this.infoDialog("只能对单个单元格进行引用", "");
+                            _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                             return;
                         }
                         else if(rangeArr.length == 1){
@@ -786,13 +788,13 @@ const conditionformat = {
                                 conditionValue.push(v);
                             }
                             else{
-                                _this.infoDialog("只能对单个单元格进行引用", "");
+                                _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                                 return;
                             }
                         }
                         else if(rangeArr.length == 0){
                             if(isNaN(v) || v == ""){
-                                _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                                _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                                 return;
                             }
                             else{
@@ -807,7 +809,7 @@ const conditionformat = {
                         let v = $("#luckysheet-editorConditionRule-dialog #daterange-btn").val();
 
                         if(v == "" || v == null){
-                            _this.infoDialog("请选择日期", "");
+                            _this.infoDialog(conditionformat_Text.pleaseSelectADate, "");
                             return;
                         }
                         
@@ -837,7 +839,7 @@ const conditionformat = {
                     let v = $("#luckysheet-editorConditionRule-dialog #conditionVal input").val().trim();
 
                     if(parseInt(v) != v || parseInt(v) < 1 || parseInt(v) > 1000){
-                        _this.infoDialog("请输入一个介于 1 和 1000 之间的整数", "");
+                        _this.infoDialog(conditionformat_Text.pleaseEnterInteger, "");
                         return;
                     }
                     
@@ -998,7 +1000,7 @@ const conditionformat = {
                 //条件值是否是选区
                 let rangeArr = _this.getRangeByTxt(v);
                 if(rangeArr.length > 1){
-                    _this.infoDialog("只能对单个单元格进行引用", "");
+                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                     return;
                 }
                 else if(rangeArr.length == 1){
@@ -1012,13 +1014,13 @@ const conditionformat = {
                         conditionValue.push(v);
                     }
                     else{
-                        _this.infoDialog("只能对单个单元格进行引用", "");
+                        _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                         return;
                     }
                 }
                 else if(rangeArr.length == 0){
                     if(isNaN(v) || v == ""){
-                        _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                        _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                         return;
                     }
                     else{
@@ -1033,7 +1035,7 @@ const conditionformat = {
                 //条件值是否是选区
                 let rangeArr1 = _this.getRangeByTxt(v1);
                 if(rangeArr1.length > 1){
-                    _this.infoDialog("只能对单个单元格进行引用", "");
+                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                     return;
                 }
                 else if(rangeArr1.length == 1){
@@ -1047,13 +1049,13 @@ const conditionformat = {
                         conditionValue.push(v1);
                     }
                     else{
-                        _this.infoDialog("只能对单个单元格进行引用", "");
+                        _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                         return;
                     }
                 }
                 else if(rangeArr1.length == 0){
                     if(isNaN(v1) || v1 == ""){
-                        _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                        _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                         return;
                     }
                     else{
@@ -1063,7 +1065,7 @@ const conditionformat = {
 
                 let rangeArr2 = _this.getRangeByTxt(v2);
                 if(rangeArr2.length > 1){
-                    _this.infoDialog("只能对单个单元格进行引用", "");
+                    _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                     return;
                 }
                 else if(rangeArr2.length == 1){
@@ -1077,13 +1079,13 @@ const conditionformat = {
                         conditionValue.push(v2);
                     }
                     else{
-                        _this.infoDialog("只能对单个单元格进行引用", "");
+                        _this.infoDialog(conditionformat_Text.onlySingleCell, "");
                         return;
                     }
                 }
                 else if(rangeArr2.length == 0){
                     if(isNaN(v2) || v2 == ""){
-                        _this.infoDialog("条件值只能是数字或者单个单元格", "");
+                        _this.infoDialog(conditionformat_Text.conditionValueCanOnly, "");
                         return;
                     }
                     else{
@@ -1095,7 +1097,7 @@ const conditionformat = {
                 let v = $("#luckysheet-conditionformat-dialog #daterange-btn").val();
 
                 if(v == "" || v == null){
-                    _this.infoDialog("请选择日期", "");
+                    _this.infoDialog(conditionformat_Text.pleaseSelectADate, "");
                     return;
                 }
 
@@ -1108,7 +1110,7 @@ const conditionformat = {
                 let v = $("#luckysheet-conditionformat-dialog #conditionVal").val().trim();
 
                 if(parseInt(v) != v || parseInt(v) < 1 || parseInt(v) > 1000){
-                    _this.infoDialog("请输入一个介于 1 和 1000 之间的整数", "");
+                    _this.infoDialog(conditionformat_Text.pleaseEnterInteger, "");
                     return;
                 }
 
@@ -1287,7 +1289,7 @@ const conditionformat = {
             
             //新建规则弹出层
             if(id == "luckysheet-newConditionRule-dialog"){
-                let source=$("#" + id).find("#luckysheet-newConditionRule-dialog-close").attr("data-source");
+                let source = $("#" + id).find("#luckysheet-newConditionRule-dialog-close").attr("data-source");
                 //新建规则入口
                 if(source == 1){
                     $("#luckysheet-administerRule-dialog").show();
@@ -1343,12 +1345,15 @@ const conditionformat = {
         $("#luckysheet-modal-dialog-mask").hide();
         $("#luckysheet-singleRange-dialog").remove();
 
+        const conditionformat_Text = locale().conditionformat;
+
         $("body").append(replaceHtml(modelHTML, { 
             "id": "luckysheet-singleRange-dialog", 
             "addclass": "luckysheet-singleRange-dialog", 
-            "title": "选择单元格", 
-            "content": '', 
-            "botton": '', 
+            "title": conditionformat_Text.selectCell, 
+            "content": ``, 
+            "botton":  `
+                        `, 
             "style": "z-index:100003" 
         }));
         let $t = $("#luckysheet-singleRange-dialog")
@@ -1370,12 +1375,15 @@ const conditionformat = {
         $("#luckysheet-modal-dialog-mask").hide();
         $("#luckysheet-multiRange-dialog").remove();
 
+        const conditionformat_Text = locale().conditionformat;
+
         $("body").append(replaceHtml(modelHTML, { 
             "id": "luckysheet-multiRange-dialog", 
             "addclass": "luckysheet-multiRange-dialog", 
-            "title": "选择应用范围", 
-            "content": '', 
-            "botton": '', 
+            "title": conditionformat_Text.selectRange, 
+            "content": ``, 
+            "botton":  `
+                        `, 
             "style": "z-index:100003" 
         }));
         let $t = $("#luckysheet-multiRange-dialog")
@@ -1431,6 +1439,8 @@ const conditionformat = {
         return range;
     },
     colorSelectInit: function(){
+        const conditionformat_Text = locale().conditionformat;
+
         $(".luckysheet-conditionformat-config-color").spectrum({
             showPalette: true,
             showPaletteOnly:true,
@@ -1445,12 +1455,12 @@ const conditionformat = {
             maxPaletteSize: 8,
             maxSelectionSize: 8,
             // color: currenColor,
-            cancelText: "取消",
-            chooseText: "确定颜色",
+            cancelText: conditionformat_Text.cancel,
+            chooseText: conditionformat_Text.confirmColor,
             togglePaletteMoreText: "自定义",
             togglePaletteLessText: "收起",
             togglePaletteOnly: true,
-            clearText: "清除颜色选择",
+            clearText: conditionformat_Text.clearColorSelect,
             noColorSelectedText: "没有颜色被选择",
             localStorageKey: "spectrum.textcolor" + server.gridKey,
             palette: [["#000","#444","#666","#999","#ccc","#eee","#f3f3f3","#fff"],
@@ -1474,12 +1484,15 @@ const conditionformat = {
         $("#luckysheet-modal-dialog-mask").show();
         $("#luckysheet-conditionformat-dialog").remove();
 
+        const conditionformat_Text = locale().conditionformat;
+
         $("body").append(replaceHtml(modelHTML, { 
             "id": "luckysheet-conditionformat-dialog", 
             "addclass": "luckysheet-conditionformat-dialog", 
             "title": title, 
             "content": content, 
-            "botton": '', 
+            "botton":  `
+                        `, 
             "style": "z-index:100003" 
         }));
         let $t = $("#luckysheet-conditionformat-dialog")
@@ -1498,7 +1511,7 @@ const conditionformat = {
         _this.init();
         _this.colorSelectInit();
         
-        if(title == "条件格式——发生日期"){
+        if(title == locale().conditionformat.conditionformat_occurrenceDate){
             _this.daterangeInit("luckysheet-conditionformat-dialog");
         }
     },
@@ -1506,68 +1519,70 @@ const conditionformat = {
         $("#luckysheet-modal-dialog-mask").show();
         $("#luckysheet-CFicons-dialog").remove();
 
-        let content = '
'+
-                        '
请点击选择一组图标:
'+
-                        '
方向
'+
-                        '
'+
-                            '
'+
-                                '
'+
-                                '
'+
-                                '
'+
-                                '
'+
-                            '
'+
-                            '
'+
-                            '
'+
-                        '
'+
-                        '
形状
'+
-                        '
'+
-                        '
标记
'+
-                        '
'+
-                        '
等级
'+
-                        '
'+
-                      '
 ';
+        const conditionformat_Text = locale().conditionformat;
+
+        let content =  `
+                            
${conditionformat_Text.pleaseSelectIcon}
+                            
${conditionformat_Text.direction}
+                            
+                            
${conditionformat_Text.shape}
+                            
+                            
${conditionformat_Text.mark}
+                            
+                            
${conditionformat_Text.grade}
+                            
+                        
 `;
 
         $("body").append(replaceHtml(modelHTML, { 
             "id": "luckysheet-CFicons-dialog", 
             "addclass": "luckysheet-CFicons-dialog", 
-            "title": "图标集", 
+            "title": conditionformat_Text.icons, 
             "content": content, 
-            "botton": '', 
+            "botton": ``, 
             "style": "z-index:100003" 
         }));
         let $t = $("#luckysheet-CFicons-dialog")
@@ -1912,6 +1927,8 @@ const conditionformat = {
     editorConditionRuleDialog: function(){
         let _this = this;
 
+        const conditionformat_Text = locale().conditionformat; 
+
         let rule = _this.editorRule.data;
         let ruleType = rule["type"], ruleFormat = rule["format"];
         
@@ -1965,9 +1982,9 @@ const conditionformat = {
         $("#luckysheet-editorConditionRule-dialog").remove();
 
         let content = '' +
-                        '
选择规则类型:
' +
+                        '
'+ conditionformat_Text.chooseRuleType +':
' +
                         _this.ruleTypeHtml() +
-                        '
编辑规则说明:
' +
+                        '
'+ conditionformat_Text.editRuleDescription +':
' +
                         '
' +
                             ruleExplainHtml +
                         '
' +
@@ -1976,9 +1993,10 @@ const conditionformat = {
         $("body").append(replaceHtml(modelHTML, { 
             "id": "luckysheet-editorConditionRule-dialog", 
             "addclass": "luckysheet-newEditorRule-dialog", 
-            "title": "编辑格式规则", 
+            "title": conditionformat_Text.editFormatRule, 
             "content": content, 
-            "botton": '
', 
+            "botton":  `
+                        
`, 
             "style": "z-index:100003" 
         }));
         let $t = $("#luckysheet-editorConditionRule-dialog")
@@ -2129,7 +2147,7 @@ const conditionformat = {
             "addclass": "", 
             "title": title, 
             "content": content, 
-            "botton": '
', 
+            "botton": `
`, 
             "style": "z-index:100003" 
         }));
         let $t = $("#luckysheet-conditionformat-info-dialog")
@@ -2213,138 +2231,159 @@ const conditionformat = {
                                                 
                                                 
                                                 
-                                                
+                                                
                                                 
-                                                
-                                                
-                                                
-                                                
-                                                
-                                                
-                                                
-                                                
-                                                
+                                                
+                                                
+                                                
+                                                
+                                                
+                                                
+                                                
+                                                
+                                                
                                             
                                          
                                     `;
                 break;
             case 1: //只为包含以下内容的单元格设置格式
-                ruleExplainHtml = '只为满足以下条件的单元格:
' +
-                                      '' +
-                                        '
'+
-                                        '
' +
-                                            '
' +
-                                                '
' +
-                                                '
' +
-                                                    '' +
-                                                '
' +
-                                                '
到' +
-                                                '
' +
-                                                    '' +
-                                                '
' +
-                                            '
' +
-                                            '
' +
-                                                '
' +
-                                                '
' +
-                                                    '' +
-                                                '
' +
-                                            '
' +
-                                            '
' +
-                                                '
' +
-                                                    '' +
-                                                '
' +
-                                            '
' +
-                                        '
' +
-                                      '
 ' +
-                                      '设置格式:
' + textCellColorHtml;
+                ruleExplainHtml =  `${conditionformat_Text.ruleTypeItem2_title}:
+                                    
+                                        
+                                        
+                                            
+                                                
+                                                
+                                                    
+                                                    
+                                                
+                                                
${conditionformat_Text.in}
+                                                
+                                                    
+                                                    
+                                                
+                                            
+                                            
+                                                
+                                                
+                                                    
+                                                    
+                                                
+                                            
+                                            
+                                        
+                                    
 
+                                    设置格式:
${textCellColorHtml}`;
                 break;
             case 2: //仅对排名靠前或靠后的数值设置格式
-                ruleExplainHtml = '为以下排名内的值:
'+
-                                      ''+
-                                        '
'+
-                                        '
'+
-                                            ''+
-                                        '
'+
-                                        '
'+
-                                        '
'+
-                                      '
 '+
-                                      '设置格式:
' + textCellColorHtml;
+                ruleExplainHtml =  `${conditionformat_Text.ruleTypeItem3_title}:
+                                    
+                                        
+                                        
+                                            
+                                        
+                                        
+                                        
+                                    
 
+                                    ${conditionformat_Text.setFormat}:
${textCellColorHtml}`;
                 break;
             case 3: //仅对高于或低于平均值的数值设置格式
-                ruleExplainHtml = '为满足以下条件的值:
'+
-                                      ''+
-                                        ''+
-                                        '选定范围的平均值'+
-                                      '
'+
-                                      '设置格式:
' + textCellColorHtml;
+                ruleExplainHtml =  `${conditionformat_Text.ruleTypeItem4_title}:
+                                    
+                                        
+                                        ${conditionformat_Text.selectRange_average}
+                                    
+                                    ${conditionformat_Text.setFormat}:
${textCellColorHtml}`;
                 break;
             case 4: //仅对唯一值或重复值设置格式
-                ruleExplainHtml = '全部:
'+
-                                      ''+
-                                        ''+
-                                        '选定范围中的数值'+
-                                      '
'+
-                                      '设置格式:
' + textCellColorHtml;
+                ruleExplainHtml =  `${conditionformat_Text.all}:
+                                    
+                                        
+                                        ${conditionformat_Text.selectRange_value}
+                                    
+                                    ${conditionformat_Text.setFormat}:
${textCellColorHtml}`;
                 break;
         }
 
         return ruleExplainHtml;
     },
     daterangeInit: function(id){
+        const conditionformat_Text = locale().conditionformat; 
+
         //日期选择插件
         $('.ranges_1 ul').remove();
         $('#' + id).find("#daterange-btn").daterangepicker({
             ranges: 
                 {
-                    // '全部': [moment(), moment().subtract(-1, 'days')],
-                    '昨天': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
-                    '今天': [moment(), moment()],
-                    // '明天': [moment().subtract(-1, 'days'), moment().subtract(-1, 'days')],
-                    '上周': [moment(moment().subtract(1, 'week')).subtract(new Date().getDay() - 1, 'days'), moment().subtract(new Date().getDay(), 'days')],
-                    '本周': [moment().subtract(new Date().getDay() - 1, 'days'), moment().add(7 - new Date().getDay(), 'days')],
-                    '上月': [moment(moment().format('YYYY-MM')).subtract(1, 'month'), moment(moment().format('YYYY-MM')).subtract(1, 'day')],
-                    '本月': [moment().format('YYYY-MM'), moment(moment(moment().format('YYYY-MM')).add(1, 'month')).subtract(1, 'day')],
-                    '去年': [moment(moment(moment().format('YYYY'))).subtract(1, 'years').format('YYYY'), moment(moment().format('YYYY')).subtract(1, 'day')],
-                    '本年': [moment().format('YYYY'), moment(moment(moment().add(1, 'years')).format('YYYY')).subtract(1, 'day')],
-                    '最近7天': [moment().subtract(6, 'days'), moment()],
-                    '最近30天': [moment().subtract(29, 'days'), moment()]
-                    // '未来七天': [moment(),moment().subtract(-6, 'days')],
-                    // '未来30天': [moment(),moment().subtract(-29, 'days')],
-                    // '未来60天': [moment(),moment().subtract(-59, 'days'), ]
+                    // [conditionformat_Text.all]: [moment(), moment().subtract(-1, 'days')],
+                    [conditionformat_Text.yesterday]: [moment().subtract(1, 'days'), moment().subtract(1, 'days')],
+                    [conditionformat_Text.today]: [moment(), moment()],
+                    // [conditionformat_Text.tomorrow]: [moment().subtract(-1, 'days'), moment().subtract(-1, 'days')],
+                    [conditionformat_Text.lastWeek]: [moment(moment().subtract(1, 'week')).subtract(new Date().getDay() - 1, 'days'), moment().subtract(new Date().getDay(), 'days')],
+                    [conditionformat_Text.thisWeek]: [moment().subtract(new Date().getDay() - 1, 'days'), moment().add(7 - new Date().getDay(), 'days')],
+                    [conditionformat_Text.lastMonth]: [moment(moment().format('YYYY-MM')).subtract(1, 'month'), moment(moment().format('YYYY-MM')).subtract(1, 'day')],
+                    [conditionformat_Text.thisMonth]: [moment().format('YYYY-MM'), moment(moment(moment().format('YYYY-MM')).add(1, 'month')).subtract(1, 'day')],
+                    [conditionformat_Text.lastYear]: [moment(moment(moment().format('YYYY'))).subtract(1, 'years').format('YYYY'), moment(moment().format('YYYY')).subtract(1, 'day')],
+                    [conditionformat_Text.thisYear]: [moment().format('YYYY'), moment(moment(moment().add(1, 'years')).format('YYYY')).subtract(1, 'day')],
+                    [conditionformat_Text.last7days]: [moment().subtract(6, 'days'), moment()],
+                    [conditionformat_Text.last30days]: [moment().subtract(29, 'days'), moment()]
+                    // [conditionformat_Text.next7days]: [moment(),moment().subtract(-6, 'days')],
+                    // [conditionformat_Text.next30days]: [moment(),moment().subtract(-29, 'days')],
+                    // [conditionformat_Text.next60days]: [moment(),moment().subtract(-59, 'days'), ]
                 },
                 startDate: moment(),
                 endDate: moment()
             },
             function(start, end,label) {
                 //label:通过它来知道用户选择的是什么,传给后台进行相应的展示
-                if(label == '全部'){
+                let format1 = [
+                    conditionformat_Text.yesterday,
+                    conditionformat_Text.today
+                ];
+
+                let format2 = [
+                    conditionformat_Text.lastWeek,
+                    conditionformat_Text.thisWeek,
+                    conditionformat_Text.lastMonth,
+                    conditionformat_Text.thisMonth,
+                    conditionformat_Text.lastYear,
+                    conditionformat_Text.thisYear,
+                    conditionformat_Text.last7days,
+                    conditionformat_Text.last30days
+                ]
+
+                if(label == conditionformat_Text.all){
                     $('#daterange-btn').val('');
                 }
-                else if(label == '昨天' || label == '今天'){
+                else if(format1.indexOf(label) > -1){
                     $('#daterange-btn').val(start.format('YYYY/MM/DD'));
                 }
-                else if(label == '上周' || label == '本周' || label == '上月' || label == '本月' || label == '去年' || label == '本年' || label == '最近7天' || label == '最近30天'){
-                    $('#daterange-btn').val(start.format('YYYY/MM/DD')+'-'+end.format('YYYY/MM/DD'));
+                else if(format2.indexOf(label) > -1){
+                    $('#daterange-btn').val(start.format('YYYY/MM/DD') + '-' + end.format('YYYY/MM/DD'));
                 }
             }
         ); 
diff --git a/src/controllers/menuButton.js b/src/controllers/menuButton.js
index af19b5e..e37b712 100644
--- a/src/controllers/menuButton.js
+++ b/src/controllers/menuButton.js
@@ -2108,131 +2108,132 @@ const menuButton = {
         $("#luckysheet-icon-conditionformat").click(function(){
             let menuButtonId = $(this).attr("id") + "-menuButton";
             let $menuButton = $("#" + menuButtonId);
+
+            const conditionformat_text = locale().conditionformat;
             
             if($menuButton.length == 0){
                 let itemdata = [
-                    {"text": "突出显示单元格规则", "value": "highlightCellRule", "example": "more"},
-                    {"text": "项目选取规则", "value": "projectSelectRule", "example": "more"},
-                    {"text": "数据条", "value": "dataBar", "example": "more"},
-                    {"text": "色阶", "value": "colorGradation", "example": "more"},
-                    {"text": "图标集", "value": "icons", "example": ""},
-                    {"text": "", "value": "split", "example": ""},
-                    {"text": "新建规则", "value": "newRule", "example": ""},
-                    {"text": "清除规则", "value": "deleteRule", "example": "more"},
-                    {"text": "管理规则", "value": "administerRule", "example": ""}
+                    { "text": conditionformat_text.highlightCellRules, "value": "highlightCellRule", "example": "more" },
+                    { "text": conditionformat_text.itemSelectionRules, "value": "projectSelectRule", "example": "more" },
+                    { "text": conditionformat_text.dataBar, "value": "dataBar", "example": "more" },
+                    { "text": conditionformat_text.colorGradation, "value": "colorGradation", "example": "more" },
+                    { "text": conditionformat_text.icons, "value": "icons", "example": "" },
+                    { "text": "", "value": "split", "example": "" },
+                    { "text": conditionformat_text.newRule, "value": "newRule", "example": "" },
+                    { "text": conditionformat_text.deleteRule, "value": "deleteRule", "example": "more" },
+                    { "text": conditionformat_text.manageRules, "value": "administerRule", "example": "" }
                 ];
                 let itemset = _this.createButtonMenu(itemdata);
                 let menu = replaceHtml(_this.menu, {"id": "conditionformat", "item": itemset, "subclass": "", "sub": ""});
                 
                 //突出显示单元格规则子菜单
                 let subitemdata = [
-                    {"text": "大于", "value": "greaterThan", "example": ">"},
-                    {"text": "小于", "value": "lessThan", "example": "<"},
-                    {"text": "介于", "value": "betweenness", "example": "[]"},
-                    {"text": "等于", "value": "equal", "example": "="},
-                    {"text": "文本包含", "value": "textContains", "example": "()"},
-                    {"text": "发生日期", "value": "occurrenceDate", "example": "昨天"},
-                    {"text": "重复值", "value": "duplicateValue", "example": "##"}
+                    { "text": conditionformat_text.greaterThan, "value": "greaterThan", "example": ">" },
+                    { "text": conditionformat_text.lessThan, "value": "lessThan", "example": "<" },
+                    { "text": conditionformat_text.between, "value": "betweenness", "example": "[]" },
+                    { "text": conditionformat_text.equal, "value": "equal", "example": "=" },
+                    { "text": conditionformat_text.textContains, "value": "textContains", "example": "()" },
+                    { "text": conditionformat_text.occurrence, "value": "occurrenceDate", "example": conditionformat_text.yesterday },
+                    { "text": conditionformat_text.duplicateValue, "value": "duplicateValue", "example": "##" }
                 ];
                 let subitemset = _this.createButtonMenu(subitemdata);
                 let submenu = replaceHtml(_this.menu, {"id": "highlightCellRule", "item": subitemset, "subclass": "luckysheet-menuButton-sub"});
                 
                 //项目选取规则子菜单
                 let subitemdata2 = [
-                    {"text": "前 10 项", "value": "top10", "example": "前10项"},
-                    {"text": "前 10%", "value": "top10%", "example": "前10%"},
-                    {"text": "最后 10 项", "value": "last10", "example": "后10项"},
-                    {"text": "最后 10%", "value": "last10%", "example": "后10%"},
-                    {"text": "高于平均值", "value": "AboveAverage", "example": "高于均值"},
-                    {"text": "低于平均值", "value": "SubAverage", "example": "低于均值"}
+                    { "text": conditionformat_text.top10, "value": "top10", "example": conditionformat_text.top10 },
+                    { "text": conditionformat_text.top10_percent, "value": "top10%", "example": conditionformat_text.top10_percent },
+                    { "text": conditionformat_text.last10, "value": "last10", "example": conditionformat_text.last10 },
+                    { "text": conditionformat_text.last10_percent, "value": "last10%", "example": conditionformat_text.last10_percent },
+                    { "text": conditionformat_text.aboveAverage, "value": "AboveAverage", "example": conditionformat_text.aboveAverage },
+                    { "text": conditionformat_text.belowAverage, "value": "SubAverage", "example": conditionformat_text.belowAverage }
                 ];
                 let subitemset2 = _this.createButtonMenu(subitemdata2);
                 let submenu2 = replaceHtml(_this.menu, {"id": "projectSelectRule", "item": subitemset2, "subclass": "luckysheet-menuButton-sub"});
                 
                 //数据条子菜单
-                let submenu3 = '';
+                let submenu3 = ``;
 
                 //色阶
-                let submenu4 = '';
+                let submenu4 = ``;
 
                 //清除规则子菜单
                 let subitemdata6 = [
-                    // {"text":"清除所选单元格的规则", "value":"", "example":""},
-                    {"text":"清除整个工作表的规则", "value":"delSheet", "example":""}
+                    { "text": conditionformat_text.deleteSheetRule, "value": "delSheet", "example": "" }
                 ];
                 let subitemset6 = _this.createButtonMenu(subitemdata6);
                 let submenu6 = replaceHtml(_this.menu, {"id": "deleteRule", "item": subitemset6, "subclass":"luckysheet-menuButton-sub"});
@@ -2251,10 +2252,10 @@ const menuButton = {
                     if(itemvalue == "icons"){
                         if(Store.luckysheet_select_save.length == 0){
                             if(isEditMode()){
-                                alert("请选择应用范围");
+                                alert(conditionformat_text.pleaseSelectRange);
                             }
                             else{
-                                tooltip.info("请选择应用范围", "");
+                                tooltip.info(conditionformat_text.pleaseSelectRange, "");
                             }
                             return;
                         }
@@ -2265,10 +2266,10 @@ const menuButton = {
                     else if(itemvalue == "newRule"){
                         if(Store.luckysheet_select_save.length == 0){
                             if(isEditMode()){
-                                alert("请选择应用范围");
+                                alert(conditionformat_text.pleaseSelectRange);
                             }
                             else{
-                                tooltip.info("请选择应用范围", "");
+                                tooltip.info(conditionformat_text.pleaseSelectRange, "");
                             }
                             return;
                         }
@@ -2329,108 +2330,107 @@ const menuButton = {
 
                     if(Store.luckysheet_select_save.length == 0){
                         if(isEditMode()){
-                            alert("请选择条件格式的应用范围");
+                            alert(conditionformat_text.pleaseSelectRange);
                         }
                         else{
-                            tooltip.info("请选择条件格式的应用范围", ""); 
+                            tooltip.info(conditionformat_text.pleaseSelectRange, ""); 
                         }
                         return;
                     }
                     else{
-                        let textCellColorHtml = conditionformat.textCellColorHtml;
+                        let textCellColorHtml = conditionformat.textCellColorHtml();
 
                         let title, content;
                         switch(itemvalue){
                             case "greaterThan":
-                                title = "条件格式——大于";
-                                content = '' +
-                                                '
为大于以下值的单元格设置格式:
' +
-                                                '
' +
-                                                    '' +
-                                                    '' +
-                                                '
' +
-                                                '
设置为:
' + 
-                                                textCellColorHtml + 
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_greaterThan;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_greaterThan_title}:
+                                                
+                                                    
+                                                    
+                                                
+                                                
${conditionformat_text.setAs}:
 
+                                                ${textCellColorHtml} 
+                                            
 `;
                                 break;
                             case "lessThan":
-                                title = "条件格式——小于";
-                                content = '' +
-                                                '
为小于以下值的单元格设置格式:
' +
-                                                '
' +
-                                                    '' +
-                                                    '' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_lessThan;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_lessThan_title}:
+                                                
+                                                    
+                                                    
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break;
                             case "betweenness":
-                                title = "条件格式——介于";
-                                content = '' +
-                                                '
为介于以下值的单元格设置格式:
' +
-                                                '
' +
-                                                    '
' +
-                                                        '' +
-                                                        '' +
-                                                    '
' +
-                                                    '
到
' +
-                                                    '
' +
-                                                        '' +
-                                                        '' +
-                                                    '
' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_betweenness;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_betweenness_title}:
+                                                
+                                                    
+                                                        
+                                                        
+                                                    
+                                                    
${conditionformat_text.to}
+                                                    
+                                                        
+                                                        
+                                                    
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break;
                             case "equal":
-                                title = "条件格式——等于";
-                                content = '' +
-                                                '
为等于以下值的单元格设置格式:
' +
-                                                '
' +
-                                                    '' +
-                                                    '' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_equal;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_equal_title}:
+                                                
+                                                    
+                                                    
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break;
                             case "textContains":
-                                title = "条件格式——文本包含";
-                                content = '' +
-                                                '
为包含以下文本的单元格设置格式:
' +
-                                                '
' +
-                                                    '' +
-                                                    '' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_textContains;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_textContains_title}:
+                                                
+                                                    
+                                                    
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break; 
                             case "occurrenceDate":
-                                title = "条件格式——发生日期";
-                                content = '' +
-                                                '
为包含以下日期的单元格设置格式:
' +
-                                                '
' +
-                                                    '' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_occurrenceDate;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_occurrenceDate_title}:
+                                                
+                                                    
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break; 
                             case "duplicateValue":
-                                title = "条件格式——重复值";
-                                content = '' +
-                                                '
为包含以下类型值的单元格设置格式:
' +
-                                                '
' +
-                                                '
值' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_duplicateValue;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_duplicateValue_title}:
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break;      
                         }
 
@@ -2448,93 +2448,93 @@ const menuButton = {
 
                     if(Store.luckysheet_select_save.length == 0){
                         if(isEditMode()){
-                            alert("请选择条件格式的应用范围");
+                            alert(conditionformat_text.pleaseSelectRange);
                         }
                         else{
-                            tooltip.info("请选择条件格式的应用范围", ""); 
+                            tooltip.info(conditionformat_text.pleaseSelectRange, ""); 
                         }
                         return;
                     }
                     else{
-                        let textCellColorHtml = conditionformat.textCellColorHtml;
+                        let textCellColorHtml = conditionformat.textCellColorHtml();
 
                         let title, content;
                         switch(itemvalue){
                             case "top10":
-                                title = "条件格式——前 10 项";
-                                content = '' +
-                                                '
为值最大的那些单元格设置格式:
' +
-                                                '
' +
-                                                    '
前
' +
-                                                    '
' +
-                                                        '' +
-                                                    '
' +
-                                                    '
项
' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_top10;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_top10_title}:
+                                                
+                                                    
${conditionformat_text.top}
+                                                    
+                                                        
+                                                    
+                                                    
${conditionformat_text.oneself}
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break;
                             case "top10%":
-                                title = "条件格式——前 10%";
-                                content = '' +
-                                                '
为值最大的那些单元格设置格式:
' +
-                                                '
' +
-                                                    '
前
' +
-                                                    '
' +
-                                                        '' +
-                                                    '
' +
-                                                    '
%
' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_top10_percent;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_top10_title}:
+                                                
+                                                    
${conditionformat_text.top}
+                                                    
+                                                        
+                                                    
+                                                    
%
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break;
                             case "last10":
-                                title = "条件格式——最后 10 项";
-                                content = '' +
-                                                '
为值最小的那些单元格设置格式:
' +
-                                                '
' +
-                                                    '
最后
' +
-                                                    '
' +
-                                                        '' +
-                                                    '
' +
-                                                    '
项
' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_last10;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_last10_title}:
+                                                
+                                                    
${conditionformat_text.last}
+                                                    
+                                                        
+                                                    
+                                                    
${conditionformat_text.oneself}
+                                                
+                                                
${conditionformat_text.setAs}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break;
                             case "last10%":
-                                title = "条件格式——最后 10%";
-                                content = '' +
-                                                '
为值最小的那些单元格设置格式:
' +
-                                                '
' +
-                                                    '
最后
' +
-                                                    '
' +
-                                                        '' +
-                                                    '
' +
-                                                    '
%
' +
-                                                '
' +
-                                                '
设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_last10_percent;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_last10_title}:
+                                                
+                                                    
${conditionformat_text.last}
+                                                    
+                                                        
+                                                    
+                                                    
%
+                                                
+                                                
设置为:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break;
                             case "AboveAverage":
-                                title = "条件格式——高于平均值";
-                                content = '' +
-                                                '
为高于平均值的单元格设置格式:
' +
-                                                '
针对选定区域,设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_AboveAverage;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_AboveAverage_title}:
+                                                
${conditionformat_text.setAsByArea}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break; 
                             case "SubAverage":
-                                title = "条件格式——低于平均值";
-                                content = '' +
-                                                '
为低于平均值的单元格设置格式:
' +
-                                                '
针对选定区域,设置为:
' +
-                                                textCellColorHtml +
-                                              '
 ';
+                                title = conditionformat_text.conditionformat_SubAverage;
+                                content =  `
+                                                
${conditionformat_text.conditionformat_SubAverage_title}:
+                                                
${conditionformat_text.setAsByArea}:
+                                                ${textCellColorHtml}
+                                            
 `;
                                 break; 
                         }
 
diff --git a/src/locale/en.js b/src/locale/en.js
index b6254d8..bdb8625 100644
--- a/src/locale/en.js
+++ b/src/locale/en.js
@@ -615,46 +615,147 @@ export default {
         chooseText: 'Confirm color',
     },
     conditionformat: {
+        conditionformat_greaterThan: 'Conditionformat-GreaterThan',
+        conditionformat_greaterThan_title: 'Format cells greater than',
+        conditionformat_lessThan: 'Conditionformat-LessThan',
+        conditionformat_lessThan_title: 'Format cells smaller than',
+        conditionformat_betweenness: 'Conditionformat-Betweenness',
+        conditionformat_betweenness_title: 'Format cells with values between',
+        conditionformat_equal: 'Conditionformat-Equal',
+        conditionformat_equal_title: 'Format cells equal to',
+        conditionformat_textContains: 'Conditionformat-TextContains',
+        conditionformat_textContains_title: 'Format cells containing the following text',
+        conditionformat_occurrenceDate: 'Conditionformat-OccurrenceDate',
+        conditionformat_occurrenceDate_title: 'Format cells containing the following dates',
+        conditionformat_duplicateValue: 'Conditionformat-DuplicateValue',
+        conditionformat_duplicateValue_title: 'Format cells containing the following types of values',
+        conditionformat_top10: 'Conditionformat-Top10',
+        conditionformat_top10_percent: 'Conditionformat-Top10%',
+        conditionformat_top10_title: 'Format the cells with the highest value',
+        conditionformat_last10: 'Conditionformat-Last10',
+        conditionformat_last10_percent: 'Conditionformat-Last10%',
+        conditionformat_last10_title: 'Format the cells with the smallest value',
+        conditionformat_AboveAverage: 'Conditionformat-AboveAverage',
+        conditionformat_AboveAverage_title: 'Format cells above average',
+        conditionformat_SubAverage: 'Conditionformat-SubAverage',
+        conditionformat_SubAverage_title: 'Format cells below average',
         rule: 'Rule',
         newRule: 'New rule',
         editRule: 'Edit rule',
         deleteRule: 'Delete rule',
+        deleteCellRule: 'Delete cell rule',
+        deleteSheetRule: 'Delete sheet rule',
+        manageRules: 'Management rules',
         showRules: 'Show its formatting rules',
+        highlightCellRules: 'Highlight cell rules',
+        itemSelectionRules: 'Item selection rules',
         manageRules: 'Conditional Formatting Rule Manager',
         format: 'Format',
+        setFormat: 'Set format',
+        setAs: 'Set as',
+        setAsByArea: 'For the selected area, set to',
         applyRange: 'Apply range',
         selectRange: 'Click to select application range',
+        selectRange_percent: 'Percentage of selected range',
+        selectRange_average: 'Average value of selected range',
+        selectRange_value: 'Value in the selected range',
+        pleaseSelectRange: 'Please select application range',
+        selectDataRange: 'Click to select data range',
+        selectCell: 'select cell',
+        pleaseSelectCell: 'Please select cell',
+        pleaseSelectADate: 'Please select a date',
+        pleaseEnterInteger: 'Please enter an integer between 1 and 1000',
+        onlySingleCell: 'Only a single cell can be referenced',
+        conditionValueCanOnly: 'The condition value can only be a number or a single cell',
         ruleTypeItem1: 'Format all cells based on their respective values',
         ruleTypeItem2: 'Only format cells that contain',
+        ruleTypeItem2_title: 'Only for cells that meet the following conditions',
         ruleTypeItem3: 'Format only the top or bottom numbers',
+        ruleTypeItem3_title: 'Is the value in the following ranking',
         ruleTypeItem4: 'Format only values above or below the average',
+        ruleTypeItem4_title: 'Is a value that satisfies the following conditions',
         ruleTypeItem5: 'Format only unique or repeated values',
         textColor: 'Text color',
         cellColor: 'Cell color',
         confirm: 'Confirm',
+        confirmColor: 'Confirm color',
         cancel: 'Cancel',
         close: 'Close',
+        clearColorSelect: 'Clear color select',
         sheet: 'Sheet',
         currentSheet: 'CurrentSheet',
         dataBar: 'dataBar',
         dataBarColor: 'dataBar color',
+        gradientDataBar_1: 'Blue-white gradient data bar',
+        gradientDataBar_2: 'Green-white gradient data bar',
+        gradientDataBar_3: 'Red-white gradient data bar',
+        gradientDataBar_4: 'Orange-white gradient stripes',
+        gradientDataBar_5: 'Light blue-white gradient stripes',
+        gradientDataBar_6: 'Purple-white gradient data bar',
+        solidColorDataBar_1: 'Blue data bar',
+        solidColorDataBar_2: 'Green data bar',
+        solidColorDataBar_3: 'Red data bar',
+        solidColorDataBar_4: 'Orange data bar',
+        solidColorDataBar_5: 'Light blue data bar',
+        solidColorDataBar_6: 'Purple data bar',
         colorGradation: 'colorGradation',
+        colorGradation_1: 'Green-yellow-red color gradation',
+        colorGradation_2: 'Red-yellow-green color gradation',
+        colorGradation_3: 'Green-white-red color gradation',
+        colorGradation_4: 'Red-white-green color gradation',
+        colorGradation_5: 'Blue-white-red color gradation',
+        colorGradation_6: 'Red-white-blue color gradation',
+        colorGradation_7: 'White-red color gradation',
+        colorGradation_8: 'Red-white color gradation',
+        colorGradation_9: 'Green-white color gradation',
+        colorGradation_10: 'White-green color gradation',
+        colorGradation_11: 'Green-yellow color gradation',
+        colorGradation_12: 'Yellow-green color gradation',
         icons: 'icons',
+        pleaseSelectIcon: 'Please click to select a group of icons:',
         cellValue: 'Cell value',
+        specificText: 'Specific text',
+        occurrence: 'Date of occurrence',
+        greaterThan: 'Greater than',
+        lessThan: 'Less than',
         between: 'Between',
+        equal: 'Equal',
         in: 'In',
         between2: '',
         contain: 'Contain',
+        textContains: 'Text contains',
         duplicateValue: 'Duplicate value',
         uniqueValue: 'Unique value',
         top: 'Top',
+        top10: 'Top10',
+        top10_percent: 'Top10%',
         last: 'Last',
+        last10: 'Last10',
+        last10_percent: 'Last10%',
         oneself: '',
+        above: 'Above',
         aboveAverage: 'Above average',
+        below: 'Below',
         belowAverage: 'Below average',
+        all: 'All',
+        yesterday: 'Yesterday',
+        today: 'Today',
+        tomorrow: 'Tomorrow',
+        lastWeek: 'Last week',
+        thisWeek: 'This week',
+        lastMonth: 'Last month',
+        thisMonth: 'This month',
+        lastYear: 'Last year',
+        thisYear: 'This year',
+        last7days: 'Last 7 days',
+        last30days: 'Last 30 days',
+        next7days: 'Next 7 days',
+        next30days: 'Next 30 days',
+        next60days: 'Next 60 days',
         chooseRuleType: 'Choose rule type',
         editRuleDescription: 'Edit rule description',
         newFormatRule: 'New format rule',
+        editFormatRule: 'Edit format rule',
         formatStyle: 'Format style',
         fillType: 'Fill type',
         color: 'Color',
@@ -667,14 +768,29 @@ export default {
         maxValue: 'Max value',
         medianValue: 'Median value',
         minValue: 'Min value',
+        direction: 'Direction',
         threeWayArrow: 'Three-way arrow',
         fourWayArrow: 'Four-way arrow',
         fiveWayArrow: 'Five-way arrow',
         threeTriangles: 'Three triangles',
+        shape: 'Shape',
         threeColorTrafficLight: 'Three-color traffic light',
         fourColorTrafficLight: 'Four-color traffic light',
+        threeSigns: 'Three signs',
+        greenRedBlackGradient: 'Green-red-black gradient',
         rimless: 'Rimless',
         bordered: 'Bordered',
+        mark: 'Mark',
+        threeSymbols: 'Three symbols',
+        tricolorFlag: 'Tricolor flag',
+        circled: 'Circled',
+        noCircle: 'No circle',
+        grade: 'Grade',
+        grade4: '4 Grade',
+        grade5: '5 Grade',
+        threeStars: '3 Stars',
+        fiveQuadrantDiagram: 'Five-quadrant diagram',
+        fiveBoxes: '5 Boxes',
     },
     formula:{
         sum:"Sum",
diff --git a/src/locale/zh.js b/src/locale/zh.js
index 2872c76..ec159ec 100644
--- a/src/locale/zh.js
+++ b/src/locale/zh.js
@@ -624,46 +624,148 @@ export default {
         chooseText: '确定颜色',
     },
     conditionformat: {
+        conditionformat_greaterThan: '条件格式——大于',
+        conditionformat_greaterThan_title: '为大于以下值的单元格设置格式',
+        conditionformat_lessThan: '条件格式——小于',
+        conditionformat_lessThan_title: '为小于以下值的单元格设置格式',
+        conditionformat_betweenness: '条件格式——介于',
+        conditionformat_betweenness_title: '为介于以下值的单元格设置格式',
+        conditionformat_equal: '条件格式——等于',
+        conditionformat_equal_title: '为等于以下值的单元格设置格式',
+        conditionformat_textContains: '条件格式——文本包含',
+        conditionformat_textContains_title: '为包含以下文本的单元格设置格式',
+        conditionformat_occurrenceDate: '条件格式——发生日期',
+        conditionformat_occurrenceDate_title: '为包含以下日期的单元格设置格式',
+        conditionformat_duplicateValue: '条件格式——重复值',
+        conditionformat_duplicateValue_title: '为包含以下类型值的单元格设置格式',
+        conditionformat_top10: '条件格式——前 10 项',
+        conditionformat_top10_percent: '条件格式——前 10%',
+        conditionformat_top10_title: '为值最大的那些单元格设置格式',
+        conditionformat_last10: '条件格式——最后 10 项',
+        conditionformat_last10_percent: '条件格式——最后 10%',
+        conditionformat_last10_title: '为值最小的那些单元格设置格式',
+        conditionformat_AboveAverage: '条件格式——高于平均值',
+        conditionformat_AboveAverage_title: '为高于平均值的单元格设置格式',
+        conditionformat_SubAverage: '条件格式——低于平均值',
+        conditionformat_SubAverage_title: '为低于平均值的单元格设置格式',
         rule: '规则',
         newRule: '新建规则',
         editRule: '编辑规则',
         deleteRule: '删除规则',
+        deleteCellRule: '清除所选单元格的规则',
+        deleteSheetRule: '清除整个工作表的规则',
+        manageRules: '管理规则',
         showRules: '显示其格式规则',
+        highlightCellRules: '突出显示单元格规则',
+        itemSelectionRules: '项目选取规则',
         manageRules: '条件格式规则管理器',
         format: '格式',
+        setFormat: '设置格式',
+        setAs: '设置为',
+        setAsByArea: '针对选定区域,设置为',
         applyRange: '应用范围',
         selectRange: '点击选择应用范围',
+        selectRange_percent: '所选范围的百分比',
+        selectRange_average: '选定范围的平均值',
+        selectRange_value: '选定范围中的数值',
+        pleaseSelectRange: '请选择应用范围',
+        selectDataRange: '点击选择数据范围',
+        selectCell: '选择单元格',
+        pleaseSelectCell: '请选择单元格',
+        pleaseSelectADate: '请选择日期',
+        pleaseEnterInteger: '请输入一个介于 1 和 1000 之间的整数',
+        onlySingleCell: '只能对单个单元格进行引用',
+        conditionValueCanOnly: '条件值只能是数字或者单个单元格',
         ruleTypeItem1: '基于各自值设置所有单元格的格式',
         ruleTypeItem2: '只为包含以下内容的单元格设置格式',
+        ruleTypeItem2_title: '只为满足以下条件的单元格',
         ruleTypeItem3: '仅对排名靠前或靠后的数值设置格式',
+        ruleTypeItem3_title: '为以下排名内的值',
         ruleTypeItem4: '仅对高于或低于平均值的数值设置格式',
+        ruleTypeItem4_title: '为满足以下条件的值',
         ruleTypeItem5: '仅对唯一值或重复值设置格式',
         textColor: '文本颜色',
         cellColor: '单元格颜色',
         confirm: '确定',
+        confirmColor: '确定颜色',
         cancel: '取消',
         close: '关闭',
+        clearColorSelect: '清除颜色选择',
         sheet: '表',
         currentSheet: '当前工作表',
         dataBar: '数据条',
         dataBarColor: '数据条颜色',
+        gradientDataBar_1: '蓝-白渐变数据条',
+        gradientDataBar_2: '绿-白渐变数据条',
+        gradientDataBar_3: '红-白渐变数据条',
+        gradientDataBar_4: '橙-白渐变数据条',
+        gradientDataBar_5: '浅蓝-白渐变数据条',
+        gradientDataBar_6: '紫-白渐变数据条',
+        solidColorDataBar_1: '蓝色数据条',
+        solidColorDataBar_2: '绿色数据条',
+        solidColorDataBar_3: '红色数据条',
+        solidColorDataBar_4: '橙色数据条',
+        solidColorDataBar_5: '浅蓝色数据条',
+        solidColorDataBar_6: '紫色数据条',
         colorGradation: '色阶',
+        colorGradation_1: '绿-黄-红色阶',
+        colorGradation_2: '红-黄-绿色阶',
+        colorGradation_3: '绿-白-红色阶',
+        colorGradation_4: '红-白-绿色阶',
+        colorGradation_5: '蓝-白-红色阶',
+        colorGradation_6: '红-白-蓝色阶',
+        colorGradation_7: '白-红色阶',
+        colorGradation_8: '红-白色阶',
+        colorGradation_9: '绿-白色阶',
+        colorGradation_10: '白-绿色阶',
+        colorGradation_11: '绿-黄色阶',
+        colorGradation_12: '黄-绿色阶',
         icons: '图标集',
+        pleaseSelectIcon: '请点击选择一组图标:',
         cellValue: '单元格值',
+        specificText: '特定文本',
+        occurrence: '发生日期',
+        greaterThan: '大于',
+        lessThan: '小于',
         between: '介于',
+        equal: '等于',
         in: '和',
+        to: '到',
         between2: '之间',
         contain: '包含',
+        textContains: '文本包含',
         duplicateValue: '重复值',
         uniqueValue: '唯一值',
         top: '前',
+        top10: '前 10 项',
+        top10_percent: '前 10%',
         last: '后',
+        last10: '后 10 项',
+        last10_percent: '后 10%',
         oneself: '个',
+        above: '高于',
         aboveAverage: '高于平均值',
+        below: '低于',
         belowAverage: '低于平均值',
+        all: '全部',
+        yesterday: '昨天',
+        today: '今天',
+        tomorrow: '明天',
+        lastWeek: '上周',
+        thisWeek: '本周',
+        lastMonth: '上月',
+        thisMonth: '本月',
+        lastYear: '去年',
+        thisYear: '本年',
+        last7days: '最近7天',
+        last30days: '最近30天',
+        next7days: '未来7天',
+        next30days: '未来30天',
+        next60days: '未来60天',
         chooseRuleType: '选择规则类型',
         editRuleDescription: '编辑规则说明',
         newFormatRule: '新建格式规则',
+        editFormatRule: '编辑格式规则',
         formatStyle: '格式样式',
         fillType: '填充类型',
         color: '颜色',
@@ -676,14 +778,29 @@ export default {
         maxValue: '最大值',
         medianValue: '中间值',
         minValue: '最小值',
+        direction: '方向',
         threeWayArrow: '三向箭头',
         fourWayArrow: '四向箭头',
         fiveWayArrow: '五向箭头',
         threeTriangles: '3个三角形',
+        shape: '形状',
         threeColorTrafficLight: '三色交通灯',
         fourColorTrafficLight: '四色交通灯',
+        threeSigns: '三标志',
+        greenRedBlackGradient: '绿-红-黑渐变',
         rimless: '无边框',
         bordered: '有边框',
+        mark: '标记',
+        threeSymbols: '三个符号',
+        tricolorFlag: '三色旗',
+        circled: '有圆圈',
+        noCircle: '无圆圈',
+        grade: '等级',
+        grade4: '四等级',
+        grade5: '五等级',
+        threeStars: '3个星形',
+        fiveQuadrantDiagram: '五象限图',
+        fiveBoxes: '5个框',
     },
     formula:{
         sum:"求和",