UNPKG

magic-i18n

Version:

magic-i18n 一键式实现项目的国际化 语言包 处理的过程

57 lines (46 loc) 1.8 kB
#!/usr/bin/env node require('colors'); const packageInfo = require('../package.json'); const commander = require('commander'); const generate = require('../lib/generate'); const translate = require('../lib/translate'); const transform = require('../lib/transform'); const init = require('../lib/init'); const clear = require('../lib/clear'); commander.version(packageInfo.version, '-v, --version'); commander.command('generate [src]') .description('对src目录下的vue/js文件进行中文提取并生成国际化资源文件,默认src为执行目录下的src目录') .option('-p, --filepath <filepath>', '设置国际化文件的路径,默认为执行目录下的src/locale目录,请务必设置一个单独的目录来放置国际化资源文件') .option('-f, --filename <filename>', '设置生成文件的文件名,默认为 zh,会自动添加.js 后缀') .action((src = 'src', {filepath = 'src/locale', filename = 'zh'}) => { generate(src, {filepath, filename}); }); commander.on('command:*', function () { console.error('Invalid command: %s\nSee --help for a list of available commands.', commander.args.join(' ')); process.exit(1); }); commander.command('init') .description('初始化翻译配置项') .action(()=>{ init(); }) commander.command('translate [code]') .description('开始启用自动翻译') .option('-f, --file <filename>', '选择翻译的文件') .action((code = 'en', { file } )=>{ translate(code, file); }) commander.command('transform') .description('已修改的map映射表导入语言包') .action(()=>{ transform(); }) commander.command('clear [src]') .description('清除未再使用的语言包') .action((src = 'src')=>{ clear(src); }) if (process.argv.length === 2) { commander.help(); } commander.parse(process.argv);