treat shebang outside of parsing (#137)
* treat shebang outside of parsing * use less costly indexOf and reuse format function * avoid reprinting new line and potential double space at start * move options back to format functionmaster
parent
fb9c1e8098
commit
ecb26b3432
|
@ -33,6 +33,13 @@ if (!filenames.length && !stdin) {
|
||||||
process.exit(1);
|
process.exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function formatWithShebang(input) {
|
||||||
|
const index = input.indexOf("\n");
|
||||||
|
const shebang = input.slice(0, index + 1);
|
||||||
|
const programInput = input.slice(index + 1);
|
||||||
|
return shebang + format(programInput);
|
||||||
|
}
|
||||||
|
|
||||||
function format(input) {
|
function format(input) {
|
||||||
return jscodefmt.format(input, {
|
return jscodefmt.format(input, {
|
||||||
printWidth: argv["print-width"],
|
printWidth: argv["print-width"],
|
||||||
|
@ -70,7 +77,7 @@ if (stdin) {
|
||||||
|
|
||||||
let output;
|
let output;
|
||||||
try {
|
try {
|
||||||
output = format(input);
|
output = input.startsWith("#!") ? formatWithShebang(input) : format(input);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
process.exitCode = 2;
|
process.exitCode = 2;
|
||||||
console.error(e);
|
console.error(e);
|
||||||
|
|
Loading…
Reference in New Issue