HardenedBSD/contrib/less
Paul Saab a5f0fb151d Import the [now] dual licensed version 3.5.4 of less. It is
distributed under your choice of the GPL or a BSD style license.

Reviewed by:	peter
Obtained from:	http://home.flash.net/~marknu/less/
2000-05-22 09:53:22 +00:00
..
acconfig.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
brac.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
ch.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
charset.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
cmd.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
cmdbuf.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
command.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
configure Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
configure.in Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
COPYING Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
decode.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
defines.ds Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
defines.h.in Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
defines.h.top Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
defines.o2 Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
defines.o9 Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
defines.wn Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
edit.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
filename.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
forwback.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
funcs.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
help.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
ifile.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
input.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
INSTALL Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
install.sh Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
jump.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
less.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
less.hlp Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
less.man Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
less.nro Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
lessecho.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
lesskey.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
lesskey.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
lesskey.man Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
lesskey.nro Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
lglob.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
LICENSE Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
line.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
linenum.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
lsystem.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
main.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.aut Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.dsb Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.dsg Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.dsm Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.in Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.o2e Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.o9c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.o9u Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.wnb Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
Makefile.wnm Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
mark.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
mkfuncs.awk Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
mkhelp.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
mkinstalldirs Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
NEWS Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
optfunc.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
option.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
option.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
opttbl.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
os.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
output.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
pckeys.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
position.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
position.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
prompt.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
README Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
regexp.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
regexp.h Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
screen.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
search.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
signal.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
tags.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
ttyin.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00
version.c Import the [now] dual licensed version 3.5.4 of less. It is 2000-05-22 09:53:22 +00:00

                            Less, version 354

    This is the distribution of less, version 354, released 23 Mar 2000.
    This program is part of the GNU project (http://www.gnu.org).

    This program is free software.  You may redistribute it and/or
    modify it under the terms of either:

    1. The GNU General Public License, as published by the Free
       Software Foundation; either version 2, or (at your option) any
       later version.  A copy of this license is in the file COPYING.
    or
    2. The Less License, in the file LICENSE.

    Please report any problems to bug-less@gnu.org or marknu@flash.net.
    See http://www.flash.net/~marknu/less for the latest info.
    You may also contact the author at:
          Mark Nudelman
          Greenwood Software
          PO Box 2402
          El Granada, CA  94018
          USA

=========================================================================

This is the distribution of "less", a paginator similar to "more" or "pg".

The formatted manual page is in less.man.
The manual page nroff source is in less.nro.
Major changes made since the last posted version are in NEWS.

=======================================================================
INSTALLATION (Unix systems only):

1. Move the distributed source to its own directory and unpack it,
   if you have not already done so.  

2. Type "sh configure".
   This will generate a Makefile and a defines.h.
   Warning: if you have a GNU sed, make sure it is version 2.05 or later.

   The file INSTALL describes the usage of the configure program in
   general.  In addition, these options to configure are supported:

   --with-editor=program
     Specifies the default editor program used by the "v" command.
     The default is "vi".
   --with-regex=lib
     Specifies the regular expression library used by less for pattern
     matching.  The default is "auto", which means the configure program 
     finds a regular expression library automatically.  Other values are:
        posix          Use the POSIX-compatible regcomp.
        pcre           Use the PCRE library.
        regcmp         Use the regcmp library.
        re_comp        Use the re_comp library.
        regcomp        Use the V8-compatible regcomp.
        regcomp-local  Use Henry Spencer's V8-compatible regcomp
                       (source is supplied with less).

3. It is a good idea to look over the generated Makefile and defines.h
   and make sure they look ok.  If you know of any peculiarities of
   your system that configure might not have detected, you may fix the
   Makefile now.  Take particular notice of the list of "terminal" 
   libraries in the LIBS definition in the Makefile; these may need 
   to be edited.  The terminal libraries will be some subset of
       -lncurses  -lcurses  -ltermcap  -ltermlib

   If you wish, you may edit defines.h to remove some optional features.
   If you wish to build a "secure" version of less (which disables all
   features which might allow a user to do unintended things to the system
   on which less is running), edit defines.h and define SECURE to 1.
   If you choose not to include some features in your version, you may
   wish to edit the manual page "less.nro" and the help page "less.hlp" 
   to remove the descriptions of the features which you are removing.
   If you edit less.hlp, you should run "make -f Makefile.aut help.c".

4. Type "make" and watch the fun.

5. If the make succeeds, it will generate the programs "less",
   "lesskey" and "lessecho" in your current directory.  Test the 
   generated programs.

6. When satisfied that it works, if you wish to install it
   in a public place, type "make install".

   The default install destinations are:
        Executables (less, lesskey, lessecho) in /usr/local/bin
        Documentation (less.nro, lesskey.nro) in /usr/local/man/man1
   If you want to install any of these files elsewhere, define
   bindir and/or mandir to the appropriate directories.

If you have any problems building or running "less", suggestions, 
complaints, etc., you may mail to the author at marknu@flash.net.

Note to hackers: comments noting possible improvements are enclosed
in double curly brackets {{ like this }}.



=======================================================================
INSTALLATION (MS-DOS systems only,
              with Microsoft C, Borland C, or DJGPP)

1. Move the distributed source to its own directory.
   Depending on your compiler, you may need to convert the source 
   to have CR-LF rather than LF as line terminators.

2. If you are using Microsoft C, rename MAKEFILE.DSM to MAKEFILE.
   If you are using Borland C, rename MAKEFILE.DSB to MAKEFILE.
   If you are using DJGPP, rename MAKEFILE.DSG to MAKEFILE.

3. Look at MAKEFILE to make sure that the definitions for CC and LIBDIR
   are correct.  CC should be the name of your C compiler and
   LIBDIR should be the directory where the C libraries reside (for
   Microsoft C only).  If these definitions need to be changed, you can
   either modify the definitions directly in MAKEFILE, or set your
   environment variables CC and/or LIBDIR to override the definitions
   in MAKEFILE.

4. If you wish, you may edit DEFINES.DS to remove some optional features.
   If you choose not to include some features in your version, you may
   wish to edit the manual page LESS.MAN and the help page HELP.C
   to remove the descriptions of the features which you are removing.

5. Run your "make" program and watch the fun.
   If your "make" requires a flag to import environment variables,
   you should use that flag.
   If your compiler runs out of memory, try running "make -n >cmds.bat" 
   and then run cmds.bat.

6. If the make succeeds, it will generate the programs "LESS.EXE" and
   "LESSKEY.EXE" in your current directory.  Test the generated programs.

7. When satisfied that it works, you may wish to install LESS.EXE and
   LESSKEY.EXE in a directory which is included in your PATH.



=======================================================================
INSTALLATION (Windows-95, Windows-98 and Windows-NT systems only,
              with Borland C or Microsoft Visual C++)

1. Move the distributed source to its own directory.

2. If you are using Borland C, rename Makefile.wnb to Makefile.
   If you are using Microsoft Visual C++, rename Makefile.wnm to Makefile.

3. Check the Makefile to make sure the definitions look ok.

4. If you wish, you may edit defines.wn to remove some optional features.
   If you choose not to include some features in your version, you may
   wish to edit the manual page less.man and the help page help.c
   to remove the descriptions of the features which you are removing.

5. Type "make" and watch the fun.

6. If the make succeeds, it will generate the programs "less.exe" and
   "lesskey.exe" in your current directory.  Test the generated programs.

7. When satisfied that it works, if you wish to install it
   in a public place, type "make install".
   See step 6 of the Unix installation instructions for details
   on how to change the default installation directories.



=======================================================================
INSTALLATION (OS/2 systems only,
              with EMX C)

1. Move the distributed source to its own directory.

2. Rename Makefile.o2e to Makefile.

3. Check the Makefile to make sure the definitions look ok.

4. If you wish, you may edit defines.o2 to remove some optional features.
   If you choose not to include some features in your version, you may
   wish to edit the manual page less.man and the help page help.c
   to remove the descriptions of the features which you are removing.

5. Type "make" and watch the fun.

6. If the make succeeds, it will generate the programs "less.exe" and
   "lesskey.exe" in your current directory.  Test the generated programs.

7. Make sure you have the emx runtime installed. You need the emx DLLs
   emx.dll and emxlibcs.dll and also the termcap database, termcap.dat.
   Make sure you have termcap.dat either in the default location or
   somewhere in a directory listed in the PATH or INIT environment 
   variables.

8. When satisfied that it works, you may wish to install less.exe and
   lesskey.exe in a directory which is included in your PATH.



=======================================================================
INSTALLATION (OS-9 systems only,
              with Microware C or Ultra C)

1. Move the distributed source to its own directory.

2. If you are using Microware C, rename Makefile.o9c to Makefile.
   If you are using Ultra C, rename Makefile.o9u to Makefile.

3. Check the Makefile to make sure the definitions look ok.

4. If you wish, you may edit defines.o9 to remove some optional features.
   If you choose not to include some features in your version, you may
   wish to edit the manual page less.man and the help page help.c
   to remove the descriptions of the features which you are removing.

5. Type "dmake" and watch the fun.
   The standard OS-9 "make" will probably not work.  If you don't
   have dmake, you can get a copy from os9archive.rtsi.com.

6. If the make succeeds, it will generate the programs "less" and
   "lesskey" in your current directory.  Test the generated programs.

7. When satisfied that it works, if you wish to install it
   in a public place, type "dmake install".
   See step 6 of the Unix installation instructions for details
   on how to change the default installation directories.