summaryrefslogtreecommitdiffstats
path: root/libtecla-1.6.3/man/prog/enhance.in
diff options
context:
space:
mode:
Diffstat (limited to 'libtecla-1.6.3/man/prog/enhance.in')
-rw-r--r--libtecla-1.6.3/man/prog/enhance.in89
1 files changed, 89 insertions, 0 deletions
diff --git a/libtecla-1.6.3/man/prog/enhance.in b/libtecla-1.6.3/man/prog/enhance.in
new file mode 100644
index 0000000..aacd8a0
--- /dev/null
+++ b/libtecla-1.6.3/man/prog/enhance.in
@@ -0,0 +1,89 @@
+.\" Copyright (c) 2000, 2001, 2002, 2003, 2004, 2012 by Martin C. Shepherd
+.\"
+.\" All rights reserved.
+.\"
+.\" Permission is hereby granted, free of charge, to any person obtaining a
+.\" copy of this software and associated documentation files (the
+.\" "Software"), to deal in the Software without restriction, including
+.\" without limitation the rights to use, copy, modify, merge, publish,
+.\" distribute, and/or sell copies of the Software, and to permit persons
+.\" to whom the Software is furnished to do so, provided that the above
+.\" copyright notice(s) and this permission notice appear in all copies of
+.\" the Software and that both the above copyright notice(s) and this
+.\" permission notice appear in supporting documentation.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+.\" OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+.\" HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
+.\" INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
+.\" FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+.\" NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+.\" WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.\" Except as contained in this notice, the name of a copyright holder
+.\" shall not be used in advertising or otherwise to promote the sale, use
+.\" or other dealings in this Software without prior written authorization
+.\" of the copyright holder.
+.TH enhance @PROG_MANEXT@
+.SH NAME
+enhance - A program that adds command-line editing to third party programs.
+.SH SYNOPSIS
+.nf
+enhance command [ argument ... ]
+.fi
+
+.SH DESCRIPTION
+
+The \f3enhance\f1 program provides enhanced command-line editing
+facilities to users of third party applications, to which one doesn't
+have any source code. It does this by placing a pseudo-terminal
+between the application and the real terminal. It uses the tecla
+command-line editing library to read input from the real terminal,
+then forwards each just completed input line to the application via
+the pseudo-terminal. All output from the application is forwarded
+back unchanged to the real terminal.
+.sp
+Whenever the application stops generating output for more than a tenth
+of a second, the \f3enhance\f1 program treats the latest incomplete
+output line as the prompt, and redisplays any incompleted input line
+that the user has typed after it. Note that the small delay, which is
+imperceptible to the user, isn't necessary for correct operation of
+the program. It is just an optimization, designed to stop the input
+line from being redisplayed so often that it slows down output.
+.sp
+Note that the user-level command-line editing facilities provided by
+the Tecla library are documented in the \f3tecla(@MISC_MANEXT@)\f1 man page
+
+.SH DEFICIENCIES
+
+The one major problem that hasn't been solved yet, is how to deal with
+applications that change whether typed input is echo'd by their
+controlling terminal. For example, programs that ask for a password,
+such as ftp and telnet, temporarily tell their controlling terminal
+not to echo what the user types. Since this request goes to the
+application side of the psuedo terminal, the \f3enhance\f1 program has
+no way of knowing that this has happened, and continues to echo typed
+input to its controlling terminal, while the user types their
+password.
+.sp
+Furthermore, before executing the host application, the \f3enhance\f1
+program initially sets the pseudo terminal to noecho mode, so that
+everything that it sends to the program doesn't get redundantly
+echoed. If a program that switches to noecho mode explicitly restores
+echoing afterwards, rather than restoring the terminal modes that were
+previously in force, then subsequently, every time that you enter a
+new input line, a duplicate copy will be displayed on the next line.
+
+.SH FILES
+.nf
+libtecla.a - The tecla library.
+~/.teclarc - The tecla personal customization file.
+.fi
+
+.SH SEE ALSO
+tecla(@MISC_MANEXT@), libtecla(@LIBR_MANEXT@)
+
+.SH AUTHOR
+Martin Shepherd (mcs@astro.caltech.edu)