touhou-tagger
Version:
从 THBWiki 自动填写东方 Project CD 曲目信息.
29 lines (28 loc) • 1.07 kB
JavaScript
import { log, setDebug } from '../core/debug.js';
import { saveConfigFile } from './config-file.js';
import { createCliOptionsParser, getLyricConfig, getMetadataConfig, setCliOptions, } from './options.js';
const applyOptions = (options) => {
if (options.debug) {
console.log('Node.js version:', process.version);
}
setDebug(options.debug);
const metadataConfig = getMetadataConfig(options);
const lyricConfig = getLyricConfig(options);
log(options);
log(metadataConfig);
saveConfigFile({ ...metadataConfig, lyric: lyricConfig });
};
const parser = createCliOptionsParser()
.middleware(argv => {
applyOptions(setCliOptions(Object.freeze({ ...argv })));
}, true)
.command(['tag', '*'], '为音乐文件写入元数据', {}, async () => {
const { runTagger } = await import('./run-tagger.js');
await runTagger();
})
.command('dump', '从音乐文件提取元数据', {}, async () => {
const { dump } = await import('./run-dumper.js');
await dump();
});
await parser.parseAsync();