2006-02-14
An advantage of using a non-standard shell
One of the surprising advantages of using a completely non-standard
shell (in my case, Byron Rakitzis' Unix version of rc) is all of the things that are
not automatically set up for you by modern systems. As someone I read
found out recently,
these days this includes colourized ls listings, colourized
super-intelligent vi, and so on.
(I might not mind colourization so much if it paid any attention to what the baseline terminal colours were, but I haven't seen that happen yet. And it tends to come out as fruit salad even on the best of days.)
The other thing I tend to get to skip is all sorts of $LANG settings
for internationalization. These are occasionally OK, but a lot of the
time they annoy me by changing, for example, sort's output or the
order ls puts files in. I'm a creature of sufficient Unix habit that
I get perturbed if these shuffle. (And my scripts can get perturbed
too. Yes, I should work out the magic to use the old fashioned
collation and sorting order without drop-kicking the rest of the
internationalization stuff. Someday. When I have to.)
Red Hat has a well developed (and heavily used) system for sticking
standard shells with things, driven out of /etc/profile.d. Perusing
the files in that directory can be interesting, and sometimes alarming.
(Which leads to the discovery that the easy way to spay ls is to
create an empty $HOME/.dircolors file.)
Fortunately Red Hat has stopped making /usr/bin/vi be vim; that
caused me to have a vi symlink in $HOME/bin that pointed to
the 'real' (non-fancy) /bin/vi (I put $HOME/bin before system
directories precisely so I can fix this sort of thing). These days,
the full vim experience has to be invoked as vim, and if you ask
for vi (without aliases that redirect it to vim) you get the plain
thing. (Unfortunately if you ask for ex you're out of luck; that they
still override.)