markdowny/src/count.ts

49 lines
1 KiB
TypeScript
Raw Normal View History

2016-11-01 00:25:37 +00:00
import * as yargs from "yargs";
import * as table from "./table";
import * as scanner from "./scanner";
export var help = "Counts the number of works in the given input";
export function args(argv) {
return argv
.help("help")
.default('fields', ['_basename', '_words:r'])
.default('table-start', '')
.default('table-end', '')
.default('table-delimiter', ': ')
.boolean('table-rule')
.default('table-rule', false)
.boolean('table-header')
.default('table-header', false)
.alias('t', 'total')
.boolean('total')
.alias('s', 'separator')
.boolean('separator')
.alias('o', 'output')
.default('output', '-')
.demand(1)
.argv;
}
export function run(argv) {
var files = argv._.splice(1);
var data = scanner.scanFiles(argv, files);
if (argv.total)
{
argv.fields[1] += "t";
}
if (argv.separator)
{
argv.fields[1] += "s";
}
table.render(argv, data);
}