Quebrando strings longas em várias linhas em Ruby sem remover novas linhas

Nós decidimos recentemente no meu trabalho para um guia de estilo rubi. Um dos editais é que nenhuma linha deve ter mais de 80 caracteres. Como esse é um projeto Rails, geralmente temos strings um pouco mais longas, por exemplo "O usuário X queria enviar uma mensagem sobre o Thing Y"isso nem sempre se encaixa no limite de 80 caracteres.

Eu entendo que existem três maneiras de ter um longo período de seqüência de caracteres várias linhas:

HEREDOC% Q {}Concatenação real de cadeias.

No entanto, todos esses casos acabam tendo mais ciclos de computação, o que parece bobo. Concatenação de cordas obviamente, mas paraHEREDOC e%Q Eu tenho que retirar as novas linhas, através de algo como.gsub(/\n$/, '').

Existe uma maneira de sintaxe pura para fazer isso, que é equivalente a apenas ter a seqüência inteira em uma linha? O objetivo é, obviamente, não gastar nenhum ciclo extra só porque eu quero que meu código seja um pouco mais legível. (Sim, eu percebo que você tem que fazer essa troca muito ... mas para comprimento de string, isso só parece bobo.)

Atualização: as barras invertidas não são exatamente o que eu quero porque você perde o recuo, o que realmente afeta o estilo / legibilidade.

Exemplo:

<code>if foo
  string = "this is a \  
string that spans lines"  
end
</code>

Eu acho o anterior um pouco difícil de ler.

EDITAR: Eu adicionei uma resposta abaixo; três anos depois, agora temos o heredoc rabiscado.

questionAnswers(5)

yourAnswerToTheQuestion