{"_id":"vue-i18n-generator","_rev":"74-ffcd2bd3db225d1369f30dfb637c5171","name":"vue-i18n-generator","dist-tags":{"latest":"2.2.0"},"versions":{"0.0.1":{"name":"vue-i18n-generator","version":"0.0.1","keywords":["vue-i18n-generator","vue-i18n","vue"],"author":{"name":"evan.lin"},"license":"ISC","_id":"vue-i18n-generator@0.0.1","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translater":"main/index.js"},"dist":{"shasum":"bc84f6b626d2cb52104a055db7a8a3318fab6100","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.0.1.tgz","fileCount":10,"integrity":"sha512-xq51YCnrxdMqcOnY0qtC8/Fh085gtEy3tkZ/Pf6kGwNkpqZCydBjnQLGl3u9YM/5wYItyiOslANBgJ5ePQPNfw==","signatures":[{"sig":"MEQCIAuorZSAHOZGVjhJKg5xRi8ih72m1WGyRPEc5rnnFQXgAiAD6FObEOKyrL0IgpU2kEebweuAoOPYMFenovdjtIu4Tw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67364},"main":"main/index.js","gitHead":"24eecf26d0e95f1ab76dd4caf0fc27524ffe173c","private":false,"scripts":{"dev":"node lib/index.js dev --dir example -o example/locales/locale.json -c custom -l en --vue2","test":"node lib/index.js test --dir example -o example/locales/locale.json -c custom -l en --vue2","build":"rimraf main && javascript-obfuscator lib --output main"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.0.1_1761119420795_0.08770511195726316","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"vue-i18n-generator","version":"0.1.0","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.1.0","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"50e50774e0060c960b5b964c75f26e1e29a41bc7","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.1.0.tgz","fileCount":11,"integrity":"sha512-a/nwhNEoiQmZQdQfLLyrdKi7WEvlXzlFbACaB7kKPYwfPEp/V7irU3R1reS8eTmCzzj/fkoBMmraGd8GwfvG/A==","signatures":[{"sig":"MEUCIQC2+l+dJHmUAW42DzgWQxq/fTtpZfpZXxGV2mskDpH+uwIgNPuaXLpY33viYFnUAvG6ySrm3JdFuqjyjLjJ7DaTrjA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48754},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"524e24546dab4123affe717d7ac2e6a6d7f03321","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js dev -d lib/example -l zh-cn en --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"22.14.0","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.1.0_1761227836827_0.8523521756725327","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"vue-i18n-generator","version":"0.1.1","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.1.1","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"a097827f34ec0c25cba230988487d4f41095815c","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.1.1.tgz","fileCount":11,"integrity":"sha512-Q2PXOjMtwpVOhQpkc/NCrwsom2MDRkT1sVJGMMpm3XQbyo2/ZgGllKZygGHlkrtGZxKjRLcvYMvS3a4Ltf0r6Q==","signatures":[{"sig":"MEUCIQCS9InHvGI7yN73XPQmUJo2HasrzuF4/rYWbOPONIHAgAIgOIEOjcPNAU4rWn9WZNdLKTdzrvVX+CwoTTfUuvo6l0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":48692},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"99c0d6581053264f4b91a1760e294b6a43c376fb","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js dev -d lib/example -l zh-cn en --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"22.14.0","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.1.1_1761230470924_0.677837609841996","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"vue-i18n-generator","version":"0.2.0","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.2.0","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"f25f22627c186dad52169529efc432adc4910233","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.2.0.tgz","fileCount":11,"integrity":"sha512-WCOC9fNF5mzyuH+uXrn2Wb/FgH3g7gKs3VPeZppQUAIrkYE7sRX9bL/Q8NJ1cHwMcHaV5DO0H1rmNXLzbOe1PA==","signatures":[{"sig":"MEQCIEbkdWbNi5x9BnBawimCXdBcOVWRQSYrIOmLMvuv9aX/AiAOr6ezlPsXOK0ovEkvCJ8NB19vMzMI5alBGOhYP3RowA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":49802},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"1ac7e75cf009f2044ec8596273c0c6057f9ba580","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js dev -d lib/example -l zh-cn en --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.3.0"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.2.0_1761630664961_0.21397605919960605","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"vue-i18n-generator","version":"0.2.3","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.2.3","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"72d3152174e852fe5c6a07f938d84f384599ec5b","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.2.3.tgz","fileCount":12,"integrity":"sha512-v9uu6AjVXrsW8zDjKEBh5A0P/a9X4WQOjKMtB/xu1eEfy2wSH5f7ijyKn74zSpXi4W9nBHeEq/+rq2U11BEqwQ==","signatures":[{"sig":"MEUCIQCWyI6AJVfMpSs4yQfSjkWvyxR798SexQ8tnpjktgvVKgIgEGmI931+CAhCs6JemoTeymQPO81a7MLWG0FmBd81upk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":50678},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"eb716b0478e679520292fb05fd8de838c1935ac8","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js dev -d lib/example -l zh-cn en --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"22.14.0","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.2.3_1762179687579_0.8315546778862166","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"vue-i18n-generator","version":"0.3.3","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.3.3","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"89a9979453b4af3697cc9b932c26c49587c47ef4","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.3.3.tgz","fileCount":20,"integrity":"sha512-V1n7c/rjOoOinOk7Q0ZhMI+TIqZAX5kdfmvPMQUQ3pXny8Y66cPaC4Ns6vuKu7clT0NAf+YxMXmyUWG3s/OoYQ==","signatures":[{"sig":"MEUCIB0Tzu24cVP3Tm9bwFF64r0y/Jbk9Pn1a7NajojZ+k24AiEAgdpd23X4rd7edBKlc06PrqEK0GOMcv34pyhshhPg9m0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53054},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"b57822f688c048f7d81b64104480eec0e5893d0b","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -l en --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.3.3_1762334859282_0.45701522100894887","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"vue-i18n-generator","version":"0.5.1","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.1","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"b2f351798ec3c69e467ae8ab932c4ce8ed8a6e6e","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.1.tgz","fileCount":18,"integrity":"sha512-4mHbPTvOuatIj+u7dQR3zHvnGxpgyUSqR1zT76trleMpF/jbLsEsFMhFotDR2fCUdIG8zds45dlvFlpQ+1OMmg==","signatures":[{"sig":"MEYCIQC0m43xRgv5IxF9STQQ1rpNjc5D1omiAZDqx/xcyxfn+QIhAKenMsodUnHjejx5N38GcOsqczNuAeKpkbSMz+SDXR7P","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65268},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"9281bd8aa5b59bbb399f5e2159c3f55b9bc242e9","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -l en -t en --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.1_1762480943624_0.4535315424900843","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"vue-i18n-generator","version":"0.5.3","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.3","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"aacc1543ce64894424a95f51f85c56285633f486","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.3.tgz","fileCount":18,"integrity":"sha512-dEtDdtWvgFvAYdd9mUdT/bNDm4HjOYYdddSG3KBdfHmibRXIn7yfWYpSxn0aqtFdBujOouUu16ZRZJgsOjwH9Q==","signatures":[{"sig":"MEYCIQDrsV2FFWBspM5x2bTFfUqvy0Jj/pfMIr5NT95W/77/FwIhALchIqJDPJScyigqy+IARH0bv7segfFiEyWB4UP8zHi0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64860},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"18ec908706499e83642eb5464695d8c498bf96e0","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -l en -t en --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.3_1764917567613_0.535088116806453","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"vue-i18n-generator","version":"0.5.4","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.4","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"adc83a32fe585a0d9e64c0b546f6f4f119bd9141","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.4.tgz","fileCount":18,"integrity":"sha512-L9OeDkJMOEyPWppMb7cC+wAegrIc2X0dpYzDk5CdPhG4XXZL1hX/pgIvZOt/dQvo5ZP2EiGTDrO64rZX1NmDSw==","signatures":[{"sig":"MEUCIAUEWu5dqlRG9+6b5j9KuXUd3b4oaPxD2IoKyA5BWZ3AAiEA+xtyeOFkeSP9Ivv9HSNi5nldv/Wt0wMfcVJX/gVL9lQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64355},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"3a9d1fe8e09d41c685bea0dc9f5d78687596bca4","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -l en -t en -c google --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.4_1765165811739_0.7474341332215833","host":"s3://npm-registry-packages-npm-production"}},"0.5.5":{"name":"vue-i18n-generator","version":"0.5.5","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.5","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"b138ecc80415fd094a0ce295b0f1dd3714837294","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.5.tgz","fileCount":18,"integrity":"sha512-FRhZ15DDH1EknmyA0zd/82Qa1cWPqL10M6CpZLkK21sXWIsjSdO0EiTfXKioQHgvOXfKhtnZcVucWFwCaHaYzg==","signatures":[{"sig":"MEUCIQC4ZQBlMPnQYlGXRw+/bK7BPthxBfaysQnEIqTOqxcWxgIgZt8gYGfdHAHSPsFwl7iYnhUgymBsubMNOgcydRYXCD0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64595},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"d880214cf22868f7601a664b331a9f084ab79e1b","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -l en -t en -c google --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^12.0.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.5_1765247398858_0.37203077022523323","host":"s3://npm-registry-packages-npm-production"}},"0.5.6":{"name":"vue-i18n-generator","version":"0.5.6","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.6","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"0fc4b77d1cf76658e2a87ea58c5cd768f1f247a7","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.6.tgz","fileCount":18,"integrity":"sha512-lfC9lIi5Lp5o1PV1n737lofoI0J+1qG/Xjy0W4Js/xQdr3S0OrAAEs3gwyg5ewGFVJDc84+FGY+JP6YjH0hsyw==","signatures":[{"sig":"MEQCIBmEHBgdBPM98vpv9sI27nyWfBB/0wgnZGz1F7j7bi6BAiAQDrTQiWMLRxO0WNh4RcL/yCR3PcssTi8YEYuDtRnjeQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64072},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"21a21b70cc75c5ce1a590d435e1cfb4609a4ba13","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -l en -t en -c google --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.6_1765269750861_0.035259448233424084","host":"s3://npm-registry-packages-npm-production"}},"0.5.8":{"name":"vue-i18n-generator","version":"0.5.8","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.8","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"838227971f66ecdaa882be40ef0d1e1cf37e7f85","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.8.tgz","fileCount":18,"integrity":"sha512-RMwVnEc8E657KwlqNIPVDRQ1EGik+b/WI2XM0LV+Jilbh+mk3c6i02JaQpDfz4PAk1Jqb2jK8rv68fBhUbdnTw==","signatures":[{"sig":"MEQCIFNjFLpG7sUK297F6SEcbvDvrF5aXf/FHOvf+3t1UtptAiAbCDS0GKEHZxhCotgKeDZam8w1lI057VtN16uZWY3lgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64369},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"4223a13641316e7f653e33f68e4e3ce035e5d26c","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.8_1765333673473_0.40048494141956703","host":"s3://npm-registry-packages-npm-production"}},"0.5.10":{"name":"vue-i18n-generator","version":"0.5.10","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.10","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"ce9045bfdcf1edb251f36375b00c11e14494c26e","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.10.tgz","fileCount":18,"integrity":"sha512-yw3L51Pc4ImEfpv/yOZzAU09Gw+tFryszBqZRzkesQ8cHt4OFluj/nN6BEesqrO0BCDt6yNFp6U9XjJQMC1z9A==","signatures":[{"sig":"MEUCIQC1b3Nr9e2vHfhe2S4Vc3e3idnHgWxqx23XUPC5aOSZRgIgPEtLfTTpgY3MvocQA8ThNqX4eVGrT+eCQievq134kKg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64948},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"4223a13641316e7f653e33f68e4e3ce035e5d26c","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.10_1765786687720_0.8454549599599752","host":"s3://npm-registry-packages-npm-production"}},"0.5.11":{"name":"vue-i18n-generator","version":"0.5.11","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.11","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"08631d7731a15559e72a9f986c7064e9fbf9c22a","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.11.tgz","fileCount":18,"integrity":"sha512-KEkT7iCIWJcnpEAJe9QBECytGN22utsKT0MsUzoi9y40xLejw0iSd0CAHwF+K5PvQBsxGzAWed/vtwPXLG2SPA==","signatures":[{"sig":"MEQCICAAn/JPpFHDOdYfk80v2S7ah3zOcef4xY27SkIawigmAiAal54bARBRKIx4OlwCE6LGvr82WbnwFQRpC1zvhcrEYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65269},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"757cb7e25cb2b10304755a5aa532b17526ec008e","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.11_1766130603560_0.1867889619964349","host":"s3://npm-registry-packages-npm-production"}},"0.5.12":{"name":"vue-i18n-generator","version":"0.5.12","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.12","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"f621cfaaaea9072d2ebef0a36c54362da60d91a9","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.12.tgz","fileCount":18,"integrity":"sha512-ixisg/Xww3yMPGPWH9Gl+lp7zx/LYjaXMnjIvTXhBM/Ms95s7n2wNg5t4CBXtyZDlDTMtdOYfBvA331EzfK/Dw==","signatures":[{"sig":"MEUCIEaTpIuOySCoGJIhhd4/hoz2MCaIz7Ptz/amUIYCwpywAiEAtN3fKhsf2BL/mM3H2weAYmIFuTwZlpZtwPnYBtHEAGc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":65045},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"13dc93be9c5a66100ab09f02a86114a5c39be111","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.1"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.12_1766393085070_0.7533354853902778","host":"s3://npm-registry-packages-npm-production"}},"0.5.14":{"name":"vue-i18n-generator","version":"0.5.14","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.14","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"a0a0c14d0d3f9e8fb025d2e1a2fc0c431dedf5ec","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.14.tgz","fileCount":18,"integrity":"sha512-3fHGj+jW7dn58f9q4PnpPH6hsSpYwEYiDW1YRFe5OUGFKPeGcyvtf7Qdj3AT+rIbSGcMXH9DxgUb9o0/eDhDvA==","signatures":[{"sig":"MEYCIQDHqvPVCRz6LwXc8RqoCnFg3mpqoOnlgSj9X3YGYdnrjwIhAPPAxU8Qh0IXhpfpR+WiHdeSXeMn//YgzJNaRaw5D7CN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66466},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"f15a9ecb0f3ef2135b3d8e5a18a79988636d669e","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.14_1766644136166_0.7739453864567878","host":"s3://npm-registry-packages-npm-production"}},"0.5.16":{"name":"vue-i18n-generator","version":"0.5.16","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.5.16","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"2762842b7611dac4cbe13a7120f5346377ec2f6c","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.5.16.tgz","fileCount":18,"integrity":"sha512-PO6YfJTsWbKlieG0jG9qjKYB7P0WLsFzSr7gKCGStPSzYtm8geyMTXAVTtMYMVuFIk2ZULin6WQPSDEb7BQDWA==","signatures":[{"sig":"MEUCIHyb22QsGs6Zl13bDmlJrAeBKGiPFhopayQ6pVwx9pFRAiEAgoN0/LFX7b59ljZMU/SUNEpdvT1FF7llhMB+nO/6udQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67039},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"7c58577c7e7cc595e701619ffb6b0b1f36ff6014","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.5.16_1766988888085_0.9179389159067683","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"vue-i18n-generator","version":"0.6.0","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.6.0","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"a6a717892b3f5d598dda6f2d6aefb6076f10b265","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.6.0.tgz","fileCount":18,"integrity":"sha512-ZWJ+WcyhgDGIJFvAk7zms9FCWgFI2rmzlVCdny+73Jbgm8k+pumZixEHmlOoKBhqJNCCUlyPzIcAGoXUjMYsxQ==","signatures":[{"sig":"MEQCIDrau6TrnR69CP+TqSUUG2ZebeR0R7W1evpDjdxN+k4+AiAHNCK9yNwrwSjVIfPgtDQruyJxx5+fUAJRrHYVkQug+A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67156},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"0b662679b4f673c429f78708d671fe575c02aa4e","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.6.0_1768443002271_0.5007110662337666","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"vue-i18n-generator","version":"0.6.1","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@0.6.1","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"3e6aabcb3b5ce0dcbbfb104064c328b29fe39015","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-0.6.1.tgz","fileCount":18,"integrity":"sha512-t1AJR3cnI/z8GV/mPXeol/xds7xKZoKR+9mMzxmEmx+2S+/Vcqsj/njulz/XTcvnHE0pNfCYMF4v640InnjygQ==","signatures":[{"sig":"MEYCIQCqnTYzYBNp7pmORKaoJXVyS8ah4YSiR+UoS87RFdeikQIhAIVF9eOYcODJxAsZjncJ0MgwQNQ8tK3aABKszgPpXBCF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67780},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"0bb98e7b50d427fb031f083ef4a5b29bf454d351","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.5.0","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"20.12.2","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_0.6.1_1773213964299_0.08967942354333358","host":"s3://npm-registry-packages-npm-production"}},"1.0.0-beta.0":{"name":"vue-i18n-generator","version":"1.0.0-beta.0","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@1.0.0-beta.0","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"4472e1de1dbb9e9b57e6ba52f3f2a52e60744639","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-1.0.0-beta.0.tgz","fileCount":18,"integrity":"sha512-Ikf8BvYiBeaMZIDJ4Q3ojVyC6lqQl43Si8Mi9YyyY1baFe/awb61UpBkDto35/7OR2zs9f0AitwTJnpuFOuCdg==","signatures":[{"sig":"MEQCIHrUztMS/8RKt155DidwDJIzq+QrZOF7ynWTGU6RKQkxAiB/ifs1fxOL/TM1MtMxXTxC9bCky+bSIGuvGIq+tM4Fdg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":66975},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"b1c97988ffbd1ebf6cdd0442ca84b280eb05422d","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -o lib/locales -l zh-CN en-US --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"22.14.0","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vue-i18n":"^11.4.0","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_1.0.0-beta.0_1777131394270_0.5151399612555787","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"vue-i18n-generator","version":"1.0.5","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@1.0.5","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"a02a7f3f4b9b0fb052fc65ff41070d5f5dabac64","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-1.0.5.tgz","fileCount":19,"integrity":"sha512-rxXTUxIn0IB9umR4zgCCAfeIp1HupsJbOIMywqNUeTT7PpBSjbVHO871wRTSampo8OP5QVF/ttOzZMKIL43Qxw==","signatures":[{"sig":"MEYCIQCEDfU6uRRTdNTdtFzVAF1XPQEpAuuBgdx9pa078884oQIhAOjnLeYSM0TLOJDfIsFF7WDFYYHXmNpuri31QAcCjFt0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68412},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"409dc03a09005fa52fe4ec6bd0d81a6e89df7edf","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -o lib/locales -l zh-CN en-US --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"22.13.0","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vue-i18n":"^11.4.0","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_1.0.5_1777364326101_0.5976368054456513","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"vue-i18n-generator","version":"2.0.2","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@2.0.2","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"f4c523ce48c9f0be96adc432f749f483e6bfbc95","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-2.0.2.tgz","fileCount":18,"integrity":"sha512-e2nnMpiaGcSbF1xB0VPYpKYa6TcuaqzNbJs3Hd99khnBAqcsFAZsYHVMQkbemdK/Rx74hN/SpPphJK9D8wlSbw==","signatures":[{"sig":"MEUCIANEJvrwr7UoI/dtj7Tcp3jP31/58Rr/3NYxyiBPJKgbAiEA6qpKSGdWPMli3hc2uWsWpaU/BblY1sJ6CvOnJx74hz8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79541},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"034c486b08027d6b85e852831e70ad524dd14829","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js test -d lib/example -o lib/locales -m pinyin-hash -l zh-CN en-US --v2","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue-i18n 国际化生成器，提取项目中的”中文“替换为多语言`$t(key)`，并导出翻译文件。","directories":{},"_nodeVersion":"22.14.0","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vue-i18n":"^11.4.0","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_2.0.2_1781621863250_0.8156414330213322","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"vue-i18n-generator","version":"2.1.2","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@2.1.2","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"c28180610cdd8150d9bdb13a09526bc2af0eb7c1","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-2.1.2.tgz","fileCount":18,"integrity":"sha512-oFUqxHM+sIF/cKi/Xzuq4NTVmJc9gELQYcPpu78sAz0C2VqHBwT+5wHsOadnpYf5+rRzDw4Edr683uoO2qC95g==","signatures":[{"sig":"MEUCIQCHYygnjoT/Q6nQfmFONh4oQs1SXcJ4k8HGLuTkmZ83uQIgbCLcLjrqeSA2APTQM7g/tE+Y5ksBwZEcp5aO2bKeXnc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":81522},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"199ba596d37d32041868a4a3368e08da98b55368","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js -d test/ -m pinyin-hash -l zh-CN en-US --v2 --dry-run","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue 国际化提取工具，提取项目中的”中文“替换为多语言`$t(key)`并生成语种翻译文件。","directories":{},"_nodeVersion":"22.13.0","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vue-i18n":"^11.4.0","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_2.1.2_1783396650643_0.21792427169413853","host":"s3://npm-registry-packages-npm-production"}},"2.1.5":{"name":"vue-i18n-generator","version":"2.1.5","keywords":["vue-i18n-generator","vue-i18n"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@2.1.5","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"cdb017110af2c701187b65f9f89693127bbf9240","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-2.1.5.tgz","fileCount":18,"integrity":"sha512-F+dhUZKDZFT9sct/b7PFx1W2JEHF5uIoo/qYRU3r2gElthOvtcoYdtIqushvgMmnopoL5DK0ePudl6ElC69uoQ==","signatures":[{"sig":"MEQCIFSl7mc7jblJfvuK8BfzcUyNzzzEcwCeLhFSbNwcpZzjAiAzL8XnqCfne83Tnb3GalzyyTsDE2emQ8945zsgnxT5pQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83683},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"368c9e78bd27aab480a129941feea95bf2b0569f","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js -d test/ -m pinyin-hash -l zh-CN en-US --v2 --dry-run","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue 国际化提取工具，提取项目中的”中文“替换为多语言`$t(key)`并生成语种翻译文件。","directories":{},"_nodeVersion":"22.13.0","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vue-i18n":"^11.4.0","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_2.1.5_1783670510698_0.9901362187270157","host":"s3://npm-registry-packages-npm-production"}},"2.1.7":{"name":"vue-i18n-generator","version":"2.1.7","keywords":["vue","i18n","vue-i18n","translator","vue-i18n-extract","vue-i18n-generator"],"author":{"name":"evan.lin"},"license":"MIT","_id":"vue-i18n-generator@2.1.7","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"bin":{"translator":"dist/index.js"},"dist":{"shasum":"cecbb7aefb401da403f8f1d39999036d91c82d4d","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-2.1.7.tgz","fileCount":18,"integrity":"sha512-IMVFrmIr3fWHlzi9maqcuEMM3RbMkYkRaI4XzlZ8I0YO5x7WmL7MrZlNLshWqF2FMoHY5eIU9R+2NhHAmLHVCA==","signatures":[{"sig":"MEUCIEzG2SMDW56aoiQya+UqCwTSaZay/SPn8Pw1fpGlbd8vAiEAizlUYaKohzOrhvZd6GAZXpQTeXuiYVujUPMGH10d6Fw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82911},"main":"dist/index.js","types":"./dist/index.d.ts","gitHead":"26d5d15f8c30b1fff84cd5473e685879699b0520","private":false,"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js -d test/ -m pinyin-hash -l zh-CN en-US --v2 --dry-run","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"repository":{"url":"","type":"git"},"_npmVersion":"10.9.2","description":"Vue 国际化提取工具，提取项目中的”中文“替换为多语言`$t(key)`并生成语种翻译文件。","directories":{},"_nodeVersion":"22.13.0","dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","pinyin-pro":"^3.19.7","js-utils-plus":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"rimraf":"^6.0.1","vue-i18n":"^11.4.0","typescript":"^5.4.5","@types/node":"^20.19.18","@types/crypto-js":"^4.2.2","javascript-obfuscator":"^4.1.0"},"_npmOperationalInternal":{"tmp":"tmp/vue-i18n-generator_2.1.7_1784096636698_0.219563570770686","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"vue-i18n-generator","version":"2.2.0","description":"Vue 国际化提取工具，提取项目中的”中文“替换为多语言`$t(key)`并生成语种翻译文件。","main":"dist/index.js","bin":{"translator":"dist/index.js"},"scripts":{"dev":"tsc -w","test":"tsc && node dist/index.js -d test/ -m pinyin-hash -l zh-CN en-US --v2 --dry-run --unique-key","build":"rimraf dist && tsc && javascript-obfuscator dist --output dist"},"author":{"name":"evan.lin"},"license":"MIT","private":false,"repository":{"type":"git","url":""},"keywords":["vue","i18n","vue-i18n","translator","vue-i18n-extract","vue-i18n-generator"],"dependencies":{"axios":"^1.6.8","commander":"^9.5.0","crypto-js":"^4.2.0","js-utils-plus":"^1.4.2","pinyin-pro":"^3.19.7"},"devDependencies":{"@types/crypto-js":"^4.2.2","@types/node":"^20.19.18","javascript-obfuscator":"^4.1.0","rimraf":"^6.0.1","typescript":"^5.4.5","vue-i18n":"^11.4.0"},"_id":"vue-i18n-generator@2.2.0","gitHead":"14be74fb8c0ff4c4080d8828abff88c7f2df7025","types":"./dist/index.d.ts","_nodeVersion":"22.13.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-PA0x/uV9Ap7JL54F8qO0kRunPyqMB2/TaYtC4gDemM2bRIsZHlq/liIbHRVWK2OcmYCNgZJ0KH2FA8rYseDeKA==","shasum":"32423a3d93459967a13849a2a6d70cadd5434931","tarball":"https://registry.npmjs.org/vue-i18n-generator/-/vue-i18n-generator-2.2.0.tgz","fileCount":18,"unpackedSize":84082,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIA8BBsLBZ4w1NF6GaiklLkzOAPwe4wSMUisOzJyAyvohAiAnsfQ42EtDvCXzaTRWZh5rahdiBbWsKyrslKoHhAF62Q=="}]},"_npmUser":{"name":"evan.lin","email":"779249475@qq.com"},"directories":{},"maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vue-i18n-generator_2.2.0_1785373641482_0.9927969212398404"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-22T07:50:20.794Z","modified":"2026-07-30T01:07:21.846Z","0.0.1":"2025-10-22T07:50:21.042Z","0.0.2":"2025-10-23T07:58:39.310Z","0.1.0":"2025-10-23T13:57:17.045Z","0.1.1":"2025-10-23T14:41:11.118Z","0.2.0":"2025-10-28T05:51:05.180Z","0.2.1":"2025-11-03T07:30:07.504Z","0.2.2":"2025-11-03T07:38:03.150Z","0.2.3":"2025-11-03T14:21:27.758Z","0.3.0":"2025-11-05T08:07:10.775Z","0.3.1":"2025-11-05T08:11:17.963Z","0.3.2":"2025-11-05T08:14:54.855Z","0.3.3":"2025-11-05T09:27:39.491Z","0.5.0":"2025-11-07T01:46:43.794Z","0.5.1":"2025-11-07T02:02:23.829Z","0.5.2":"2025-12-05T06:35:27.647Z","0.5.3":"2025-12-05T06:52:47.741Z","0.5.4":"2025-12-08T03:50:11.865Z","0.5.5":"2025-12-09T02:29:59.012Z","0.5.6":"2025-12-09T08:42:30.997Z","0.5.7":"2025-12-10T02:13:10.567Z","0.5.8":"2025-12-10T02:27:53.630Z","0.5.10":"2025-12-15T08:18:07.874Z","0.5.11":"2025-12-19T07:50:03.704Z","0.5.12":"2025-12-22T08:44:45.237Z","0.5.13":"2025-12-25T02:13:40.661Z","0.5.14":"2025-12-25T06:28:56.318Z","0.5.15":"2025-12-29T04:27:31.415Z","0.5.16":"2025-12-29T06:14:48.216Z","0.6.0":"2026-01-15T02:10:02.413Z","0.6.1":"2026-03-11T07:26:04.455Z","1.0.0-beta.0":"2026-04-25T15:36:34.415Z","1.0.0-beta.1":"2026-04-25T15:47:46.702Z","1.0.0-beta.2":"2026-04-27T03:47:45.157Z","1.0.0-beta.3":"2026-04-27T04:20:47.330Z","1.0.0":"2026-04-27T05:53:46.341Z","1.0.1":"2026-04-27T07:08:34.327Z","1.0.2":"2026-04-27T09:24:49.067Z","1.0.3":"2026-04-28T03:48:21.321Z","1.0.5":"2026-04-28T08:18:46.226Z","1.1.0-beta.1":"2026-06-15T11:27:38.631Z","2.0.0":"2026-06-16T02:42:44.841Z","2.0.1":"2026-06-16T03:49:34.641Z","2.0.2":"2026-06-16T14:57:43.407Z","2.1.0":"2026-07-07T03:26:56.722Z","2.1.1":"2026-07-07T03:49:21.805Z","2.1.2":"2026-07-07T03:57:30.832Z","2.1.5":"2026-07-10T08:01:50.837Z","2.1.6":"2026-07-15T00:55:02.578Z","2.1.7":"2026-07-15T06:23:56.838Z","2.2.0":"2026-07-30T01:07:21.643Z"},"author":{"name":"evan.lin"},"license":"MIT","keywords":["vue","i18n","vue-i18n","translator","vue-i18n-extract","vue-i18n-generator"],"repository":{"type":"git","url":""},"description":"Vue 国际化提取工具，提取项目中的”中文“替换为多语言`$t(key)`并生成语种翻译文件。","maintainers":[{"name":"evan.lin","email":"779249475@qq.com"}],"readme":"# vue-i18n-generator\n\n### 介绍\n\nVue 国际化提取工具，提取项目中的”中文“替换为多语言`$t(key)`并生成语种翻译文件。\n\n### 安装\n\n```\n# 全局安装\nnpm install vue-i18n-generator -g\n\n# 或本地安装\nnpm install vue-i18n-generator --save-dev\n\n```\n\n### 命令行参数\n\n```\ntranslator [options]\n\nOptions:\n  -d, --dir <dir>            扫描的目录路径，默认 src/\n  -f, --file <path>          仅处理指定的单个文件，不扫描目录\n  -o, --output <dir>         扫描结果输出路径，默认 src/locales\n  -e, --exclude <value...>   排除的文件/目录，如 style assets\n  -p, --prefix <value>       多语言 Key 前缀，如 L1 L2 L3 custom\n  -m, --key-mode <value>     Key 生成模式，pinyin、pinyin-hash、hash\n  -l, --locale <value...>    生成的语言代码(符合BCP47标准)，如 zh-CN en-US\n  -t, --translate <value...> 需要翻译的语言代码，对应 --locale 参数\n  -c, --channel <value>      翻译渠道，baidu(百度)、youdao(有道)、google(谷歌)\n  --appKey <value>           翻译 API 应用 key\n  --secretKey <value>        翻译 API 密钥\n  --v2                       是否为 Vue 2.x 版本，默认为 Vue 3.x\n  --dry-run                  是否为预览模式\n  --unique-key               Key 碰撞时追加自增序号（从2开始）\n```\n\n- `--dry-run` 模式说明：\n  - **预览模式**：仅输出匹配结果和翻译文件**不修改源文件**。适合初次评估项目规模。\n  - **写入模式**：输出匹配结果和翻译文件并且**修改源文件**。，用于生产打包部署前执行。\n\n- 备注：\n  - 百度和有道翻译需同时提供 `--appKey` 和 `--secretKey` 参数。\n  - 谷歌翻译提供 `--appKey`时，使用谷歌API翻译，未提供则降级为谷歌网页翻译。\n  - 只对新增 `key` 翻译，需重新翻译可删除 `lang/locale.json` 中的 `key` 后重新生成。\n  - `prefix` 为多语言前缀，`L1` 为路径层级文件夹名，路径中 `pages`|`views` 不计算层级。\n  - 生成的翻译 `key` 为 `[前缀]_文件名.[Key生成策略]`，需注意中文修改后 `key` 将会被改变。\n  - 可添加自定义 `公共多语言`（在根目录创建 `translator.json`），适用于高频率出现的中文。\n  - `--unique-key` 当生成的 Key 相同时自动追加 `_2`、`_3` 等自增后缀。每个文件独立计数。\n\n> **注意事项**：`defineProps`和`defineEmits`的选项中不能使用`t`方法，故在它们选项中不能使用中文块，我们可引入全局`i18n`实例，然后使用实例的`i18n.global.t`方法来解决。因为它们会从`setup`中提升到模块的作用域，因此传入的选项不能引用在`setup`作用域中声明的局部变量，这样会引起编译报错，具体可查看官方文档。\n\n\n### 语种编码对照（翻译功能）\n\n语言编码应遵循 BCP 47 标准。不同翻译渠道的 API 对语言代码的格式要求不同。\n\n| 语种 | 项目语言编码 | 百度翻译 | 有道翻译 | 谷歌翻译 |\n|------|:---:|:---:|:---:|:---:|\n| 简体中文 | `zh-CN` | `zh` | `zh-CHS` | `zh-CN` |\n| 繁体中文（台湾） | `zh-TW` | `cht` | `zh-CHT` | `zh-TW` |\n| 繁体中文（香港） | `zh-HK` | `cht` | `zh-CHT` | `zh-HK` |\n| 英语（美国） | `en-US`/`en` | `en` | `en` | `en` |\n| 英语（英国） | `en-GB`/`en` | `en` | `en` | `en` |\n| 日语 | `ja-JP`/`ja` | `jp` | `ja` | `ja` |\n\n> **说明**：百度翻译使用自定义语种代码（繁体中文统一映射为 `cht`）；有道翻译使用 `zh-CHS`/`zh-CHT` 后缀区分简繁体；谷歌翻译支持 BCP 47 标准，与项目编码完全一致。传入小写非标准代码（如 `ja`）也可被解析。\n\n\n### key-mode 参数详解\n\n控制多语言 Key 的生成策略，解决不同中文字符串可能生成相同 Key 的碰撞问题。\n\n| 模式 | 参数值 | Key 示例 | 说明 |\n|------|--------|----------------------|------|\n| 拼音 | `pinyin` | `que_ren_shan_chu` | 全拼 ≤20 字符直接使用，超长用首字母或截取。**可能碰撞** |\n| 拼音+哈希 | `pinyin-hash` | `que_ren_shan_chu_ed7e02` | 拼音 + 始终追加 6 位 MD5 哈希，确保唯一性 |\n| 哈希 | `hash` | `tfc98faab450a` | t + 始终用原文的 12 位 MD5 哈希作为 Key，**绝对唯一但不可读** |\n\n### 碰撞示例：\n\n| 原文 | `pinyin`（默认） | `pinyin-hash` | `hash` |\n|----------|:--:|:--:|:--:|\n| `确认删除?` | `que_ren_shan_chu` | `que_ren_shan_chu_fc98fa` ✅ | `tfc98faab450a` |\n| `确认删除！` | `que_ren_shan_chu` ❌ 覆盖 | `que_ren_shan_chu_450a82` ✅ | `t450a828b3f1e` |\n| `确认删除。` | `que_ren_shan_chu` ❌ 覆盖 | `que_ren_shan_chu_04ad49` ✅ | `t04ad497b2c8d` |\n| `攻击` | `gong_ji` | `gong_ji_33781e` ✅ | `t33781e80a9f2` |\n| `公鸡` | `gong_ji` ❌ 覆盖 | `gong_ji_2daa2d` ✅ | `t2daa2de31b7c` |\n| `一段中文...` | `zsydfccdzw...` | `zsydfccdzw_5830a3` ✅ | `t5830a3f012ef` |\n\n#### `--unique-key` 效果\n\n| 出现顺序 | 原文 | 生成 Key（`pinyin` 模式） | 说明 |\n|:--:|------|------|------|\n| 1 | `攻击` | `gong_ji` | 首次出现，正常生成 |\n| 2 | `公鸡` | `gong_ji_2` | Key 相同 → 碰撞，追加 `_2` |\n| 3 | `攻击` | `gong_ji_3` | Key 相同 → 碰撞，追加 `_3` |\n| 4 | `功绩` | `gong_ji_4` | Key 相同 → 碰撞，追加 `_4` |\n\n> **注意**：只要生成的 Key 已存在就触发碰撞追加，不区分原文是否相同。每个文件独立计数。\n\n### 命令行使用\n\n```bash\n# 帮助文档\ntranslator --help\n\n# 预览模式：提取中文并生成翻译文件，不修改源文件（百度翻译）\ntranslator --dry-run -d src/ -o src/locales -l zh-CN en-US -t en-US -c baidu --appKey YOUR_KEY --secretKey YOUR_SECRET\n\n# 预览模式：使用谷歌翻译（需 API 密钥）\ntranslator --dry-run -d src/ -o src/locales -l zh-CN en-US -t en-US -c google --appKey YOUR_API_KEY\n\n# 指定 Key 生成模式（推荐 pinyin-hash，防碰撞）\ntranslator --dry-run -d src/ -o src/locales -l zh-CN en-US -m pinyin-hash\n\n# 写入模式：直接替换源文件中的中文为 $t(key)（Vue 2 项目）\ntranslator -l zh-CN zh-TW en-US --v2\n\n# 写入模式：Vue 3 项目\ntranslator -l zh-CN zh-TW en-US\n\n# pinyin 模式 + 碰撞自增序号（防碰撞但 Key 可读）\ntranslator --dry-run -d src/ -o src/locales -l zh-CN en-US -m pinyin --unique-key\n\n# 单文件处理模式：仅处理指定文件\ntranslator -f src/views/Home.vue -l zh-CN en-US --dry-run\n```\n\n### 项目中导入\n\n- 安装`vue-i18n`依赖包： `npm install vue-i18n --save`\n- 在Vue项目中的`main.js`文件中添加如下代码：\n\n\n#### Vue2.0\n\n```js\n// main.js\nimport Vue from 'vue';\nimport VueI18n from 'vue-i18n';\nimport VueRouter from 'vue-router';\nimport ElementUI from 'element-ui';\n\nimport elementZhCN from 'element-ui/lib/locale/lang/zh-CN';\nimport elementEnUS from 'element-ui/lib/locale/lang/en';\n\nimport router from '@/router';\nimport { i18n } from '@/locales'; // 导入入口文件\n\nimport App from './App.vue';\n\nVue.use(VueRouter);\n\n// 合并 ElementUI 语言包\ni18n.mergeLocaleMessage('zh-CN', elementZhCN);\ni18n.mergeLocaleMessage('en-US', elementEnUS);\n\nVue.use(ElementUI, {\n  i18n: (key, value) => i18n.t(key, value),\n});\n\nnew Vue({\n  router,\n  i18n,\n  render: (h) => h(App),\n}).$mount('#app');\n```\n\n#### Vue3.0\n\n```js\n// main.js\nimport { createApp } from 'vue';\n\nimport ElementPlus from 'element-plus';\nimport 'element-plus/dist/index.css';\n\nimport router from '@/router';\nimport i18n from '@/locales'; // 导入入口文件\n\nimport App from './App.vue';\n\nconst app = createApp(App);\napp.use(i18n);\n\napp.use(router);\napp.use(ElementPlus);\n\napp.mount('#app');\n```\n```vue\n<!-- App.vue -->\n<template>\n  <el-config-provider :locale=\"message\">\n    <RouterView />\n  </el-config-provider>\n</template>\n\n<script setup lang=\"ts\">\nimport elementPlusZhCN from 'element-plus/es/locale/lang/zh-cn';\nimport elementPlusEnUS from 'element-plus/es/locale/lang/en';\nimport { useI18n } from 'vue-i18n';\nconst { locale } = useI18n();\n\n// 语言编码与生成的地区语言代码对应\nconst messages: any = {\n  'zh-CN': elementPlusZhCN,\n  'en-US': elementPlusEnUS,\n};\nconst message = computed(() => messages[locale.value]);\n</script>\n```\n\n#### 示例\n\ntest.vue\n\n```vue\n<template title=\"用户设置\">\n  <div class=\"user-form\">\n    <!-- 纯文本节点 -->\n    请填写以下用户信息\n\n    <!-- 元素内中文（短文本 / 长文本→哈希Key / 中英混合） -->\n    <p>基本信息</p>\n    <p>名称长度需在7~13个字符之间</p>\n    <p>机身号、项目名称 or 设备名称</p>\n\n    <!-- 中文与模板语法混合（前缀 + 三元内嵌中文 + 后缀） -->\n    <p>开始{{ isAutoMode ? '篮球' : '乒乓球' }}比赛</p>\n\n    <!-- 静态属性（多属性 + Common短语匹配） -->\n    <el-form-item label=\"持卡人\" placeholder=\"请输入\"></el-form-item>\n    <el-date-picker start-placeholder=\"开始日期\" end-placeholder=\"结束日期\"></el-date-picker>\n\n    <!-- 动态属性（三元 / 字符串拼接 / 逻辑或+三元） -->\n    <el-form-item :label=\"isAutoMode ? '地球' : '月球'\"></el-form-item>\n    <el-form-item :label=\"'检查项' + ' (' + userRole.length + ')'\"></el-form-item>\n    <el-form-item :label=\"isAutoMode || useContactPerson ? '设备号' : '机身号'\"></el-form-item>\n\n    <!-- 模板字符串（单变量 / 三元插槽 / 多插槽+嵌套三元） -->\n    <p>{{ `测试共${charLimit}个字符 ` }}</p>\n    <p>{{ `${isAutoMode ? '自动' : '手动'}:` }}</p>\n    <p>{{ `您确定要删除${isAutoMode ? '自动清洗' : '手动清洗'}路线${isAutoMode ? '图片' : '定位'}吗？` }}</p>\n\n    <!-- 动态属性中的模板字符串（单变量 / 三元插槽） -->\n    <el-form-item :label=\"`${userRole}姓名`\"></el-form-item>\n    <el-form-item :label=\"`${isPhoneMode ? '手机号码' : '电话号码'}:`\"></el-form-item>\n\n    <!-- 深层嵌套 -->\n    <div class=\"wrapper\">\n      <div class=\"inner\">\n        <span>嵌套层级中的提示信息</span>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nexport default {\n  data() {\n    return {\n      charLimit: 10,\n      userRole: '管理员',\n      isAutoMode: true,\n      isPhoneMode: true,\n      useContactPerson: true,\n      currentDay: '星期一',\n    };\n  },\n  computed: {\n    // 计算属性中的模板字符串\n    roleDisplayName() {\n      return `当前${this.userRole}用户`;\n    },\n  },\n  mounted() {\n    // 生命周期钩子：debug 日志 + Common 短语匹配\n    console.log('组件加载完成');\n    this.$message('保存成功');\n  },\n  methods: {\n    // 单行注释 + debug 日志 + 字符串替换（中文 / 纯英文 / 中英混合）\n    handleStringReplacement() {\n      console.log('这是一条调试日志');\n      console.error('数据拉取失败');\n      const accountInfo = '账户信息';\n      const englishOnly = 'welcome';\n      const mixedText = '聚会时间';\n    },\n    /*\n     * 多行注释中的中文不影响替换\n     * 含中文的业务说明文字\n     */\n    handleTemplateLiteral() {\n      const contactText = `联系${this.useContactPerson ? '张三' : '李四'}`;\n      const accountText = `这是(${this.userRole})的账户`;\n      const greetingText = `${this.currentDay}，${this.userRole}先生`;\n      const confirmMsg = `统计：排行榜总计 ${Object.keys(obj).length} 条，本次新增 ${addCount} 条，删除 ${delCount} 条。`;\n      this.$confirm(confirmMsg, () => {});\n    },\n    // 条件分支中的中文\n    handleConditionalMessage() {\n      if (this.isAutoMode) {\n        this.$message('自动保存成功');\n      } else {\n        this.$message('手动保存成功');\n      }\n    },\n  },\n};\n</script>\n```\n\n执行结果\n\n```vue\n<template>\n  <div class=\"user-form\">\n    <!-- 纯文本节点 -->\n    {{ $t('test.qtxyxyhxx') }}\n\n    <!-- 元素内中文（短文本 / 长文本→哈希Key / 中英混合） -->\n    <p>{{ $t('test.ji_ben_xin_xi') }}</p>\n    <p>{{ $t('test.mccdxz713gzfzj') }}</p>\n    <p>{{ $t('test.jshxmmcorsbmc') }}</p>\n\n    <!-- 中文与模板语法混合（前缀 + 三元内嵌中文 + 后缀） -->\n    <p>{{ $t('test.kai_shi') }}{{ isAutoMode ? $t('test.lan_qiu') : $t('test.ping_pang_qiu') }}{{ $t('test.bi_sai') }}</p>\n\n    <!-- 静态属性（多属性 + Common短语匹配） -->\n    <el-form-item :label=\"$t('test.chi_ka_ren')\" :placeholder=\"$t('test.qing_shu_ru')\"></el-form-item>\n    <el-date-picker :start-placeholder=\"$t('test.kai_shi_ri_qi')\" :end-placeholder=\"$t('test.jie_shu_ri_qi')\"></el-date-picker>\n\n    <!-- 动态属性（三元 / 字符串拼接 / 逻辑或+三元） -->\n    <el-form-item :label=\"isAutoMode ? $t('test.di_qiu') : $t('test.yue_qiu')\"></el-form-item>\n    <el-form-item :label=\"$t('test.jian_cha_xiang') + ' (' + userRole.length + ')'\"></el-form-item>\n    <el-form-item :label=\"isAutoMode || useContactPerson ? $t('test.she_bei_hao') : $t('test.ji_shen_hao')\"></el-form-item>\n\n    <!-- 模板字符串（单变量 / 三元插槽 / 多插槽+嵌套三元） -->\n    <p>{{ $t('test.csg$0gzf', [charLimit]) }}</p>\n    <p>{{ $t('test.$0', [isAutoMode ? $t('test.zi_dong') : $t('test.shou_dong')]) }}</p>\n    <p>{{ $t('test.nqdysc$0lx$1m', [isAutoMode ? $t('test.zi_dong_qing_xi') : $t('test.shou_dong_qing_xi'),isAutoMode ? $t('test.tu_pian') : $t('test.ding_wei')]) }}</p>\n\n    <!-- 动态属性中的模板字符串（单变量 / 三元插槽） -->\n    <el-form-item :label=\"$t('test.$0xing_ming', [userRole])\"></el-form-item>\n    <el-form-item :label=\"$t('test.$0', [isPhoneMode ? $t('test.shou_ji_hao_ma') : $t('test.dian_hua_hao_ma')])\"></el-form-item>\n\n    <!-- 深层嵌套 -->\n    <div class=\"wrapper\">\n      <div class=\"inner\">\n        <span>{{ $t('test.qtcjzdtsxx') }}</span>\n      </div>\n    </div>\n  </div>\n</template>\n\n<script>\nexport default {\n  data() {\n    return {\n      charLimit: 10,\n      userRole: this.$t('test.guan_li_yuan'),\n      isAutoMode: true,\n      isPhoneMode: true,\n      useContactPerson: true,\n      currentDay: this.$t('test.xing_qi_yi'),\n    };\n  },\n  computed: {\n    // 计算属性中的模板字符串\n    roleDisplayName() {\n      return this.$t('test.dang_qian$0yong_hu', [this.userRole]);\n    },\n  },\n  mounted() {\n    // 生命周期钩子：debug 日志 + Common 短语匹配\n    console.log('组件加载完成');\n    this.$message(this.$t('Common.com_save_success'));\n  },\n  methods: {\n    // 单行注释 + debug 日志 + 字符串替换（中文 / 纯英文 / 中英混合）\n    handleStringReplacement() {\n      console.log('这是一条调试日志');\n      console.error('数据拉取失败');\n      const accountInfo = this.$t('test.zhang_hu_xin_xi');\n      const englishOnly = 'welcome';\n      const mixedText = this.$t('test.ju_hui_shi_jian');\n    },\n    /*\n     * 多行注释中的中文不影响替换\n     * 含中文的业务说明文字\n     */\n    handleTemplateLiteral() {\n      const contactText = this.$t('test.lian_xi$0', [this.useContactPerson ? this.$t('test.zhang_san') : this.$t('test.li_si')]);\n      const accountText = this.$t('test.zhe_shi$0de_zhang_hu', [this.userRole]);\n      const greetingText = this.$t('test.$0$1xian_sheng', [this.currentDay,this.userRole]);\n      const confirmMsg = this.$t('test.tjpxbzj$0t_a194f468', [Object.keys(obj).length,addCount,delCount]);\n      this.$confirm(confirmMsg, () => {});\n    },\n    // 条件分支中的中文\n    handleConditionalMessage() {\n      if (this.isAutoMode) {\n        this.$message(this.$t('test.zdbccg'));\n      } else {\n        this.$message(this.$t('test.sdbccg'));\n      }\n    },\n  },\n};\n</script>\n\n```\n\n翻译文件 (locales/lang/locale.json)\n\n```json\n{\n  \"Common\": {\n    \"com_yes\": \"是\",\n    \"com_no\": \"否\",\n    \"com_save_success\": \"保存成功\",\n    \"com_copy_success\": \"复制成功\"\n  },\n  \"test\": {\n    \"__filePath\": \"/test.vue\",\n    \"__title\": \"用户设置\",\n    \"dang_qian$0yong_hu\": \"当前{0}用户\",\n    \"zhang_san\": \"张三\",\n    \"li_si\": \"李四\",\n    \"lian_xi$0\": \"联系{0}\",\n    \"zhe_shi$0de_zhang_hu\": \"这是({0})的账户\",\n    \"$0$1xian_sheng\": \"{0}，{1}先生\",\n    \"tjpxbzj$0t_a194f468\": \"统计：排行榜总计 {0} 条，本次新增 {1} 条，删除 {2} 条。\",\n    \"guan_li_yuan\": \"管理员\",\n    \"xing_qi_yi\": \"星期一\",\n    \"zhang_hu_xin_xi\": \"账户信息\",\n    \"ju_hui_shi_jian\": \"聚会时间\",\n    \"zdbccg\": \"自动保存成功\",\n    \"sdbccg\": \"手动保存成功\",\n    \"csg$0gzf\": \"测试共{0}个字符 \",\n    \"zi_dong\": \"自动\",\n    \"shou_dong\": \"手动\",\n    \"$0\": \"{0}:\",\n    \"zi_dong_qing_xi\": \"自动清洗\",\n    \"shou_dong_qing_xi\": \"手动清洗\",\n    \"tu_pian\": \"图片\",\n    \"ding_wei\": \"定位\",\n    \"nqdysc$0lx$1m\": \"您确定要删除{0}路线{1}吗？\",\n    \"$0xing_ming\": \"{0}姓名\",\n    \"shou_ji_hao_ma\": \"手机号码\",\n    \"dian_hua_hao_ma\": \"电话号码\",\n    \"qtxyxyhxx\": \"请填写以下用户信息\",\n    \"ji_ben_xin_xi\": \"基本信息\",\n    \"mccdxz713gzfzj\": \"名称长度需在7~13个字符之间\",\n    \"jshxmmcorsbmc\": \"机身号、项目名称 or 设备名称\",\n    \"kai_shi\": \"开始\",\n    \"bi_sai\": \"比赛\",\n    \"lan_qiu\": \"篮球\",\n    \"ping_pang_qiu\": \"乒乓球\",\n    \"chi_ka_ren\": \"持卡人\",\n    \"qing_shu_ru\": \"请输入\",\n    \"kai_shi_ri_qi\": \"开始日期\",\n    \"jie_shu_ri_qi\": \"结束日期\",\n    \"di_qiu\": \"地球\",\n    \"yue_qiu\": \"月球\",\n    \"jian_cha_xiang\": \"检查项\",\n    \"she_bei_hao\": \"设备号\",\n    \"ji_shen_hao\": \"机身号\",\n    \"qtcjzdtsxx\": \"嵌套层级中的提示信息\"\n  }\n}\n```\n\n### CHANGELOG.md\n\n```md\n## v2.2.0\n\n- change: `pinyin-hash` 模式改为始终追加 6 位 MD5 哈希，不再依赖碰撞检测\n- feat: 新增 `--unique-key` 参数，任意 `key-mode` 下 Key 碰撞时追加自增序号（从 2 开始）\n- change: 移除 `pinyin-hash` 的 `ensureUniqueKey` 碰撞检测逻辑，简化为纯哈希\n\n## v2.1.0\n\n- change: CLI 入口重构，移除 `env` 位置参数，改为选项驱动模式\n- feat: 新增 `-f, --file` 参数，支持单文件处理模式\n- feat: 新增 `--dry-run` 参数，仅预览匹配结果不修改源文件\n- feat: 新增 `-v, --version` 和 `-h, --help` 选项\n- change: 选项重命名 `--excludes` → `--exclude`，`--locales` → `--locale`\n- change: 翻译文件 `locale.json` 输出路径调整至 `lang/locale.json`\n- change: 生成 `RunOptions` 类型模型，替换 `any` 类型，增强类型安全\n- fix: 修复 `hash` 模式下变量名以数字开头时生成的 Key 不合法的问题\n\n## v2.0.2\n\n- feat: 新增 `-m, --key-mode` 参数，支持 pinyin / pinyin-hash / hash 三种 Key 生成模式\n- feat: 自动检测 `<script setup>`，Vue 3 Options API 模板自动使用 `$t` 前缀\n- change: 模板占位符 `{0}` `{1}` 保留为 `$0` `$1`，不再替换为固定字符 `o`\n- change: Key 生成保留 `$` 符号，并自动去除开头的数字（Key 不应以数字开头）\n- change: 移除生成的通用多语言 `Common` 中时间戳 `__timestamp` 字段\n- fix: 修复 `console.log/error/warn` 正则无法匹配嵌套括号的问题\n- fix: 修复行首单行注释未被保护的 bug\n- fix: 修复不同中文生成相同 Key 的碰撞问题（需使用 `--key-mode pinyin-hash`）\n- fix: 修复部分 bug\n\n## v1.0.0\n\n- change: 新增`index.js`文件，并将语言代码文件移至`lang`文件夹中\n- change: 移除内置的公共多语言，不再提供默认公共多语言\n- fix: 修复部分 bug\n\n## v0.5.1\n\n- fix: 提升百度翻译每次请求效率，批量请求翻译\n- fix: 新增有道翻译，谷歌翻译（需要科学上网）\n- fix: 修复对新增数据翻译时旧翻译被覆盖问题\n- fix: 修复部分 bug\n```\n","readmeFilename":"README.md"}