Нещодавно ми вирішили на моїй роботі керівника по стилю рубін. Один із редакцій полягає в тому, що жоден рядок не повинен бути ширшим за 80 символів. Оскільки це проект Rails, у нас часто є рядки, які трохи довші - тобто " Користувач X хотів надіслати вам повідомлення про Thing Y ", який не завжди входить у межу стилю 80 символів.
Я розумію, що існує три способи мати довгий рядок з декількома рядками:
- HEREDOC
- % Q {}
- Фактичне з'єднання рядків.
Однак усі ці випадки закінчуються більш великими циклами обчислень, що здається дурним. Об'єднання рядків , очевидно, але HEREDOC
і %Q
я повинен вичистити новий рядок, через що - щось на зразок .gsub(/\n$/, '')
.
Чи є чистий синтаксичний спосіб зробити це, що еквівалентно простому цілому рядку в одному рядку? Мета, очевидно, не витрачати зайвих циклів лише тому, що я хочу, щоб мій код був трохи читабельнішим. (Так, я розумію, що ви повинні зробити цей компроміс дуже багато ... але для довжини струни це просто здається дурним.)
Оновлення: зворотна коса - це не саме те, що я хочу, тому що ви втрачаєте відступ, що дійсно впливає на стиль / читабельність.
Приклад:
if foo
string = "this is a \
string that spans lines"
end
Мені сказане трохи важко читати.
EDIT : я додав відповідь нижче; через три роки ми тепер маємо кричущий гередок.
\n
символи нового рядка чи ні. Верхня відповідь не тримає їх - все ж ваша відповідь є. Питання говорить "не знімаючи нових рядків" - але в описі йдеться "[...] Я повинен викреслити нові рядки".