Martin Toft wrote:
Sam Chill wrote:
ksh does most everything bash does too, so it doesn't seem like a
loss.

FWIW, I miss a couple of features in ksh and consider to switch
(back) to bash:

- When using tab completion, and you press tab two times to get a
list of possibilities, ksh doesn't use less/more to present the
possibilities (i.e. they just scroll by and I have to use
shift+page-up).

wow. I don't recall ever having hit 'tab' in ksh, got more than a screen full of possibilities, and actually had wanted to scroll back up and find the ONE thing I was looking for. If I got that many responses, I didn't ask the right question. I'd simply refine my question...

The relatively few times I've used bash, I found its tab completion far less intuitive and useful than OpenBSD's ksh. So, I'm going to say this is probably a "What I'm/you're used to" thing.

(that goes for invoking more/less when unexpected...that irritates the heck out of me on Linux).

'Course, I do a lot of work from xterms with a nice wheel mouse, so scrolling back up to see what I missed is very painless, and automatic.

- When writing long commands, bash uses multiple lines to let me see
the whole command, whereas ksh "scrolls" the line horizontally, only
showing me a part of the command at a time. This is of course a
matter of taste, but I like the method of bash.

I will admit, I'm not overly fond of ksh's long-line handling, 'specially in an xterm which I've made huge just so I could see the whole line. So, maybe I'll give bash a point on this one, not having even seen what it does.

- In ksh, history is not automatically set up (but this is not a
missing feature, since you can set it up yourself).

THANK GOODNESS.
What an idiotic thing to leave lying around...a list of commands recently run by that user, on by default. What the hell were they thinking? Ignore the bloat, ignore the non-standards, ignore the license, this makes bash a non-contender in my book by itself.

[from another note]
- I miss the "for (( expr1 ; expr2 ; expr3 )) ; do list ; done"
construct. Of course, using e.g. jot, it is possible to do
semantically equivalent stuff.

You can complain that the standard sh scripting language didn't contain that construct, but it is over, it didn't. Now...do you wish to write portable sh scripts or linux-based bash-only scripts? Use non-standard stuff like that, you aren't doing portable code...for no valid reason at all. If you want to write to only one platform, Windows has a larger user base...



To a large extent, it depends on what you are used to.
It amuses me to see people who spend a lot of time to make one OS look like another, such as running bash on OpenBSD or a window manager that looks suspiciously like Windows on a Unix machine (or making a Windows XP machine look like a Windows 2000 machine!).

Almost every OS has features that cause the developers to think it is the right way to do things, and most of those developers do far more with their machines than you do. I've found it more useful to learn "the way" of whatever OS I'm working with rather than trying to force it to look like what I'm used to. Very, very rarely will you EVER see a real productivity gain equal to the time spent trying to make A look like B, and then repeating it for every install, for every update.

(I will admit, on OpenBSD machines I used the root account on, I did tend to change csh to ksh back when csh was the standard root shell. :)


I'm very eager to hear from anyone, who got workarounds/solutions to
the above... but please, don't let my post disturb the main topic of
the thread.

too late, the main topic was already disturbed.  :)


Nick.

Reply via email to