Checkpoint -- still merging with Taj's version of the world.
This commit is contained in:
parent
b855148c9b
commit
c5561c23cf
37 changed files with 415 additions and 378 deletions
|
|
@ -143,6 +143,8 @@ void DWBdebug(dwbinit *ptr, int level)
|
|||
|
||||
/*****************************************************************************/
|
||||
|
||||
extern char *unsharp(char*);
|
||||
|
||||
char *DWBhome(void)
|
||||
{
|
||||
|
||||
|
|
@ -186,6 +188,7 @@ char *DWBhome(void)
|
|||
if ( (home = DWBHOME) == NULL || *home == '\0' || *home == ' ' )
|
||||
home = NULL;
|
||||
} /* End if */
|
||||
home = unsharp(home);
|
||||
} /* End if */
|
||||
|
||||
while (home && *home == '/' && *(home +1) == '/') /* remove extra slashes */
|
||||
|
|
|
|||
|
|
@ -1,3 +1,5 @@
|
|||
#define devname p9_devname
|
||||
|
||||
extern int TROFF;
|
||||
|
||||
extern int alphabet;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
/*
|
||||
* other
|
||||
*/
|
||||
#ifdef NOTDEF
|
||||
int pclose(FILE*);
|
||||
long filesize(int fd);
|
||||
int open(char *, int);
|
||||
|
|
@ -8,6 +9,7 @@ int read(int, char *, int);
|
|||
int lseek(int, long, int);
|
||||
int close(int);
|
||||
int getpid(void);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* c1.c
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ mbstowcs(wchar_t *pwcs, const char *s, size_t n)
|
|||
size_t
|
||||
wcstombs(char *s, const wchar_t *pwcs, size_t n)
|
||||
{
|
||||
int i, d;
|
||||
int /*i,*/ d;
|
||||
long c;
|
||||
char *p, *pe;
|
||||
char buf[3];
|
||||
|
|
|
|||
|
|
@ -10,9 +10,6 @@
|
|||
#include "ext.h"
|
||||
#include "dwbinit.h"
|
||||
|
||||
#undef MB_CUR_MAX
|
||||
#define MB_CUR_MAX 3
|
||||
|
||||
#include <setjmp.h>
|
||||
#include <time.h>
|
||||
|
||||
|
|
@ -50,6 +47,7 @@ char *progname; /* program name (troff or nroff) */
|
|||
int trace = 0; /* tracing mode: default off */
|
||||
int trace1 = 0;
|
||||
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
char *p;
|
||||
|
|
@ -57,7 +55,7 @@ main(int argc, char *argv[])
|
|||
Tchar i;
|
||||
char buf[100];
|
||||
|
||||
ifile = stdin;
|
||||
ifile = stdin; /* gcc */
|
||||
ptid = stdout;
|
||||
|
||||
buf[0] = '\0'; /* make sure it's empty (silly 3b2) */
|
||||
|
|
@ -279,7 +277,7 @@ void init2(void)
|
|||
|
||||
void cvtime(void)
|
||||
{
|
||||
long tt;
|
||||
time_t tt;
|
||||
struct tm *ltime;
|
||||
|
||||
time(&tt);
|
||||
|
|
@ -676,7 +674,6 @@ char ifilt[32] = { 0, 001, 002, 003, 0, 005, 006, 007, 010, 011, 012 };
|
|||
|
||||
Tchar getch0(void)
|
||||
{
|
||||
int j;
|
||||
Tchar i;
|
||||
|
||||
again:
|
||||
|
|
@ -719,7 +716,7 @@ g0:
|
|||
if (ip)
|
||||
goto again;
|
||||
}
|
||||
g2:
|
||||
//g2:
|
||||
if (i >= 040) /* zapped: && i < 0177 */
|
||||
goto g4;
|
||||
i = ifilt[i];
|
||||
|
|
@ -754,6 +751,7 @@ Tchar get1ch(FILE *fp) /* get one "character" from input, figure out what alphab
|
|||
if ((n = mbtowc(&wc, buf, p-buf)) >= 0)
|
||||
break;
|
||||
}
|
||||
|
||||
if (n == 1) /* real ascii, presumably */
|
||||
return wc;
|
||||
if (n == 0)
|
||||
|
|
@ -830,7 +828,7 @@ n1:
|
|||
if (p[0] == '-' && p[1] == 0) {
|
||||
ifile = stdin;
|
||||
strcpy(cfname[ifi], "stdin");
|
||||
} else if ((ifile = fopen(unsharp(p), "r")) == NULL) {
|
||||
} else if ((ifile = fopen(p, "r")) == NULL) {
|
||||
ERROR "cannot open file %s", p WARN;
|
||||
nfo -= mflg;
|
||||
done(02);
|
||||
|
|
@ -840,7 +838,7 @@ n1:
|
|||
return(0);
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
popf(void)
|
||||
{
|
||||
--ifi;
|
||||
|
|
@ -874,6 +872,7 @@ void flushi(void)
|
|||
* (internal names), spaces and special cookies (below 040).
|
||||
* Leave STX ETX ENQ ACK and BELL in to maintain compatibility with v7 troff.
|
||||
*/
|
||||
int
|
||||
getach(void)
|
||||
{
|
||||
Tchar i;
|
||||
|
|
@ -913,11 +912,10 @@ void casenx(void)
|
|||
nxf = frame + 1;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
getname(void)
|
||||
{
|
||||
int j, k;
|
||||
Tchar i;
|
||||
|
||||
lgf++;
|
||||
for (k = 0; k < NS - 1; k++) {
|
||||
|
|
@ -934,12 +932,11 @@ getname(void)
|
|||
|
||||
void caseso(void)
|
||||
{
|
||||
FILE *fp;
|
||||
char *p, *q;
|
||||
FILE *fp = 0;
|
||||
|
||||
lgf++;
|
||||
nextf[0] = 0;
|
||||
if (skip() || !getname() || (fp = fopen(unsharp(nextf), "r")) == NULL || ifi >= NSO) {
|
||||
if (skip() || !getname() || (fp = fopen(nextf, "r")) == NULL || ifi >= NSO) {
|
||||
ERROR "can't open file %s", nextf WARN;
|
||||
done(02);
|
||||
}
|
||||
|
|
@ -1008,7 +1005,7 @@ void casecf(void)
|
|||
nextf[0] = 0;
|
||||
if (!skip() && getname()) {
|
||||
if (strncmp("<<", nextf, 2) != 0) {
|
||||
if ((fd = fopen(unsharp(nextf), "r")) == NULL) {
|
||||
if ((fd = fopen(nextf, "r")) == NULL) {
|
||||
ERROR "can't open file %s", nextf WARN;
|
||||
done(02);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -74,14 +74,13 @@ static char *parse(char *s, int typeit) /* convert \0, etc to nroff driving tabl
|
|||
|
||||
static int getnrfont(FILE *fp) /* read the nroff description file */
|
||||
{
|
||||
FILE *fin;
|
||||
Chwid chtemp[NCHARS];
|
||||
static Chwid chinit;
|
||||
int i, nw, n, wid, code, type;
|
||||
char buf[100], ch[100], s1[100], s2[100], cmd[300];
|
||||
char buf[100], ch[100], s1[100], s2[100];
|
||||
wchar_t wc;
|
||||
|
||||
|
||||
code = 0;
|
||||
chinit.wid = 1;
|
||||
chinit.str = "";
|
||||
for (i = 0; i < ALPHABET; i++) {
|
||||
|
|
@ -139,7 +138,7 @@ static int getnrfont(FILE *fp) /* read the nroff description file */
|
|||
void n_ptinit(void)
|
||||
{
|
||||
int i;
|
||||
char *p, *cp;
|
||||
char *p;
|
||||
char opt[50], cmd[100];
|
||||
FILE *fp;
|
||||
|
||||
|
|
@ -186,7 +185,7 @@ void n_ptinit(void)
|
|||
/* hyphalg = 0; /* for testing */
|
||||
|
||||
strcat(termtab, devname);
|
||||
if ((fp = fopen(unsharp(termtab), "r")) == NULL) {
|
||||
if ((fp = fopen(termtab, "r")) == NULL) {
|
||||
ERROR "cannot open %s", termtab WARN;
|
||||
exit(-1);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -137,7 +137,6 @@ void outweird(int k) /* like ptchname() but ascii */
|
|||
|
||||
void outascii(Tchar i) /* print i in best-guess ascii */
|
||||
{
|
||||
char *p;
|
||||
int j = cbits(i);
|
||||
|
||||
/* is this ever called with NROFF set? probably doesn't work at all. */
|
||||
|
|
|
|||
|
|
@ -64,7 +64,7 @@ void blockinit(void)
|
|||
|
||||
char *grow(char *ptr, int num, int size) /* make array bigger */
|
||||
{
|
||||
char *p, new;
|
||||
char *p;
|
||||
|
||||
if (ptr == NULL)
|
||||
p = (char *) calloc(num, size);
|
||||
|
|
@ -307,7 +307,6 @@ void growcontab(void)
|
|||
Offset finds(int mn)
|
||||
{
|
||||
int i;
|
||||
Tchar j = IMP;
|
||||
Offset savip;
|
||||
|
||||
oldmn = findmn(mn);
|
||||
|
|
@ -372,6 +371,7 @@ int copyb(void)
|
|||
Offset savoff;
|
||||
Uchar *p;
|
||||
|
||||
savoff = 0;
|
||||
if (skip() || !(j = getrq()))
|
||||
j = '.';
|
||||
req = j;
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ void setn(void)
|
|||
for( i = 0; tabtab[i] != 0 && i < NTAB; i++) {
|
||||
if (i > 0)
|
||||
buf[j++] = ' ';
|
||||
sprintf(&buf[j], "%d", tabtab[i] & TABMASK);
|
||||
sprintf(&buf[j], "%ld", tabtab[i] & TABMASK);
|
||||
j = strlen(buf);
|
||||
if ( tabtab[i] & RTAB)
|
||||
sprintf(&buf[j], "uR");
|
||||
|
|
|
|||
|
|
@ -78,11 +78,12 @@ void casens(void)
|
|||
dip->nls++;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
chget(int c)
|
||||
{
|
||||
Tchar i;
|
||||
|
||||
i = 0;
|
||||
if (skip() || ismot(i = getch()) || cbits(i) == ' ' || cbits(i) == '\n') {
|
||||
ch = i;
|
||||
return(c);
|
||||
|
|
@ -142,7 +143,7 @@ void casenh(void)
|
|||
hyf = 0;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
max(int aa, int bb)
|
||||
{
|
||||
if (aa > bb)
|
||||
|
|
@ -333,7 +334,7 @@ void casech(void)
|
|||
nlist[k] = i;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
findn(int i)
|
||||
{
|
||||
int k;
|
||||
|
|
@ -408,7 +409,7 @@ void casefm(void)
|
|||
return;
|
||||
}
|
||||
if (fcache[i].fp == NULL) {
|
||||
if( (fcache[i].fp = fopen(unsharp(nextf), "w")) == NULL) {
|
||||
if( (fcache[i].fp = fopen(nextf, "w")) == NULL) {
|
||||
ERROR "fm: cannot open %s", nextf WARN;
|
||||
return;
|
||||
}
|
||||
|
|
@ -742,7 +743,7 @@ void eatblk(int inblk)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
cmpstr(Tchar c)
|
||||
{
|
||||
int j, delim;
|
||||
|
|
@ -830,7 +831,7 @@ void caserd(void)
|
|||
pushi(RD_OFFSET, PAIR('r','d'));
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
rdtty(void)
|
||||
{
|
||||
char onechar;
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@
|
|||
* n6.c -- width functions, sizes and fonts
|
||||
*/
|
||||
|
||||
int
|
||||
n_width(Tchar j)
|
||||
{
|
||||
int i, k;
|
||||
|
|
@ -294,7 +295,7 @@ void n_casebd(void)
|
|||
{
|
||||
int i, j, k;
|
||||
|
||||
k = 0;
|
||||
j = k = 0;
|
||||
bd0:
|
||||
if (skip() || !(i = getrq()) || (j = findft(i)) == -1) {
|
||||
if (k)
|
||||
|
|
|
|||
|
|
@ -354,6 +354,7 @@ void newline(int a)
|
|||
int i, j, nlss;
|
||||
int opn;
|
||||
|
||||
nlss = 0;
|
||||
if (a)
|
||||
goto nl1;
|
||||
if (dip != d) {
|
||||
|
|
@ -445,7 +446,7 @@ nl2:
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
findn1(int a)
|
||||
{
|
||||
int i, j;
|
||||
|
|
@ -477,7 +478,7 @@ void chkpn(void)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
findt(int a)
|
||||
{
|
||||
int i, j, k;
|
||||
|
|
@ -504,7 +505,7 @@ findt(int a)
|
|||
return(k);
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
findt1(void)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -539,7 +540,7 @@ e1:
|
|||
goto e1;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
movword(void)
|
||||
{
|
||||
int w;
|
||||
|
|
@ -648,7 +649,7 @@ void setnel(void)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
getword(int x)
|
||||
{
|
||||
int j, k;
|
||||
|
|
@ -656,6 +657,7 @@ getword(int x)
|
|||
int noword;
|
||||
int obits;
|
||||
|
||||
j = 0;
|
||||
noword = 0;
|
||||
if (x)
|
||||
if (pendw) {
|
||||
|
|
|
|||
|
|
@ -72,7 +72,7 @@ void hyphen(Tchar *wp)
|
|||
}
|
||||
}
|
||||
|
||||
static alpha(Tchar i) /* non-zero if really alphabetic */
|
||||
static int alpha(Tchar i) /* non-zero if really alphabetic */
|
||||
{
|
||||
if (ismot(i))
|
||||
return 0;
|
||||
|
|
@ -82,7 +82,7 @@ static alpha(Tchar i) /* non-zero if really alphabetic */
|
|||
return isalpha(cbits(i));
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
punct(Tchar i)
|
||||
{
|
||||
if (!i || alpha(i))
|
||||
|
|
@ -217,7 +217,7 @@ int exword(void)
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
suffix(void)
|
||||
{
|
||||
Tchar *w;
|
||||
|
|
@ -269,7 +269,7 @@ mark:
|
|||
goto again;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
maplow(int i)
|
||||
{
|
||||
if (isupper(i))
|
||||
|
|
@ -277,7 +277,7 @@ maplow(int i)
|
|||
return(i);
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
vowel(int i)
|
||||
{
|
||||
switch (i) {
|
||||
|
|
@ -310,7 +310,7 @@ void digram(void)
|
|||
Tchar *nhyend, *maxw;
|
||||
int maxval;
|
||||
extern char bxh[26][13], bxxh[26][13], xxh[26][13], xhx[26][13], hxx[26][13];
|
||||
|
||||
maxw = 0;
|
||||
again:
|
||||
if (!(w = chkvow(hyend + 1)))
|
||||
return;
|
||||
|
|
@ -341,7 +341,7 @@ again:
|
|||
goto again;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
dilook(int a, int b, char t[26][13])
|
||||
{
|
||||
int i, j;
|
||||
|
|
@ -461,13 +461,19 @@ static int texit(Tchar *start, Tchar *end) /* hyphenate as in tex, return # foun
|
|||
characters. sigh.
|
||||
*/
|
||||
|
||||
extern char *unsharp(char*);
|
||||
|
||||
static char *texhyphens;
|
||||
|
||||
static int readpats(void)
|
||||
{
|
||||
FILE *fp;
|
||||
char buf[200], buf1[200];
|
||||
|
||||
if ((fp = fopen(unsharp(TEXHYPHENS), "r")) == NULL
|
||||
&& (fp = fopen(unsharp(DWBalthyphens), "r")) == NULL) {
|
||||
if(texhyphens == 0)
|
||||
texhyphens = unsharp(TEXHYPHENS);
|
||||
if ((fp = fopen(texhyphens, "r")) == NULL
|
||||
&& (fp = fopen(DWBalthyphens, "r")) == NULL) {
|
||||
ERROR "warning: can't find hyphen.tex" WARN;
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@ s1:
|
|||
pushback(linebuf);
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
eat(int c)
|
||||
{
|
||||
int i;
|
||||
|
|
@ -341,6 +341,7 @@ Tchar setfield(int x)
|
|||
int savepos;
|
||||
static Tchar wbuf[] = { WORDSP, 0};
|
||||
|
||||
rchar = 0;
|
||||
if (x == tabch)
|
||||
rchar = tabc | chbits;
|
||||
else if (x == ldrch)
|
||||
|
|
|
|||
|
|
@ -159,6 +159,7 @@ int ptout0(Tchar *pi)
|
|||
Tchar i;
|
||||
int outsize; /* size of object being printed */
|
||||
|
||||
w = 0;
|
||||
outsize = 1; /* default */
|
||||
i = *pi;
|
||||
k = cbits(i);
|
||||
|
|
@ -176,11 +177,11 @@ int ptout0(Tchar *pi)
|
|||
xpts = fbits(i); /* sneaky, font bits as size bits */
|
||||
if (xpts != mpts)
|
||||
ptps();
|
||||
OUT "x H %d\n", sbits(i) PUT;
|
||||
OUT "x H %ld\n", sbits(i) PUT;
|
||||
return(outsize);
|
||||
}
|
||||
if (k == SLANT) {
|
||||
OUT "x S %d\n", sfbits(i)-180 PUT;
|
||||
OUT "x S %ld\n", sfbits(i)-180 PUT;
|
||||
return(outsize);
|
||||
}
|
||||
if (k == WORDSP) {
|
||||
|
|
@ -300,7 +301,7 @@ int ptout0(Tchar *pi)
|
|||
pi[1] = '~';
|
||||
case DRAWSPLINE: /* spline */
|
||||
default: /* something else; copy it like spline */
|
||||
OUT "D%c %d %d", cbits(pi[1]), dx, dy PUT;
|
||||
OUT "D%ld %d %d", cbits(pi[1]), dx, dy PUT;
|
||||
hpos += dx;
|
||||
vpos += dy;
|
||||
if (cbits(pi[3]) == DRAWFCN || cbits(pi[4]) == DRAWFCN) {
|
||||
|
|
|
|||
|
|
@ -17,13 +17,14 @@ Font fonts[MAXFONTS+1]; /* font info + ptr to width info */
|
|||
|
||||
#define eq(s1, s2) (strcmp(s1, s2) == 0)
|
||||
|
||||
int
|
||||
getdesc(char *name)
|
||||
{
|
||||
FILE *fin;
|
||||
char cmd[100], s[100];
|
||||
int i, v;
|
||||
|
||||
if ((fin = fopen(unsharp(name), "r")) == NULL)
|
||||
if ((fin = fopen(name, "r")) == NULL)
|
||||
return -1;
|
||||
while (fscanf(fin, "%s", cmd) != EOF) {
|
||||
if (strcmp(cmd, "res") == 0) {
|
||||
|
|
@ -64,7 +65,7 @@ static int checkfont(char *name)
|
|||
char buf[300], buf2[300];
|
||||
int i, status = -1;
|
||||
|
||||
if ((fp = fopen(unsharp(name), "r")) == NULL)
|
||||
if ((fp = fopen(name, "r")) == NULL)
|
||||
return -1;
|
||||
for (i = 1; i <= 10; i++) {
|
||||
if (fgets(buf, sizeof buf, fp) == NULL)
|
||||
|
|
@ -85,6 +86,7 @@ static int checkfont(char *name)
|
|||
|
||||
}
|
||||
|
||||
int
|
||||
getfont(char *name, int pos) /* create width tab for font */
|
||||
{
|
||||
FILE *fin;
|
||||
|
|
@ -94,10 +96,11 @@ getfont(char *name, int pos) /* create width tab for font */
|
|||
int i, nw, n, wid, kern, code, type;
|
||||
char buf[100], ch[100], s1[100], s2[100], s3[100], cmd[300];
|
||||
|
||||
nw = code = 0;
|
||||
/* fprintf(stderr, "read font %s onto %d\n", name, pos); */
|
||||
if (checkfont(name) == -1)
|
||||
return -1;
|
||||
if ((fin = fopen(unsharp(name), "r")) == NULL)
|
||||
if ((fin = fopen(name, "r")) == NULL)
|
||||
return -1;
|
||||
for (i = 0; i < ALPHABET; i++)
|
||||
chtemp[i] = chinit; /* zero out to begin with */
|
||||
|
|
@ -189,6 +192,7 @@ getfont(char *name, int pos) /* create width tab for font */
|
|||
return 1;
|
||||
}
|
||||
|
||||
int
|
||||
chadd(char *s, int type, int install) /* add s to global character name table; */
|
||||
{ /* or just look it up */
|
||||
|
||||
|
|
@ -231,6 +235,7 @@ char *chname(int n) /* return string for char with index n */
|
|||
return "";
|
||||
}
|
||||
|
||||
int
|
||||
getlig(FILE *fin) /* pick up ligature list */
|
||||
{
|
||||
int lig;
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ int ccstab[MAXFONTS+1];
|
|||
int bdtab[MAXFONTS+1];
|
||||
int sbold = 0;
|
||||
|
||||
int
|
||||
t_width(Tchar j)
|
||||
{
|
||||
int i, k;
|
||||
|
|
@ -75,6 +76,7 @@ void zapwcache(int s)
|
|||
widcache[i].fontpts = 0;
|
||||
}
|
||||
|
||||
int
|
||||
onfont(int n, int f) /* is char n on font f? */
|
||||
{
|
||||
int i;
|
||||
|
|
@ -108,6 +110,7 @@ onfont(int n, int f) /* is char n on font f? */
|
|||
return -1; /* vanilla not found */
|
||||
}
|
||||
|
||||
int
|
||||
getcw(int i)
|
||||
{
|
||||
int k, n, x;
|
||||
|
|
@ -218,6 +221,7 @@ Tchar t_setch(int c)
|
|||
char temp[50];
|
||||
char *s;
|
||||
|
||||
j = 0;
|
||||
s = temp;
|
||||
if (c == '(') { /* \(xx */
|
||||
if ((*s++ = getach()) == 0 || (*s++ = getach()) == 0)
|
||||
|
|
@ -283,7 +287,7 @@ Tchar t_setabs(void) /* set absolute char from \N'...' */
|
|||
* returns -1 on error
|
||||
*/
|
||||
|
||||
|
||||
int
|
||||
t_findft(int i)
|
||||
{
|
||||
int k;
|
||||
|
|
@ -362,7 +366,7 @@ void casps1(int i)
|
|||
mchbits();
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
findps(int i)
|
||||
{
|
||||
int j, k;
|
||||
|
|
@ -396,6 +400,7 @@ void t_setps(void)
|
|||
{
|
||||
int i, j;
|
||||
|
||||
j = 0;
|
||||
i = cbits(getch());
|
||||
if (isdigit(i)) { /* \sd or \sdd */
|
||||
i -= '0';
|
||||
|
|
@ -703,10 +708,12 @@ char *strdupl(const char *s) /* make a copy of s */
|
|||
return t;
|
||||
}
|
||||
|
||||
int
|
||||
setfp(int pos, int f, char *truename, int print) /* mount font f at position pos[0...nfonts] */
|
||||
{
|
||||
char pathname[NS], shortname[NS], *sl;
|
||||
|
||||
sl = (char*)0;
|
||||
zapwcache(0);
|
||||
if (truename)
|
||||
strcpy(shortname, truename);
|
||||
|
|
@ -780,6 +787,7 @@ void casebd(void)
|
|||
{
|
||||
int i, j, k;
|
||||
|
||||
j=0;
|
||||
if (!TROFF) {
|
||||
n_casebd();
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -3,10 +3,13 @@
|
|||
#include <limits.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#undef MB_CUR_MAX
|
||||
#define MB_CUR_MAX 3
|
||||
|
||||
#define NROFF (!TROFF)
|
||||
|
||||
|
||||
/* Site dependent definitions */
|
||||
|
||||
#ifndef TMACDIR
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue