diff --git a/mode/soy/soy.js b/mode/soy/soy.js index 79bfc24dfd6cd98c8b9930bea210cfbfb6ac4812..580c306f15f9ea18dbda3f7698f6798357e2953f 100644 --- a/mode/soy/soy.js +++ b/mode/soy/soy.js @@ -121,10 +121,11 @@ return tokenUntil(stream, state, /\{\/literal}/); case "string": - if (stream.match(/^.*?"/)) { - state.soyState.pop(); - } else { + var match = stream.match(/^.*?("|\\[\s\S])/); + if (!match) { stream.skipToEnd(); + } else if (match[1] == "\"") { + state.soyState.pop(); } return "string"; }