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 function
This commit is contained in:
Jamie Webb authored and James Long committed 2017-01-13 12:57:27 -05:00
1 parent fb9c1e8098
commit ecb26b3432
1 file changed
+8 -1
+8 -1
View File
@@ -33,6 +33,13 @@ if (!filenames.length && !stdin) {
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) {
return jscodefmt.format(input, {
printWidth: argv["print-width"],
@@ -70,7 +77,7 @@ if (stdin) {
let output;
try {
output = format(input);
output = input.startsWith("#!") ? formatWithShebang(input) : format(input);
} catch (e) {
process.exitCode = 2;
console.error(e);