lafe - LAtency Free Empire

Still in alpha, midway between emp_client and eif.  Has the low
latency of emp_client with the readline capabilities of eif.  Should
handle empire2.3 C_INFORM messages.  Nation, password, server, and
port may all be set using environment variables, defaults, commandline
arguments, or in ~/.laferc using the addgame command.  The defaults
are visitor/visitor/empire.net/7778.  The environment variables are
EMPIREHOST, EMPIREPORT, COUNTRY, and REPRESENTATIVE.  Commandline
arguments may be given as:

lafe country password host port 
  or
lafe country password
  or
lafe game
   where "game" is defined by an addgame command in your ~/.laferc
file (see example.laferc).

GNU readline is a bit touchy.  If you're lucky, you can just type
"make" and "make [system]" in the lafe directory.  If not, you'll have
to dive into readline/ and read how to tweak things.  lafe.c itself
should be very portable to ANSI C compilers.  The location of the
termcap/terminfo routines is not standardized though, so you may need
any one or more of -ltermcap -lterminfo -lcurses.

   Local commands defined now in lafe:
help		print syntax summary of local commands.
addgame		add a game definition for the "lafe game" startup method.
execute		Handles exec scripts locally
runfeed		Runs the argument as a shell command, and sends the output
		to the server shell Run the argument as a shell script
alias 		Print, delete, or define an alias.  Use single quotes around
		the alias definition to protect $*, $1, $2, ...
setvar		Set, delete, or print local variables.
history		print the previous commands.
verbose		toggle verbosity of message.  "verbose on" if you want all the
		error messages, C_SYNC messages, etc.  Off by default.

   Lafe attempts to execute ~/.laferc at startup.  It prints a warning
message if the file does not exist.

BUGS:
   When typing ahead (using the asynchronous nature of lafe) it is
possible for a local command to be executed at a subprompt.  This
probably isn't what you want.
   Local commands (including exec) can't be redirected.  Redirection
only works on empire commands.
   If the make fails with errors on symbols UP or BC, edit
readline/readline.c to declare these symbols as globals or externs,
whichever works.
   Lafe attempts to zero its arguments, however, some unixes keep a
system copy of your arguments.  The result is: other users may see
your empire password if you use the "lafe coun pass" method.  Type "ps
-ef" to see if your arguments are visible, and use the .laferc/addgame
method if they are.
   The Makefile may need -DHAVE_CONFIG_H added to the CFLAGS on some systems.
   On some systems (Solaris2.4), "bye" leaves the terminal confused,
but ^D exits cleanly.

Major Contributors
Bernhard Reiter - SunOS port, stress testing, lots of suggestions

-harmless@empire.net
