--- /dev/null
+.TH LNEATO 1
+.SH NAME
+lneato \- A Customizable Graph Editor
+.SH SYNOPSIS
+.B lneato
+[
+.B -V
+] [
+.I file
+]
+.SH DESCRIPTION
+.B lneato
+is a graph editor for the X Window System. It may be run as a standalone
+editor, or as a front end for applications that use graphs. It can control
+multiple windows viewing different graphs.
+
+.B lneato
+is written on top of
+.B neato
+and
+.BR lefty .
+.B lefty
+is a general-purpose programmable editor for technical pictures. It has an
+interpretive programming language similar to AWK and C. The user interface and
+graph editing operations of
+.B lneato
+are written as
+.B lefty
+functions.
+Programmer-defined graph operations may be loaded as well. Graph layouts are
+made by
+.BR neato ,
+which runs as a separate process that communicates with
+.B lefty
+through pipes.
+.SH USAGE
+The file name is optional. If present, the graph contained in that file is
+displayed in the
+.B lneato
+window.
+.SH OPTIONS
+.TP
+.B -V
+Prints the version.
+.SH SEE ALSO
+neato(1), lefty(1), dotty(1),
+.br
+.I dotty
+user guide.
--- /dev/null
+#!/bin/sh
+FILES=""
+MLEVEL="0"
+LMODE="async"
+usage="echo usage: lneato [-V] [-lm (sync|async)] [-el (0|1)] <filename>"
+
+if test "x$DOTTYOPTIONS" != "x"
+then
+ options=$DOTTYOPTIONS
+else
+ options="$@"
+fi
+
+set -- $options
+
+for i in "$@"
+do
+ if test "x$i" = "x$1"
+ then
+ case $i in
+ -V)
+ shift
+ echo "lneato version 95 (04-18-95)"
+ ;;
+ -lm)
+ shift
+ LMODE="$1"
+ shift
+ if test "x$LMODE" != "xsync" -a "x$LMODE" != "xasync"
+ then
+ $usage
+ exit 1
+ fi
+ ;;
+ -el)
+ shift
+ MLEVEL="$1"
+ shift
+ if test "x$MLEVEL" != "x0" -a "x$MLEVEL" != "x1"
+ then
+ $usage
+ exit 1
+ fi
+ ;;
+ -?*)
+ $usage
+ exit 1
+ ;;
+ *)
+ FILES="$FILES '"$1"'"
+ shift
+ ;;
+ esac
+ fi
+done
+
+if test "x$MLEVEL" != "x0"
+then
+ echo "FILES = $FILES"
+ echo "MLEVEL = $MLEVEL"
+ echo "LMODE = $LMODE"
+fi
+
+if test "x$DOTTYPATH" != "x"
+then
+ LEFTYPATH="$DOTTYPATH:$LEFTYPATH"
+fi
+
+CMDS="dotty.layoutmode = '$LMODE';"
+CMDS="$CMDS dotty.mlevel = $MLEVEL; dot.mlevel = $MLEVEL;"
+
+if test "x$FILES" = "x"
+then
+ FILES=null
+fi
+for i in $FILES
+do
+ CMDS="$CMDS dotty.createviewandgraph($i,'file',null,null);"
+done
+
+lefty -e "
+load ('dotty.lefty');
+
+checkpath = function () {
+ if (tablesize(dotty) > 0); # because tablesize(undef) returns "" not 0
+ else {
+ echo('You must set LEFTYPATH to the lefty lib directory path name.');
+ exit();
+ }
+};
+checkpath ();
+
+dotty.protogt.lserver = 'neato';
+dotty.protogt.graph.type = 'graph';
+dotty.init ();
+monitorfile = dotty.monitorfile;
+$CMDS
+txtview ('off');
+"