a/etc-12.2-noarch-1.tgz: Do not set LC_ALL POSIX in
/etc/csh.login. Not only is this the wrong setting, it isn't even
in the proper file. :-/ Thanks to Jim Diamond.
Slack 12.1 has "setenv LC_ALL POSIX" in that location. The
corresponding line -- export LC_ALL="POSIX" -- is absent from
/etc/profile. One result of this is that, for users logging in with
the bash shell, Emacs [2] dired fails to parse the date format output
by ls -l and gives a "no file on this line" error for every line of
the dired display. Inserting the line into /etc/profile fixes this.
So:
What *is* the "proper" file for setting LC_ALL?
What is the (putatively) correct setting?
(I suppose that Emacs 22.* may have a revised regular expression for
dired. I happen to like Emacs 20. The first thing I do on a new
install is to replace Emacs 2{1,2} with Emacs 20.)
- Mike
[1] http://www.slackware.com/changelog/current.php?cpu=i386
[2] Emacs 20.7.2
--
Michael Spencer Nova Scotia, Canada
mspenc...@tallwhistlesships.ca (remove bells and whistles)
http://home.tallships.ca/mspencer/
I'd say the proper file for setting LC_ALL is your .bashrc or .cshrc
or ... depending on what shell you use.
But are you sure that is what you want to do? You might consider
reading
http://mail.nl.linux.org/linux-utf8/2003-03/msg00025.html
where the author argues against doing that by default. (I don't have
a strong feeling one way or the other, but I did discover that having
LC_ALL set can make my life difficult in some situations.)
I'm curious about what you prefer in emacs 20 over emacs 21 and 22,
but that is another discussion. However, dired seems to be happy on
my system (Slack 12.1, emacs 22.2.1).
Are you sure there is nothing in your emacs init file which is causing
your problem? I'd be somewhat astonished if the stock emacs 20 had
this problem.
Cheers.
Jim
that would be /etc/profile.d/lang.sh for bash and /etc/profile.d/lang.csh
for csh. note that these files set LANG to en_US (and provide a few
alternative options for those who want them) but they leave LC_ALL alone.
> What is the (putatively) correct setting?
judging by the output of 'locale' on my system, LC_ALL should be empty. set
LANG instead.
> (I suppose that Emacs 22.* may have a revised regular expression for
> dired. I happen to like Emacs 20. The first thing I do on a new
> install is to replace Emacs 2{1,2} with Emacs 20.)
now why on earth would you want to do that, and miss out on all the
improvements that emacs 22 (and 23 in cvs) offer? of the things that i use
emacs for, there isn't a single thing i can think of that i could do as
easily (or even at all) in emacs 20...
--
Joost Kremers joostk...@yahoo.com
Selbst in die Unterwelt dringt durch Spalten Licht
EN:SiS(9)
me> Slack 12.1 has "setenv LC_ALL POSIX" in [/etc/csh.login]. The
me> corresponding line -- export LC_ALL="POSIX" -- is absent from
me> /etc/profile. One result of this is that, for users logging in with
me> the bash shell, Emacs [2] dired fails to parse the date format output
me> by ls -l and gives a "no file on this line" error for every line of
me> the dired display. Inserting the line into /etc/profile fixes this.
Jim Diamond <Jim.D...@nospam.AcadiaU.ca> replied:
JD> Are you sure there is nothing in your emacs init file which is
JD> causing your problem? I'd be somewhat astonished if the stock
JD> emacs 20 had this problem.
Pretty sure. If I:
+ Comment out the line ``export LC_ALL="POSIX"'' from /etc/profile,
+ go to another console and log in as root, and
+ do ``ls -l''
then the date format is "yyyy-mm-dd hh:mm". Emacs dired parses the
date output from "ls -l" and fails on this format. There's nothing in
my .emacs (or root's, which is mostly a copy of my .emacs) that would
affect that.
The ls manpage says:
The variables LANG, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES and
LC_TIME have the usual meaning.
but makes no reference to the date format nor explains what "the usual
meaning" implies wrt ls.
I've just noticed that the version of ls in Slack 12.1 (ls 6.9) (which
I'm just installing) has a feature which ls in Slack 10.1 (ls
5.2.1)(That I've been using) didn't: --time-style=STYLE. Apparently
the default for time-style is "long-iso". If I unsetenv LC_ALL, the
output for ls -l reverts to long-iso: yyyy-mm-dd hh:mm.
JD> You might consider reading
JD> http://mail.nl.linux.org/linux-utf8/2003-03/msg00025.html
Saved for future reference, thanks.
me> What is the (putatively) correct setting?
and Joost Kremers <joostk...@yahoo.com> opined:
JK> judging by the output of 'locale' on my system, LC_ALL should be
JK> empty. set LANG instead.
The above ls output format and Emacs dired failure occurs with LANG
set to en_US. I just went and repeated the process, changing
/etc/profile and changing it back, manually setting the envars and so
on. $LANG==en_US does not eliminate the "yyyy-mm-dd hh:mm" date
format from ls -l. $LC_ALL==POSIX does.
me> (I suppose that Emacs 22.* may have a revised regular expression
me> for dired. I happen to like Emacs 20. The first thing I do on a
me> new install is to replace Emacs 2{1,2} with Emacs 20.)
JK> now why on earth would you want to do that, and miss out on all
JK> the improvements that emacs 22 (and 23 in cvs) offer?
Um, well, you know, I forget. Been doing it for years. There were a
bunch of annoying features that I had to figure out how to turn off.
In Emacs 20, I turn off the menu bar. There were more things like
that. Different handling of the prompt string in a shell.
Highlighting of various stuff? Menus, scroll bars? I forget. Mostly
I run emacs -nw in an xterm in order to make some features that even
20 has go away.
JK> ...of the things that i use emacs for, there isn't a single thing i
JK> can think of that i could do as easily (or even at all) in emacs
JK> 20...
So maybe you could mention a few of your favorite features, Joost?
I'm not unwilling to upgrade if there's something I could use. I can
presumably turn off stuff I don't like but I'm only a Lisp dabbler,
not an elisp wizard, so it would likely be a bit tedious.
--
Mike Spencer Nova Scotia, Canada
mspenc...@tallwhistlesships.ca
(Remove bells and whistles)
--
Mike Spencer Nova Scotia, Canada
>> (I suppose that Emacs 22.* may have a revised regular expression for
>> dired. I happen to like Emacs 20. The first thing I do on a new
>> install is to replace Emacs 2{1,2} with Emacs 20.)
> now why on earth would you want to do that, and miss out on all the
> improvements that emacs 22 (and 23 in cvs) offer? of the things that i use
> emacs for, there isn't a single thing i can think of that i could do as
> easily (or even at all) in emacs 20...
There isn't a single thing you can think of that you use emacs for
that you could do at all in emacs 20? Wow.
Jim
Actually that option has been in ls since Slackware 9.1). It is just that:
a) the MAN page for ls in Slackware 10.x is still the 5.x version
(out of the man-pages package and NOT the coreutils one, which
DOES contain a newer man-page, but it gets overwritten).
b) the LC_ALL=POSIX setting is still present in 10.x login scripts,
while in 12.0 it is _only_ present in the /etc/csh.login one
(Pat probably forgot to remove it, it IS gone in /etc/profile and
in the /etc/profile.d/lang.* scripts).
--
*******************************************************************
** Eef Hartman, Delft University of Technology, dept. SSC/ICT **
** e-mail: E.J.M....@tudelft.nl, fax: +31-15-278 7295 **
** snail-mail: P.O. Box 5031, 2600 GA Delft, The Netherlands **
*******************************************************************
Are you sure that's still occurring in the -current tree?
We've recently updated to the new man-pages 3.x series, and
there's code in the build script to prevent stomping on pages
that are installed by other packages. If it's still a problem
there, please let me know (perhaps consider emailing me at
rworkman@ to make sure I don't miss it).
-RW