[comp.os.minix] Less pager for minix 1.3, Part01/04

bob@dhw68k.cts.com (Bob Best) (10/25/88)

Here is Mark Nudelman's less version 97 for minix.  This was basically a
trivial port.  I think that says quite a lot about where Minix has
progressed to.  The only modification was to remove the '+n' linenumber
option to the 'v' command.  Mined does not support this vi option.  If
elle, or stevie, or other favorite editor does, then remove line 733 in
command.c.  I also added defines for regcmp and regex in defines.h to
find regcomp and regexec.  I added a dummy regerror.c.  I have included
the termcap entry from Charles Hedrick.  It seems to function well in
mono mode.  I haven't tested the color cap.  The patch for the buggy
calloc() call has already been applied.  That was the only bug that Mark
has officially reported.

To install:
1) strip all headers and trailers from the 4 parts.
2) cat the 4 parts >less.uue
		39836 135353 less.uue
3) uudecode less.uue creating less.tar.Z
		04765  98220 less.tar.Z
4) compress -d less.tar.Z
		21828 212992 less.tar
5) tar x less.tar in your working less subdirectory
6) make - you may want to redefine EDIT_PGM in defines.h before this
This should create the less and lesskey executables
7) install less and lesskey in /usr/bin
8) install less.help in /usr/local/bin
9) install termcap in /etc
10) make sure that TERM=minix or TERM=minix-co is in your environment

Bob
----------
begin 644 less.tar.Z
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
-- 
Bob Best
uucp: ...{trwrb,hplabs}!felix!dhw68k!bob	InterNet: bob@dhw68k.cts.com

bob@dhw68k.cts.com (Bob Best) (10/25/88)

In the introductory remarks to the Less pager posting, I mentioned that
the '+n' linenumber option can be enabled by removing line 733 from
command.c.  This was in error.  The actual line number is 732, displayed
here:
			c = 0; /* mined doesn't accept '+n' syntax */

It should be straightforward to modify this section of code if your editor
uses different options to start at a specific line number.

Also, the default editor for the 'v' command can be set by using the $EDITOR
environment variable.  This eliminates the need to recompile after changing
EDIT_PGM in defines.h.  The default is mined.

Bob

-- 
Bob Best
uucp: ...{trwrb,hplabs}!felix!dhw68k!bob	InterNet: bob@dhw68k.cts.com

bob@dhw68k.cts.com (Bob Best) (10/26/88)

The termcap file included with the Less pager posting assumes that the
console driver wraps long lines.  To fix this, remove the 'am' field
from the entries for minix and minix-co.  In fact, I just discovered
that the entries for both minix and minix-co contain 2 'am' fields.
Remove both of them.  This will enable Less to properly display long
lines.  I am using the official console source from the 1.3 posting
which does not automatically wrap.  If you are using one of the modified
packages that perform line wrapping in the console driver, then this fix
will probably not apply.

Bob
-- 
Bob Best
uucp: ...{trwrb,hplabs}!felix!dhw68k!bob	InterNet: bob@dhw68k.cts.com

fischer@iesd.uucp (Lars P. Fischer) (11/10/88)

In article <13757@dhw68k.cts.com> bob@dhw68k.cts.com (Bob Best) writes:
>Here is Mark Nudelman's less version 97 for minix.  This was basically a
>trivial port.

I would like to propose that when posting a minix version of a
standard tool (e.g. one that has been posted to comp.sources.unix),
only the diffs should be posted. This will reduce cost, and it will
make it simpler to maintain both versions.

Posting all of "less" seems rather pointless as it was posted to
comp.sources.unix recently.

/Lars
-- 
Lars Fischer,  fischer@iesd.dk, {...}!mcvax!diku!iesd!fischer
We must remove the TV-induced stupor that lies like a fog
across the land.		- T. H. Nelson

bob@dhw68k.cts.com (Bob Best) (11/14/88)

In article <994@iesd.uucp> fischer@iesd.dk (Lars P. Fischer) writes:
>I would like to propose that when posting a minix version of a
>standard tool (e.g. one that has been posted to comp.sources.unix),
>only the diffs should be posted. This will reduce cost, and it will
>make it simpler to maintain both versions.
>
>Posting all of "less" seems rather pointless as it was posted to
>comp.sources.unix recently.
>

This was certainly a consideration on my part.  It would have been much
simpler to just post the diffs to the recent posting in comp.sources.unix.
However, it seemed likely that a significant portion of the interested
Minix users may not have received the comp.sources posting, so I took the
chance of clogging the net with a complete Minix version.  All I can say 
is that I don't do this every day, and I hope that most people were pleased
with what they got.  I also received criticism for transmitting a compressed
tar archive in uuencoded format.  I apologize to those disturbed by this,
and promise to conform to the accepted shar archive standard in the future.

Bob
-- 
Bob Best
uucp: {spsd, zardoz, felix}!dhw68k!bob	InterNet: bob@dhw68k.cts.com

ast@cs.vu.nl (Andy Tanenbaum) (11/14/88)

