1998-08-15 [xk]term の underline のゴミ
気がついたのは一年くらい前だけど、今思い出したので書いておく。
[xk]term上で
#!/usr/local/bin/perl for (0..10){ print "\x1b[${_};1H\x1b[4mXXXX\n"; } for (0..10){ print "\x1b[${_};1H\x1b[m \n"; }
とすると、underline のゴミが残る。
(やってることは、underline で文字描いて、同じ長さ分の space を上描きしてるだけ)
rxvt は平気だった。
underline の長さががフォントのサイズを越えている?
screen.c の UNDERLINE のところを
XDrawLine(screen-\>display, TextWindow(screen), gc, x, y+1, x+n*FontWidth(screen) - 1 , y+1);
みたいに -1 かましてやればとりあえず平気。
n*FontWidth(screen) でも問題ないような気がするが、なんで 1dot 残るんだ?
GC の線が太さを持っているから?
EOF