coffeescript multiline strings compile into multiline strings

iLemming picture iLemming · Oct 15, 2013 · Viewed 21k times · Source

How come that this string

"answer 
 to life 
 the universe 
 and everything
 is
 #{40+2}
"

compiles into

"  answer   to life   the universe   and everything  is  " + (40 + 2) + "";

how can I force coffescript to keep it multiline (keeping string interpolation intact):

 "answer \ 
 to life \
 the universe \
 and everything \
 is \
 "+(40+2)

Answer

nzifnab picture nzifnab · Oct 15, 2013

Try using the heredoc syntax:

myString = """
answer
to life
the universe
and everything
is
#{40+2}
"""

This converts to this javascript:

var myString;

myString = "answer\nto life\nthe universe\nand everything\nis\n" + (40 + 2);

There's not really any point to make it actually be on newlines in the compiled javascript visually, is there?