In article <994@iesd.uucp> fischer@iesd.dk (Lars P. Fischer) writes:
>Posting all of "less" seems rather pointless as it was posted to
>comp.sources.unix recently.


I disagree.  Not everyone reads comp.sources.unix, and telling people
to fish something out of a group that may since have been purged from
one's disk is a nuisance.  I thinky posting the MINIX version here
once is a good idea.  Patches to that should be cdiffs, of course.

Andy Tanenbaum (ast@cs.vu.nl)

bds@lzaz.ATT.COM (B.SZABLAK) (11/15/88)

In article <1652@ast.cs.vu.nl>, ast@cs.vu.nl (Andy Tanenbaum) writes:
> I thinky posting the MINIX version here
> once is a good idea.  Patches to that should be cdiffs, of course.
> 
> Andy Tanenbaum (ast@cs.vu.nl)

What is cdiff? No such utility was distributed with MINIX ST.

ast@cs.vu.nl (Andy Tanenbaum) (11/17/88)

In article <272@lzaz.ATT.COM> bds@lzaz.ATT.COM (B.SZABLAK) writes:
>What is cdiff? No such utility was distributed with MINIX ST.
Cdiff is a program that makes context diffs instead of regular diffs.  These
are installed using Larry Wall's patch, which is part of MINIX-PC (V1.3).
Do we have an Atari fan who is interested in porting it to the ST?  Probably
not much work unless it makes incorrect assumptions about how big an int is
and how big a (char *) is.

Here is cdiff.c

Andy Tanenbaum (ast@cs.vu.nl)

------------------------------- cdiff.c --------------------------------
/* cdiff - context diff			Author: Larry Wall */

/* cdiff - turns a regular diff into a new-style context diff
 *
 * Usage: cdiff file1 file2
 */

#define PATCHLEVEL 2

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <ctype.h>

char buff[512];

FILE *inputfp, *oldfp, *newfp;
char *ctime();

int oldmin, oldmax, newmin, newmax;
int oldbeg, oldend, newbeg, newend;
int preoldmax, prenewmax;
int preoldbeg, preoldend, prenewbeg, prenewend;
int oldwanted, newwanted;

char *oldhunk, *newhunk;
unsigned oldsize, oldalloc, newsize, newalloc;

void dumphunk();
char *getold();
char *getnew();
char *malloc();
char *realloc();
char *fgets();
FILE *popen();

#define Nullfp (FILE*)0
#define Nullch (char*)0

main(argc,argv)
int argc;
char **argv;
{
    char *old, *new;
    int context = 3;
    struct stat statbuf;
    register char *s;
    char op;
    char *newmark, *oldmark;
    int len;
    char *line;
    int i;

    oldalloc = 512;
    oldhunk = malloc(oldalloc);
    newalloc = 512;
    newhunk = malloc(newalloc);

    for (argc--,argv++; argc; argc--,argv++) {
	if (argv[0][0] != '-')
	    break;

	if (argv[0][1] == 'c')
	    context = atoi(argv[0]+2);
    }

    if (argc != 2) {
	fprintf(stderr,"Usage: cdiff old new\n");
	exit(1);
    }

    old = argv[0];
    new = argv[1];

    sprintf(buff,"diff %s %s", old, new);
    inputfp = popen(buff, "r");
    if (!inputfp) {
	fprintf(stderr, "Can't execute diff %s %s\n", old, new);
	exit(1);
    }

    oldfp = fopen(old,"r");
    if (!oldfp) {
	fprintf(stderr, "Can't open %s\n", old);
	exit(1);
    }
    newfp = fopen(new,"r");
    if (!newfp) {
	fprintf(stderr, "Can't open %s\n", new);
	exit(1);
    }

    fstat(fileno(oldfp),&statbuf);
    printf("*** %s\t%s", old, ctime(&statbuf.st_mtime));
    fstat(fileno(newfp),&statbuf);
    printf("--- %s\t%s", new, ctime(&statbuf.st_mtime));

    preoldend = -1000;

    while (fgets(buff, sizeof buff, inputfp) != Nullch) {
	if (isdigit(*buff)) {
	    oldmin = atoi(buff);
	    for (s = buff; isdigit(*s); s++) ;
	    if (*s == ',') {
		s++;
		oldmax = atoi(s);
		for ( ; isdigit(*s); s++) ;
	    }
	    else {
		oldmax = oldmin;
	    }
	    if (*s != 'a' && *s != 'd' && *s != 'c') {
		fprintf(stderr, "Unparseable input: %s", s);
		exit(1);
	    }
	    op = *s;
	    s++;
	    newmin = atoi(s);
	    for ( ; isdigit(*s); s++) ;
	    if (*s == ',') {
		s++;
		newmax = atoi(s);
		for ( ; isdigit(*s); s++) ;
	    }
	    else {
		newmax = newmin;
	    }
	    if (*s != '\n' && *s != ' ') {
		fprintf(stderr, "Unparseable input: %s", s);
		exit(1);
	    }

	    newmark = oldmark = "! ";
	    if (op == 'a') {
		oldmin++;
		newmark = "+ ";
	    }
	    if (op == 'd') {
		newmin++;
		oldmark = "- ";
	    }

	    oldbeg = oldmin - context;
	    oldend = oldmax + context;
	    if (oldbeg < 1)
		oldbeg = 1;
	    newbeg = newmin - context;
	    newend = newmax + context;
	    if (newbeg < 1)
		newbeg = 1;

	    if (preoldend < oldbeg - 1) {
		if (preoldend >= 0) {
		    dumphunk();
		}
		preoldbeg = oldbeg;
		prenewbeg = newbeg;
		oldwanted = newwanted = 0;
		oldsize = newsize = 0;
	    } else {	/* we want to append to previous hunk */
		oldbeg = preoldmax + 1;
		newbeg = prenewmax + 1;
	    }

	    for (i = oldbeg; i <= oldmax; i++) {
		line = getold(i);
		if (!*line) {
		    oldend = oldmax = i - 1;
		    break;
		}
		len = strlen(line) + 2;
		if (oldsize + len + 1 >= oldalloc) {
		    oldalloc *= 2;
		    oldhunk = realloc(oldhunk, oldalloc);
		}
		if (i >= oldmin) {
		    strcpy(oldhunk+oldsize, oldmark);
		    oldwanted++;
		}
		else {
		    strcpy(oldhunk+oldsize, "  ");
		}
		strcpy(oldhunk+oldsize+2,line);
		oldsize += len;
	    }
	    preoldmax = oldmax;
	    preoldend = oldend;

	    for (i = newbeg; i <= newmax; i++) {
		line = getnew(i);
		if (!*line) {
		    newend = newmax = i - 1;
		    break;
		}
		len = strlen(line) + 2;
		if (newsize + len + 1 >= newalloc) {
		    newalloc *= 2;
		    newhunk = realloc(newhunk, newalloc);
		}
		if (i >= newmin) {
		    strcpy(newhunk+newsize, newmark);
		    newwanted++;
		}
		else {
		    strcpy(newhunk+newsize, "  ");
		}
		strcpy(newhunk+newsize+2,line);
		newsize += len;
	    }
	    prenewmax = newmax;
	    prenewend = newend;
	}
    }

    if (preoldend >= 0) {
	dumphunk();
    }
}

