]>
git.kianting.info Git - clo/blob - src/index.ts
1 var fs
= require('fs');
2 var argv
: any = require('minimist')(process
.argv
.slice(2));
4 import * as parser from
"./parser.js";
7 * help for inputing `--help` parameter.
11 clo: clo INPUT_FILE --output-js OUTPUT_JS_FILE
13 \ta little typesetter powered by TypeScript/Javascript.
16 INPUT_FILE\tan input .clo file
20 --output-js\tgenerated the output middle JS file
23 Report bugs to: clo@kianting.info
24 clo home page: <https://kianting.info/wiki/w/Project:Clo>
27 processArgv(argv
, helpDesc
);
30 * processing the passed `argv` (arguments)
33 export function processArgv(argv
: any, helpDesc
: string){
34 let inputFile
: string[] = argv
['_'];
35 let outputJSFile
: string | true = argv
['output-js'];
37 let NoInputFile
: boolean = (inputFile
.length
== 0);
38 let NoOutputJSFile
: boolean = (outputJSFile
=== undefined || outputJSFile
== true);
39 let helpTriggered
: boolean = argv
['help'];
41 if (inputFile
.length
> 1){
42 console
.log("Sorry, the input file should be only one.");
46 if (helpTriggered
|| NoInputFile
|| NoOutputJSFile
){
47 console
.log(helpDesc
);
49 fs
.readFile(inputFile
[0], 'utf8', (err
: Error, inputText
: string) => {
52 let tree
= parser
.inputTextToTree(inputText
);
54 let output
= parser
.treeToJS(tree
);
56 fs
.writeFile(outputJSFile
, output
, (err
: Error) => {