fix some bugs when using 9term

This commit is contained in:
rsc 2004-04-25 20:50:09 +00:00
parent 2d930d4552
commit fb5ca0b97b

View file

@ -26,7 +26,7 @@ int wordsize(Rune*, int);
int nexttab(int); int nexttab(int);
int tabwid; int tabwid;
int mintab; int mintab = 1;
int linewidth=WIDTH; int linewidth=WIDTH;
int colonflag=0; int colonflag=0;
int tabflag=0; /* -t flag turned off forever, except in acme */ int tabflag=0; /* -t flag turned off forever, except in acme */
@ -227,7 +227,7 @@ nexttab(int col)
col -= col%tabwid; col -= col%tabwid;
return col; return col;
} }
return (col|(TAB-1))+1; return col+1;
} }
void void
@ -296,14 +296,23 @@ getwidth(void)
return; return;
} }
if((p = getenv("TERM")) != nil && strcmp(p, "9term") == 0)
if((p = getenv("font")) != nil) if((p = getenv("font")) != nil)
font = openfont(nil, p); font = openfont(nil, p);
if(windowrect(&ws) < 0) if(windowrect(&ws) < 0)
return; return;
if(ws.ws_ypixel == 0) if(ws.ws_xpixel == 0)
font = nil; font = nil;
if(font) if(font){
linewidth = ws.ws_ypixel; mintab = stringwidth(font, "0");
if((p = getenv("tabstop")) != nil)
tabwid = atoi(p)*mintab;
else
tabwid = 4*mintab;
tabflag = 1;
linewidth = ws.ws_xpixel;
}else
linewidth = ws.ws_col; linewidth = ws.ws_col;
} }