Be consistent

This commit is contained in:
James Brooks 2017-07-27 19:55:53 -04:00
parent 2fb885282b
commit 085e76d7bb

View file

@ -27,105 +27,110 @@ function md_trim(str, context) {
function handle(filename, anchor) {
fs.readFile(filename, 'utf8', function (err,text) {
if (err) {
return console.log(err);
}
var lines = text.split("\n");
var cur_line = 0;
var line = ""
var table_name = "";
var col_num = 0;
var cols = [];
var rows = [];
if (err) {
return console.log(err);
}
function read_line() {
return lines[cur_line++];
}
var root = {};
while (true) {
var lines = text.split("\n");
var cur_line = 0;
var line = ""
var table_name = "";
var col_num = 0;
var cols = [];
var rows = [];
while (line.indexOf(anchor) == -1 && cur_line != lines.length) {
line = read_line();
var root = {};
function read_line() {
return lines[cur_line++];
}
if (cur_line == lines.length) {
break;
}
table_name = line.split(anchor)[1];
table_name = md_trim(table_name, 0)
line = read_line()
if (line) {
line = line.split("|")
for (var j in line) {
line[j] = md_trim(line[j], 0)
if ((j == 0 || j == line.length - 1) && line[j] === "") {
} else {
cols.push(line[j]);
}
while (true) {
var cols = [];
var rows = [];
while (line.indexOf(anchor) == -1 && cur_line != lines.length) {
line = read_line();
}
if (line.length) {
cols = line;
rows.push(cols)
} else {
console.error("Markdown expects column title")
if (cur_line == lines.length) {
break;
}
} else {
console.error("Markdown expects table content")
break;
}
table_name = line.split(anchor)[1];
table_name = md_trim(table_name, 0)
line = read_line()
if (!line) {
console.error("Markdown expects table spliter")
break;
}
line = read_line()
while (line.indexOf("|") != -1 && cur_line != lines.length) {
var line_this = line.split("|")
var row = []
for (var j in line_this) {
line_this[j] = md_trim(line_this[j], j)
if ((j == 0 || j == line_this.length - 1) && line_this[j] === "") {
} else {
row.push(line_this[j]);
}
}
rows.push(row);
line = read_line()
if (line) {
line = line.split("|")
for (var j in line) {
line[j] = md_trim(line[j], 0)
if ((j == 0 || j == line.length - 1) && line[j] === "") {
} else {
cols.push(line[j]);
}
}
if (line.length) {
cols = line;
rows.push(cols)
} else {
console.error("Markdown expects column title")
break;
}
} else {
console.error("Markdown expects table content")
break;
}
line = read_line()
if (!line) {
console.error("Markdown expects table spliter")
break;
}
line = read_line()
while (line.indexOf("|") != -1 && cur_line != lines.length) {
var line_this = line.split("|")
var row = []
for (var j in line_this) {
line_this[j] = md_trim(line_this[j], j)
if ((j == 0 || j == line_this.length - 1) && line_this[j] === "") {
} else {
row.push(line_this[j]);
}
}
rows.push(row);
line = read_line()
}
var data=[];
for (var j in rows) {
if (j != 0) {
var ele = {};
for (var k in rows[j]) {
ele[rows[0][k]] = rows[j][k];
}
data.push(ele);
}
}
root[table_name] = data;
}
var data=[];
for (var j in rows) {
if (j != 0) {
var ele = {};
for (var k in rows[j]) {
ele[rows[0][k]] = rows[j][k];
}
data.push(ele);
}
}
root[table_name] = data;
}
console.log(JSON.stringify(root));
});
console.log(JSON.stringify(root));
});
}
if (process.argv.length < 3) {
console.log("No .md file passed!");
return;
}
if (process.argv.length < 4) {
anchorText = "###";
anchorText = "###";
} else {
anchorText = process.argv[3];
anchorText = process.argv[3];
}
handle(process.argv[2].toString(), anchorText);