Lint command parser
This commit is contained in:
parent
b748e54437
commit
c92b9a7b25
1 changed files with 33 additions and 35 deletions
|
@ -1,42 +1,40 @@
|
|||
module.exports = (input) => {
|
||||
input = input.split(" ");
|
||||
let args = {_: []};
|
||||
let curr = null;
|
||||
let cont = false;
|
||||
for (let i = 0; i < input.length; i++) {
|
||||
const a = input[i];
|
||||
if(a.startsWith('--')) {
|
||||
if(curr) {
|
||||
args[curr] = true;
|
||||
}
|
||||
args[a.slice(2)] = "";
|
||||
curr = a.slice(2);
|
||||
} else if(curr) {
|
||||
if(a.startsWith('"')) {
|
||||
args[curr] = a.slice(1)+" ";
|
||||
} else if(a.endsWith('"')) {
|
||||
|
||||
args[curr] += a.slice(0, -1);
|
||||
curr = null;
|
||||
} else {
|
||||
if(args[curr].split(" ").length == 1) {
|
||||
args[curr] += a;
|
||||
curr = null;
|
||||
} else {
|
||||
args[curr] += a;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
args._.push(a);
|
||||
}
|
||||
}
|
||||
|
||||
if(curr && args[curr] == "") {
|
||||
input = input.split(" ");
|
||||
const args = { _: [] };
|
||||
let curr = null;
|
||||
for (let i = 0; i < input.length; i++) {
|
||||
const a = input[i];
|
||||
if (a.startsWith("--")) {
|
||||
if (curr) {
|
||||
args[curr] = true;
|
||||
}
|
||||
args[a.slice(2)] = "";
|
||||
curr = a.slice(2);
|
||||
} else if (curr) {
|
||||
if (a.startsWith("\"")) {
|
||||
args[curr] = `${a.slice(1)} `;
|
||||
} else if (a.endsWith("\"")) {
|
||||
args[curr] += a.slice(0, -1);
|
||||
curr = null;
|
||||
} else {
|
||||
if (args[curr].split(" ").length == 1) {
|
||||
args[curr] += a;
|
||||
curr = null;
|
||||
} else {
|
||||
args[curr] += a;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
args._.push(a);
|
||||
}
|
||||
}
|
||||
|
||||
return args;
|
||||
}
|
||||
if (curr && args[curr] == "") {
|
||||
args[curr] = true;
|
||||
}
|
||||
|
||||
return args;
|
||||
};
|
||||
|
||||
// /*
|
||||
// Format:
|
||||
|
|
Loading…
Reference in a new issue