|
From: Ethan M. <merritt@u.washington.edu> - 2008-02-14 18:29:16
|
The current documentation for "set decimalsign" says:
The `set decimalsign` command selects a decimal sign for numbers
printed into tic labels or `set label` strings.
The current documentation for "set locale" says:
The `locale` setting determines the language with which
`{x,y,z}{d,m}tics` will write the days and months.
Both of those statements describe a very limited scope, although they
disagree about whether label text falls within this scope.
The current documenation for "set decimal locale 'foo'" descibes a
larger scope:
This instructs the program to format all input and output in
accordance with locale "foo", which must be installed.
4.2
===
It is worth noting that locale support in version 4.2 is currently
broken in a number of ways. For example, issuing "set decimal locale"
for a locale with comma as a decimal separator breaks output to
the postscript and svg terminals. This is because (notwithstanding
the documentation quoted above) the scope of the "set decimal" command
is quite broad.
CVS
===
Locale handling in the CVS version was re-worked to avoid the problems
in 4.2 In the CVS code, the locale is always set to "C" except for
three specific cases:
(1) Data input
(2) Formatting by the internal function gprintf()
- Used internally to format the axis tick labels.
- Also available as a user-callable function
(3) Formatting by the user-callable function sprintf()
Questions
=========
The current documentation for "set decimal locale" is incorrect for
both 4.2 and CVS; it is not applied to "all input and output".
- Should the locale be applied to data output via "set table 'filename'"?
Both 4.2 and CVS do this, although it is not specifically documented.
- Should the locale be applied to output from "print foo"?
4.2 does this; CVS does not.
- Should the locale be applied to output from "show variables"?
Neither 4.2 nor CVS does this.
I am inclined to say "yes" to the first, and "no" to the other two.
But it's not a strong opinion.
- What do we really want the "set locale" command to do?
The current use is so restricted as to be confusing.
I am inclined to say this command should be deprecated in favor of
a "locale" keyword for "set timefmt". But I never use this, so I defer
to people for whom it actually matters.
--
Ethan A Merritt
|