[PATCH] devel/man-to-mdwn.pl: portable locale environment variable setting
Tomi Ollila
tomi.ollila at iki.fi
Thu Jun 9 12:35:12 PDT 2016
Setting locale environment variables (LC_* and LANG) to e.g.
en_US.utf8 works fine on Linux, and that is what locale -a
returns (in Linux). However this does not work e.g. in some *BSD
systems.
In these systems, en_US.UTF-8 works. This also works in Linux
systems (which may look like a surprising thing on the first sight(*)).
But that *UTF-8 format seems to be widely used in the Linux system:
Grep it through the files in /etc/, for example.
Easy way to test: Run the following command lines. First should
complain about setting locale failed, and second should not.
$ LC_ALL=en_US.UTF-1 perl -e ''
$ LC_ALL=en_US.UTF-8 perl -e ''
(*) and who knows what the "standard" is...
---
devel/man-to-mdwn.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/devel/man-to-mdwn.pl b/devel/man-to-mdwn.pl
index f9d31b73a237..a3c40695c4ea 100755
--- a/devel/man-to-mdwn.pl
+++ b/devel/man-to-mdwn.pl
@@ -66,7 +66,7 @@ while (my ($k, $v) = each %fhash)
my @lines;
open I, '-|', qw/env -i/, "PATH=$ENV{PATH}",
- qw/TERM=vt100 LANG=en_US.utf8 LC_ALL=en_US.utf8/,
+ qw/TERM=vt100 LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8/,
qw/GROFF_NO_SGR=1 MAN_KEEP_FORMATTING=1 MANWIDTH=80/,
qw/man/, $v or die "$!";
binmode I, ':utf8';
--
2.8.2
More information about the notmuch
mailing list