8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# File 'lib/sambot/base_command.rb', line 8
def print_wrapped(message, options = {})
indent = options[:indent] || 0
width = 100 - indent
paras = message.split("\n\n")
paras.map! do |unwrapped|
unwrapped.strip.tr("\n", ' ').squeeze(' ').gsub(/.{1,#{width}}(?:\s|\Z)/) { ($& + 5.chr).gsub(/\n\005/, "\n").gsub(/\005/, "\n") }
end
paras.each do |para|
para.split("\n").each do |line|
stdout.puts line.insert(0, ' ' * indent)
end
stdout.puts unless para == paras.last
end
end
|