cursor_x = @term.width - 1
else
cursor_x = @term.x
- # invert the cursor TODO: make it blink
+ # invert the cursor
if @term.cursor_visible
@term.attributes[@term.y][cursor_x] ^= 0x080000
for i in [0...@term.text.length]
a = @term.attributes[i][j]
txt += @term.text[i][j]
if txt.length
- div.append(@stylize(txt, a))
+ if a is 0x000007
+ # don't output spaces at the end, for better copy/paste
+ ns = txt.length - 1
+ while ns >= 0 and txt.charAt(ns) is ' '
+ ns -= 1
+ if ns >= 0
+ if ns < txt.length - 1
+ txt = txt.substr 0, ns + 1
+ div.append(@stylize(txt, a))
+ else
+ # if entire line is spaces
+ if txt.length is @term.width
+ div.append('<br>')
+ else
+ div.append(@stylize(txt, a))
@parent_element.append(div)
if @term.cursor_visible
@term.attributes[@term.y][cursor_x] ^= 0x080000