From f5bbd09b49fd688e6b9411db753dabf1d7b34b84 Mon Sep 17 00:00:00 2001 From: Paolo Moretti Date: Tue, 3 Nov 2015 16:52:27 +0000 Subject: [PATCH 1/2] add fixtures for #2613 --- .../templates-indentation/actual.js | 18 ++++++++++++++++++ .../templates-indentation/expected.js | 15 +++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 packages/babel-generator/test/fixtures/harmony-edgecase/templates-indentation/actual.js create mode 100644 packages/babel-generator/test/fixtures/harmony-edgecase/templates-indentation/expected.js diff --git a/packages/babel-generator/test/fixtures/harmony-edgecase/templates-indentation/actual.js b/packages/babel-generator/test/fixtures/harmony-edgecase/templates-indentation/actual.js new file mode 100644 index 0000000000..a4c21377e2 --- /dev/null +++ b/packages/babel-generator/test/fixtures/harmony-edgecase/templates-indentation/actual.js @@ -0,0 +1,18 @@ +function multilineTemplate() { + return `I'm done reconfoobling +${ 'the energy motron' } + ${'...or whatever'}`; +} + +{ + const foo = `spam +and eggs!`; + + const bar = `${ + 4 + + 2 + }`; + + const hello = `Hello +${ 'world' }`; +} diff --git a/packages/babel-generator/test/fixtures/harmony-edgecase/templates-indentation/expected.js b/packages/babel-generator/test/fixtures/harmony-edgecase/templates-indentation/expected.js new file mode 100644 index 0000000000..1f664f0ae2 --- /dev/null +++ b/packages/babel-generator/test/fixtures/harmony-edgecase/templates-indentation/expected.js @@ -0,0 +1,15 @@ +function multilineTemplate() { + return `I'm done reconfoobling +${ 'the energy motron' } + ${ '...or whatever' }`; +} + +{ + const foo = `spam +and eggs!`; + + const bar = `${ 4 + 2 }`; + + const hello = `Hello +${ 'world' }`; +} From 232bf76b4d90791030105565129cffe8a690478f Mon Sep 17 00:00:00 2001 From: Paolo Moretti Date: Tue, 3 Nov 2015 18:04:14 +0000 Subject: [PATCH 2/2] preserve original indentation in template literals, fixes #2613 --- packages/babel-generator/src/generators/template-literals.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/babel-generator/src/generators/template-literals.js b/packages/babel-generator/src/generators/template-literals.js index ed644eedb0..6b815a0a57 100644 --- a/packages/babel-generator/src/generators/template-literals.js +++ b/packages/babel-generator/src/generators/template-literals.js @@ -18,7 +18,7 @@ export function TemplateLiteral(node: Object) { this.print(quasis[i], node); if (i + 1 < quasis.length) { - this.push("${ "); + this._push("${ "); this.print(node.expressions[i], node); this.push(" }"); }