18 lines
430 B
Text
18 lines
430 B
Text
class String {
|
||
method wrap(width) {
|
||
var txt = self.gsub(/\s+/, " ")
|
||
var len = txt.len
|
||
var para = []
|
||
var i = 0
|
||
while (i < len) {
|
||
var j = (i + width)
|
||
while ((j < len) && (txt.char_at(j) != ' ')) { --j }
|
||
para.append(txt.substr(i, j-i))
|
||
i = j+1
|
||
}
|
||
return para.join("\n")
|
||
}
|
||
}
|
||
|
||
var text = 'aaa bb cc ddddd'
|
||
say text.wrap(6)
|