Subject: ksh and new-default vi-tabcompletion
To: None <current-users@netbsd.org>
From: Richard Rauch <rkr@olib.org>
List: current-users
Date: 12/23/2003 02:21:09
I recently stumbled across the new default for /bin/ksh, enabling
vi-tabcompletion.
I'm sure that adding this is seen to be a major advance, fixing much
angst for some. However, since I personally like to be able to enter
the ASCII TAB character from time to time, and never want or use tab-
completion, I immediately sought to turn it off as soon as I discov-
ered that it was on.
"set +o vi-tabcompletion" seemed to be just what I wanted. I added
it to my (NFS-shared) ~/.shrc that ksh and sh use for initialization.
Then I wanted to look up something else in the manual. "man ..."
failed with this error:
set: Illegal option -o vi-tabcomplete
...nevermind that I used "+o" not "-o". The key thing is that "man"
no longer worked. (Though the error message could stand to be fixed.)
Okay, that's not an sh option, perhaps. But, interestingly, the 1.6
systems I have do *not* mind this "set +o vi-tabcompletion" when I
use "man".
I assume that in addition to making this the ksh default, someone
has modified /bin/sh to either be more picky, or perhaps even to
reject a formerly accepted command. (I'm pretty sure that /bin/sh
does a vi edit mode, though I don't use /bin/sh much.)
Of course, this can all be worked around with a case statement
in .shrc. But the whole affair seemed worth sharing, since not
only was the "set +o ..." not required in 1.6, but it also did not
cause any problems with "man" (nor, I assume, with anything else;
though I confess to not really testing it further).
Perhaps adjusting /bin/sh to accept this option (again?) would help
smooth the way for non-completion-using ksh users when they upgrade
to 2.0? (All 2 or 3 of us? *grin*)
Anyway, just a random bit of perspective. Don't take any wooden bits.
--
"I probably don't know what I'm talking about." http://www.olib.org/~rkr/