예제 #1
0
파일: n7.c 프로젝트: dank101/4.2BSD
donum(){
	register i, nw;
	extern pchar();

	nrbits = nmbits;
	nw = width('1' | nrbits);
	if(nn){
		nn--;
		goto d1;
	}
	if(v.ln%ndf){
		v.ln++;
	d1:
		un += nw*(3+nms+ni);
		return;
	}
	i = 0;
	if(v.ln<100)i++;
	if(v.ln<10)i++;
	horiz(nw*(ni+i));
	nform = 0;
	fnumb(v.ln,pchar);
	un += nw*nms;
	v.ln++;
}
예제 #2
0
파일: n7.c 프로젝트: 99years/plan9
void donum(void)
{
	int i, nw;
	int lnv = numtabp[LN].val;

	nrbits = nmbits;
	nw = width('1' | nrbits);
	if (nn) {
		nn--;
		goto d1;
	}
	if (lnv % ndf) {
		numtabp[LN].val++;
d1:
		un += nw * (nmwid + nms + ni);
		return;
	}
	i = 0;
	do {		/* count digits in numtabp[LN].val */
		i++;
	} while ((lnv /= 10) > 0);
	horiz(nw * (ni + max(nmwid-i, 0)));
	nform = 0;
	fnumb(numtabp[LN].val, pchar);
	un += nw * nms;
	numtabp[LN].val++;
}
예제 #3
0
int
donum()
{
	int	i, nw;
	extern int pchar();

	nrbits = nmbits;
	nw = width('1' | nrbits);
	if (nn) {
		nn--;
		goto d1;
	}
	if (numtab[LN].val % ndf) {
		numtab[LN].val++;
d1:
		un += nw * (3 + nms + ni);
		return (0);
	}
	i = 0;
	if (numtab[LN].val < 100)
		i++;
	if (numtab[LN].val < 10)
		i++;
	horiz(nw * (ni + i));
	nform = 0;
	fnumb(numtab[LN].val, pchar);
	un += nw * nms;
	numtab[LN].val++;

	return (0);
}
예제 #4
0
파일: n4.c 프로젝트: aahud/harvey
/* insert into input number i, in format form, with size-font bits bits */
void setn1(int i, int form, Tchar bits)
{
	numbufp = numbuf;
	nrbits = bits;
	nform = form;
	fnumb(i, wrc);
	*numbufp = 0;
	pushback(numbuf);
}