|
Now depends on perl.
0.37 Commands that emit "status lines" using backspaces and carriage
returns could confuse rlwrap
rlwrap uses C strings internally, and thus cannot cope with
command output that contains zero bytes (padding). It used to
replace these with spaces, now the zero bytes are removed.
if the RLWRAP_HOME is set, but $RLWRAP_HOME doesn't exist, rlwrap
will create it
typo: SIGERR instead of SIG_ERR in signals.c
0.36 Entering a line from vi command mode would echo the input twice
Output from very busy commands would not always be printed on time
When rlwrap kills itself after a command crash it will not dump
core, in order to avoid clobbering command's much more interesting
core dump.
Premature filter death is now reported properly (it used to only
say: "EOF reading from filter" or "Broken pipe writing to filter")
0.35 config.{guess,sub} have been updated to version 2009-12-13
Corrected array bounds error in my_putstr("") (which could make
rlwrap write an extra newline when exiting, but might even crash
on some systems)
Many small improvements and fixes for multi-line input:
Multi-line inputs are now written to the inferior command one
line at a time, so that command's response (e.g. a continuation
prompt) can be interleaved with the echo'ed (multi-line) input.
Calling an external editor will no longer obliterate the prompt,
and line/column positions are now correct.
After a multi-line edit in vi-mode, the cursor will no longer
end up one line too high.
CTRL-D on an empty line was handed directly to command, but also
(erroneously) put in readline's input buffer
Many small fixes and improvements in signal handling:
SIGSEGV, and other "error" signals like SIGFPE, are now unblocked
all of the time, so that rlwrap can always clean up after a crash.
Since version 0.25 rlrwap's transparency extends to signals: if
the inferior command segfaults, rlwrap will kill itself with a
SIGSEGV. In order to get the bug reports where they belong,
rlwrap now reports explicitly that it has not crashed itself.
rlwrap's call to sigaction forgot to set the signal mask (!)
Continuing after CTRL-Z on QNX now wakes up command
Added --one-shot (-o) and --only-cook (-O) options
debug log is now in a format that works well with emacs' grep-mode
rlwrap's bindable readline function names (like rlwrap-call-editor) are
now in hyphen-style instead of underscore_style (use of the
old_style_names will now be flagged as an error)
Filters can now prevent a prompt from being cooked by "rejecting" it.
Rlwrapfilter.pm would set $_ incorrectly in echo and output handlers.
RlwrapFilter.pm manpage is now created by newer (and less buggy)
version of pod2man
Added EXAMPLES section and -t option to rlwrap manpage
0.34 Binding wide (e.g. utf-8) chars in .inputrc now works
prefix arguments are now correctly reset (M-5 a b now
yields aaaaab instead of aaaaabbbbb)
0.33 rlwrap incorrectly fed terminfo-style capnames ("dl1") instead of
termcap codes ("dl") into tgetstr(). On newer Debian systems this
exposed a bug where random garbage would be printed by rlwrap
Hyphens in rlwrap manpage are now all properly escaped
RlwrapFilter.pm now only re-sets $filter->cumulative_output when an
INPUT message is received
0.32 Major new feature: filtering. Filters sit between rlwrap and the
wrapped command, re-writing command output, input, prompts,
history, and completion word lists.
System-wide filters live in DATADIR/rlwrap/filters (where DATADIR =
/usr/local/share by default, installation-dependent) Because of this,
completions now live in DATADIR/rlwrap/completions (until now:
DATADIR/rlwrap)
To make filter writing easy, a perl module RlwrapFilter.pm has
been added. It doesn't become part of your perl installation, but lives
in DATADIR/rlwrap/filters
rlwrap didn't properly check errno after reading from inferior pty.
This could lead to a spurious "read error on master pty"
Instead of using crusty old signal(), signal handlers are now set
by sigaction() without SA_RESTART (BSD semantics) Different
syscall-restarting behaviour among systems caused hard-to-trace
bugs
Now copies inferior pty's c_oflags to stdout before
output. (some editors like joe would mess up the screen)
prompt handling logic has been streamlined. Coloured prompt handling is
reliable now, even for long prompts.
At program exit, rlwrap now outputs a newline only when the client
didn't.
Added -g, -I, -N, -S, -w and -z options
Removed -F option (and added a filter to replace it)
-p option now takes colour names (-pYellow)
rlwrap (and readline) uses C strings internally, which could cause problems
with commands that output '\0' bytes. In direct mode, such
characters are left untouched, but in readline mode they are
replaced by spaces.
the tools directory has been updated, so that configure will
feel at home even on newer systems
tested on SunOS, AIX, FreeBSD, HP/UX, QNX (thanks to polarhome.com), as
well as cygwin and linux
|
|
Pkgsrc changes:
- Added option "debug" (off by default).
- Explicitly listed licence information.
Changes since version 0.28:
===========================
0.30 rlwrap can now use putenv() on machines that don't have
setenv() (like some Solaris systems)
EOF on stdin (e.g. by pressing CTRL-D) would end prompt colouring.
added -q option
0.29 added -A option to handle (ANSI-)coloured prompts
added -p option to colourise uncoloured prompts
added -t option to set terminal type for client command
rlwrap now copies its terminal settings from the client
even when this has put its terminal in single-keypress
(uncooked) mode. A rlwrapped emacs will now respond to CTRL-C
and CTRL-G as it should.
fixed a long-standing bug where long output lines with the -r option
would put mutilated words into the completion list. Drawback:
prompts are not put into the completion list anymore (bug or feature?).
rlwrap now handles output to the client before input from the
client, and only handles keyboard input when all client I/O has
been handled. This will make rlwrap a little better behaved when
handling large chunks of (pasted) input, especially with colourised
prompts
error messages and warnings now include the rlwrap version number
rlwrap now prints a warning when started in vi mode when the
terminal is too dumb to support upwards cursor movement
added a very simple custom malloc/free debugger for use with the
--debug option. Rather fragile and not well tested, use with care.
Whenever TERM is not set, rlwrap assumes vt100. Set TERM=dumb if
you really have a dumb terminal.
rlwrap now leaves the handling of multi-line prompts and edit
buffers to readline (except when in horizontal-scroll mode or when
configured with --enable-homegrown-redisplay).
whenever --always-readline is set, SIGWINCH not passed to
client command immediately, but only *after* accepting a line.
multi-byte prompts and input no longer confuse rlwrap (provided
your readline lib supports multi-byte characters)
--spy-on-readline now enabled by default
the configure script will now find term.h on cygwin
dropped the assumption that tgetent() and friends are only ever
declared in term.h; rlwrap now has proper terminal handling also
under SunOS.
the rlwrap source should again be fit for consumption by older
(C91 compliant) compilers
|