Subject: Re: ksh bugs and behaviour questions
To: Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>
From: Matthias Buelow <mkb@mukappabeta.de>
List: tech-userlevel
Date: 12/09/2002 21:22:03
Thomas Klausner wrote:
> . ctrl-l on empty line does not clear(1)
> bash does this, and I prefer it to having to type 'clear' :)
Bear in mind that pdksh is a ksh clone, it doesn't attempt to imitate
bash (I think it also precedes bash by a couple of years). I actually
prefer it that ^L doesn't clear the screen but simply reprints its
current line (it's also more consistent to what you actually expect from
that key sequence, compare to other terminal-oriented programs like vi
(which redisplay their display on ^L. Because ksh's "display" is just a
single line, it redisplays it, albeit on a new line.) So in a way, ^L
is similar to the kernel's line discipline ^R (reprint) character.
If you were using the real KornShell (ksh93), you might be able to bind
^L to execute clear(1) via keyboard traps.
> . completion does not work on incomplete variables ($HO<TAB>) or user names
> (~wi<TAB>)
Ksh93 expands it that way you describe in vi-mode (with the ESC-\
completion key sequence); curiously it seems to do a different thing in
emacs mode (with ESC-ESC, or TAB): there it replaces $VAR with its
contents, if the variable is fully specified; it does not attempt to
expand the variable name, like in vi-mode, though.
I recommend using the real ksh, if memory permits (it uses a lot more
memory than pdksh), where the bugs don't exist, and some of the other
things that ail you can be tweaked with a little programming (KEYBD
traps etc.)
--
Matthias Buelow