From a581cd7c512bd895a0d867c64e18fcf2ae832591 Mon Sep 17 00:00:00 2001 From: zguiy <1415466602@qq.com> Date: Sat, 5 Jul 2025 20:13:00 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/composables/useTheme.ts | 2 +- src/config/i18n/en.ts | 181 ++++++++++++++++++++++++++++++++++++ src/config/i18n/zh.ts | 118 ++++++++++++++++++++--- src/config/tools.ts | 18 ++-- 4 files changed, 291 insertions(+), 28 deletions(-) diff --git a/src/composables/useTheme.ts b/src/composables/useTheme.ts index 439228a..129436d 100644 --- a/src/composables/useTheme.ts +++ b/src/composables/useTheme.ts @@ -3,7 +3,7 @@ import { ref, watch } from 'vue' type Theme = 'light' | 'dark' // 全局主题状态 -const currentTheme = ref('dark') +const currentTheme = ref('light') export const useTheme = () => { // 切换主题 diff --git a/src/config/i18n/en.ts b/src/config/i18n/en.ts index c9ac990..fe4f32a 100644 --- a/src/config/i18n/en.ts +++ b/src/config/i18n/en.ts @@ -125,6 +125,36 @@ export default { } } }, + ip_lookup: { + title: 'IP Lookup', + description: 'IP address geolocation query and type analysis tool', + ip_address: 'IP Address', + lookup: 'Lookup', + query: 'Query', + get_my_ip: 'Get My IP', + clear: 'Clear', + ip_input: 'IP Input', + placeholder: 'Please enter IP address...', + common_ips: 'Common IPs', + querying: 'Querying...', + ip_info: 'IP Information', + location: 'Location', + isp: 'ISP', + organization: 'Organization', + country: 'Country', + region: 'Region', + city: 'City', + timezone: 'Timezone', + coordinates: 'Coordinates', + ip_type: 'IP Type', + public_ip: 'Public IP', + private_ip: 'Private IP', + current_ip: 'Current IP', + ip_analysis: 'IP Analysis', + format: 'Format', + access_type: 'Access Type', + class: 'IP Class' + }, seal_generator: { title: 'Seal Generator', description: 'Electronic seal creation tool, supports company and personal seals', @@ -164,6 +194,157 @@ export default { personal_seal_features: 'Personal Seal Features', important_notice: 'Important Notice', legal_notice: 'The seals generated by this tool are for learning and testing purposes only. Do not use for illegal purposes. Official company seals need to be registered with relevant authorities.' + }, + text_counter: { + title: 'Text Counter', + description: 'Word count, character count, line count and other text analysis tools', + clear: 'Clear', + paste: 'Paste', + sample: 'Sample', + text_input: 'Text Input', + placeholder: 'Please enter or paste text to analyze...', + basic_stats: 'Basic Statistics', + characters: 'Characters', + characters_no_spaces: 'Characters (No Spaces)', + words: 'Words', + lines: 'Lines', + paragraphs: 'Paragraphs', + sentences: 'Sentences', + character_types: 'Character Types', + letters: 'Letters', + numbers: 'Numbers', + spaces: 'Spaces', + punctuation: 'Punctuation', + reading_time: 'Reading Time', + slow_reading: 'Slow Reading', + normal_reading: 'Normal Reading', + fast_reading: 'Fast Reading', + top_words: 'Top Words', + character_count: 'Character Count', + word_count: 'Word Count', + line_count: 'Line Count', + paragraph_count: 'Paragraph Count', + sentence_count: 'Sentence Count', + reading_speed: 'Reading Speed', + fast: 'Fast', + normal: 'Normal', + slow: 'Slow', + most_used_words: 'Most Used Words' + }, + image_compressor: { + title: 'Image Compressor', + description: 'Image compression and quality adjustment tool', + compress: 'Compress', + download: 'Download', + reset: 'Reset', + upload_image: 'Upload Image', + click_or_drag: 'Click or drag to upload image', + compression_settings: 'Compression Settings', + quality: 'Quality', + max_width: 'Max Width', + max_height: 'Max Height', + keep_aspect_ratio: 'Keep Aspect Ratio', + output_format: 'Output Format', + original_info: 'Original Info', + size: 'File Size', + dimensions: 'Dimensions', + format: 'Format', + original_preview: 'Original Preview', + compressed_preview: 'Compressed Preview', + compressed_size: 'Compressed Size', + compression_ratio: 'Compression Ratio', + size_reduction: 'Size Reduction', + compressing: 'Compressing...', + width: 'Width', + height: 'Height', + original_size: 'Original Size', + maintain_aspect_ratio: 'Maintain Aspect Ratio', + download_result: 'Download Result' + }, + qrcode_generator: { + title: 'QR Code Generator', + description: 'Text to QR code generation tool with customizable styles', + generate: 'Generate', + download: 'Download', + clear: 'Clear', + text_input: 'Text Input', + placeholder: 'Please enter content to generate QR code...', + settings: 'Settings', + size: 'Size', + qr_size: 'QR Code Size', + error_level: 'Error Level', + foreground_color: 'Foreground Color', + background_color: 'Background Color', + preview: 'Preview', + qr_code: 'QR Code', + generating: 'Generating...', + no_preview: 'Please enter content and generate QR code', + download_qr: 'Download QR Code', + qr_preview: 'QR Code Preview' + }, + code_formatter: { + title: 'Code Formatter', + description: 'Code beautification, formatting and minification tool', + format: 'Format', + minify: 'Minify', + copy: 'Copy', + clear: 'Clear', + language: 'Language', + indent_size: 'Indent Size', + line_width: 'Line Width', + input: 'Input', + output: 'Output', + output_placeholder: 'Formatted result will be displayed here...', + copy_result: 'Copy Result', + clear_all: 'Clear All', + input_placeholder: 'Please enter code...', + line_count: 'Line Count', + char_count: 'Character Count' + }, + base64_to_image: { + title: 'Base64 to Image', + description: 'Base64 and image bidirectional conversion tool', + base64_to_image: 'Base64 to Image', + download_image: 'Download Image', + clear: 'Clear', + base64_input: 'Base64 Input', + base64_placeholder: 'Please enter Base64 encoding...', + image_to_base64: 'Image to Base64', + click_or_drag: 'Click or drag to upload image', + image_preview: 'Image Preview', + preview_image: 'Preview Image', + converting: 'Converting...', + no_preview: 'Please enter Base64 or upload image', + base64_output: 'Base64 Output', + upload_image: 'Upload Image', + image_info: 'Image Info', + copy_base64: 'Copy Base64' + }, + yml_properties_converter: { + title: 'YML/Properties Converter', + description: 'YML and Properties configuration file format converter', + yml_to_properties: 'YML to Properties', + properties_to_yml: 'Properties to YML', + yml_to_json: 'YML to JSON', + json_to_yml: 'JSON to YML', + clear: 'Clear', + input: 'Input', + output: 'Output', + paste: 'Paste', + copy: 'Copy', + input_format: 'Input Format', + output_format: 'Output Format', + input_placeholder_yml: 'Enter YAML content...', + input_placeholder_properties: 'Enter Properties content...', + input_placeholder_json: 'Enter JSON content...', + output_placeholder: 'Conversion result will be displayed here...', + use_example: 'Use This Example', + format_description: 'Format Description', + yml_example: 'YAML Example', + properties_example: 'Properties Example', + json_example: 'JSON Example', + convert: 'Convert', + conversion_result: 'Conversion Result' } } } \ No newline at end of file diff --git a/src/config/i18n/zh.ts b/src/config/i18n/zh.ts index 4f8dea5..494577c 100644 --- a/src/config/i18n/zh.ts +++ b/src/config/i18n/zh.ts @@ -264,14 +264,19 @@ export default { code_formatter: { title: '代码格式化', description: '代码美化、格式化、压缩工具', - language: '语言', format: '格式化', minify: '压缩', + copy: '复制', + clear: '清除', + language: '语言', + indent_size: '缩进大小', + line_width: '行宽', + input: '输入', + output: '输出', + output_placeholder: '格式化结果将显示在这里...', copy_result: '复制结果', clear_all: '清除全部', input_placeholder: '请输入代码...', - output_placeholder: '格式化结果将显示在这里...', - indent_size: '缩进大小', line_count: '行数', char_count: '字符数' }, @@ -342,16 +347,30 @@ export default { description: 'IP地址归属地查询、类型分析工具', ip_address: 'IP地址', lookup: '查询', + query: '查询', + get_my_ip: '获取我的IP', + clear: '清除', + ip_input: 'IP输入', + placeholder: '请输入IP地址...', + common_ips: '常用IP', + querying: '查询中...', + ip_info: 'IP信息', location: '位置信息', isp: '运营商', + organization: '组织', country: '国家', region: '省份', city: '城市', timezone: '时区', + coordinates: '坐标', ip_type: 'IP类型', public_ip: '公网IP', private_ip: '私网IP', - current_ip: '当前IP' + current_ip: '当前IP', + ip_analysis: 'IP分析', + format: '格式', + access_type: '访问类型', + class: 'IP类别' }, date_calculator: { title: '日期计算', @@ -383,13 +402,33 @@ export default { text_counter: { title: '文本统计', description: '字数、词数、行数等统计分析工具', + clear: '清除', + paste: '粘贴', + sample: '示例', text_input: '文本输入', + placeholder: '请输入或粘贴需要统计的文本...', + basic_stats: '基础统计', + characters: '字符数', + characters_no_spaces: '字符数(不含空格)', + words: '词数', + lines: '行数', + paragraphs: '段落数', + sentences: '句子数', + character_types: '字符类型', + letters: '字母', + numbers: '数字', + spaces: '空格', + punctuation: '标点符号', + reading_time: '阅读时间', + slow_reading: '慢速阅读', + normal_reading: '正常阅读', + fast_reading: '快速阅读', + top_words: '最常用词汇', character_count: '字符数', word_count: '词数', line_count: '行数', paragraph_count: '段落数', sentence_count: '句子数', - reading_time: '阅读时间', reading_speed: '阅读速度', fast: '快速', normal: '正常', @@ -431,27 +470,51 @@ export default { image_compressor: { title: '图片压缩', description: '图片压缩优化、质量调整工具', - upload_image: '上传图片', compress: '压缩', + download: '下载', + reset: '重置', + upload_image: '上传图片', + click_or_drag: '点击或拖拽上传图片', + compression_settings: '压缩设置', quality: '质量', - width: '宽度', - height: '高度', + max_width: '最大宽度', + max_height: '最大高度', + keep_aspect_ratio: '保持宽高比', + output_format: '输出格式', + original_info: '原图信息', + size: '文件大小', + dimensions: '尺寸', format: '格式', - original_size: '原始大小', + original_preview: '原图预览', + compressed_preview: '压缩预览', compressed_size: '压缩后大小', compression_ratio: '压缩比', + size_reduction: '减少大小', + compressing: '压缩中...', + width: '宽度', + height: '高度', + original_size: '原始大小', maintain_aspect_ratio: '保持宽高比', download_result: '下载结果' }, qrcode_generator: { title: '二维码生成', description: '文本转二维码、自定义样式工具', - text_input: '文本输入', generate: '生成', + download: '下载', + clear: '清除', + text_input: '文本输入', + placeholder: '请输入要生成二维码的内容...', + settings: '设置选项', + size: '尺寸', qr_size: '二维码大小', error_level: '容错级别', foreground_color: '前景色', background_color: '背景色', + preview: '预览', + qr_code: '二维码', + generating: '生成中...', + no_preview: '请输入内容并生成二维码', download_qr: '下载二维码', qr_preview: '二维码预览' }, @@ -488,6 +551,24 @@ export default { description: 'YML与Properties配置文件格式互转', yml_to_properties: 'YML转Properties', properties_to_yml: 'Properties转YML', + yml_to_json: 'YML转JSON', + json_to_yml: 'JSON转YML', + clear: '清空', + input: '输入', + output: '输出', + paste: '粘贴', + copy: '复制', + input_format: '输入格式', + output_format: '输出格式', + input_placeholder_yml: '请输入YAML内容...', + input_placeholder_properties: '请输入Properties内容...', + input_placeholder_json: '请输入JSON内容...', + output_placeholder: '转换结果将显示在这里...', + use_example: '使用此示例', + format_description: '格式说明', + yml_example: 'YAML 示例', + properties_example: 'Properties 示例', + json_example: 'JSON 示例', convert: '转换', yml_input: 'YML输入', properties_input: 'Properties输入', @@ -496,13 +577,20 @@ export default { base64_to_image: { title: 'Base64转图片', description: 'Base64与图片双向转换工具', - image_to_base64: '图片转Base64', base64_to_image: 'Base64转图片', - upload_image: '上传图片', - base64_input: 'Base64输入', - image_preview: '图片预览', - image_info: '图片信息', download_image: '下载图片', + clear: '清除', + base64_input: 'Base64输入', + base64_placeholder: '请输入Base64编码...', + image_to_base64: '图片转Base64', + click_or_drag: '点击或拖拽上传图片', + image_preview: '图片预览', + preview_image: '预览图片', + converting: '转换中...', + no_preview: '请输入Base64或上传图片', + base64_output: 'Base64输出', + upload_image: '上传图片', + image_info: '图片信息', copy_base64: '复制Base64' }, image_watermark: { diff --git a/src/config/tools.ts b/src/config/tools.ts index ce4bf16..64e312c 100644 --- a/src/config/tools.ts +++ b/src/config/tools.ts @@ -8,12 +8,12 @@ import type { Tool } from '@/types/tools' // 定义工具列表 const tools: Tool[] = [ - { - code: 'json_formatter', - icon: faCode, - category: ['common', 'json'], - keywords: ['json', 'json格式化', '格式化', '美化', '压缩', '校验', 'formatter', 'validator', 'gshjson', 'gshjson', 'jsonxg', 'jxg'] - }, + // { + // code: 'json_formatter', + // icon: faCode, + // category: ['common', 'json'], + // keywords: ['json', 'json格式化', '格式化', '美化', '压缩', '校验', 'formatter', 'validator', 'gshjson', 'gshjson', 'jsonxg', 'jxg'] + // }, { code: 'http_tester', icon: faGlobe, @@ -170,12 +170,6 @@ const tools: Tool[] = [ category: ['image'], keywords: ['图标', 'ico', '图片转ico', 'icon', '图标生成', '图标转换', 'favicon', '网站图标', 'tubiao', 'tb', 'zhuanicon', 'icon转换', 'icon生成'] }, - { - code: 'cron_generator', - icon: faCalendarAlt, - category: ['datetime'], - keywords: ['cron', 'cron表达式', '定时任务', '调度', '表达式生成', '执行时间', 'crontab', 'quartz', 'schedule', 'dingshi', 'dingshibiaodashi', 'dsrw', 'bds', 'cronbds'] - }, { code: 'chrome_bookmark_recovery', icon: faBookmark, -- 2.49.0