1) Я хочу к автоматическому переносу текст словами так, чтобы каждая строка не превышала 56 символов. Существует ли метод для того, чтобы сделать это, или я должен прокрутить свое собственное?
@comment_text = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
Мое представление:
<%= @comment_text.cool_string_function( 56 ) %>
представил бы:
Lorem ipsum dolor sit amet, consectetur adipisicing
elit, sed do eiusmod tempor incididunt ut labore et
dolore magna aliqua.
2) Я хочу расположить текст с отступом 4 пробелами так, чтобы:
<%= @comment_text.cool_string_function( {:width => 56, :indent => 4} ) %>
представил бы:
Lorem ipsum dolor sit amet, consectetur adipisicing
elit, sed do eiusmod tempor incididunt ut labore et
dolore magna aliqua.
Я полагаю, что функция, которую вы ищете, это word_wrap
. Что-то вроде этого должно сработать:
<%= word_wrap @comment_text, :line_width => 56 %>
Вы можете объединить это с gsub
, чтобы получить желаемый отступ:
<%= word_wrap(@comment_text, :line_width => 52).gsub("\n", "\n ") %>
Но вам, вероятно, следует перенести это в вспомогательный метод, чтобы сохранить чистоту вида.
Возможно, вам поможет word_wrap помощник.
Для отступа текста вы можете заменить \ n
(новая строка) новой строкой + 4 пробела.