void
dumphunk()
{
    int i;
    char *line;
    int len;

    for (i = preoldmax + 1; i <= preoldend; i++) {
	line = getold(i);
	if (!line) {
	    preoldend = i - 1;
	    break;
	}
	len = strlen(line) + 2;
	if (oldsize + len + 1 >= oldalloc) {
	    oldalloc *= 2;
	    oldhunk = realloc(oldhunk, oldalloc);
	}
	strcpy(oldhunk+oldsize, "  ");
	strcpy(oldhunk+oldsize+2, line);
	oldsize += len;
    }
    for (i = prenewmax + 1; i <= prenewend; i++) {
	line = getnew(i);
	if (!line) {
	    prenewend = i - 1;
	    break;
	}
	len = strlen(line) + 2;
	if (newsize + len + 1 >= newalloc) {
	    newalloc *= 2;
	    newhunk = realloc(newhunk, newalloc);
	}
	strcpy(newhunk+newsize, "  ");
	strcpy(newhunk+newsize+2, line);
	newsize += len;
    }
    fputs("***************\n",stdout);
    if (preoldbeg >= preoldend) {
	printf("*** %d ****\n", preoldend);
    } else {
	printf("*** %d,%d ****\n", preoldbeg, preoldend);
    }
    if (oldwanted) {
	fputs(oldhunk,stdout);
    }
    oldsize = 0;
    *oldhunk = '\0';
    if (prenewbeg >= prenewend) {
	printf("--- %d ----\n", prenewend);
    } else {
	printf("--- %d,%d ----\n", prenewbeg, prenewend);
    }
    if (newwanted) {
	fputs(newhunk,stdout);
    }
    newsize = 0;
    *newhunk = '\0';
}

char *
getold(targ)
int targ;
{
    static int oldline = 0;

    while (fgets(buff, sizeof buff, oldfp) != Nullch) {
	oldline++;
	if (oldline == targ)
	    return buff;
    }
    return Nullch;
}

char *
getnew(targ)
int targ;
{
    static int newline = 0;

    while (fgets(buff, sizeof buff, newfp) != Nullch) {
	newline++;
	if (newline == targ)
	    return buff;
    }
    return Nullch;
}

james_jim_woomer@cup.portal.com (11/19/88)

I am having a problem bringin the recent posting of less(1) up on my ST.

So far I have gotten past the
   
1. library problems of the missing fdopen() and _exit by using the
   recent posting of fdopen() and subbing exit for _exit,
2. and the makefile,

Now everything seems to compile and load ok but when I run it it lists 
a bunch of terminal options its not capable of performing, prints
out PRESS RETURN TO CONTINUE and dies.

I have place the termcap file supplied in .etc and did TERM=minix.

What am I doing wrong.  If someone has sucessfully ported this to the
ST could you outline your steps.   You must have had to overcome the same
obsticles.  

Thanks a million...... Jim Woomer.