Jos Backus <[EMAIL PROTECTED]> writes:

> It would seem that GNU date should simply dispense with emitting the `T'
> between the date and time field in IOS 8601 mode until the parsing of this
> particular format is supported. The `T' is optional according to the standard

It is?  As far as I can tell, it's required.

> Please consider removing the `T' from the iso_format_strings.

That seems a bit extreme, for backward-compatibility reasons.  However,
I agree that the "T" is ugly and should get removed.

How about if we do it by supporting Internet RFC 3339 instead?
See:

G. Klyne & C. Newman
Date and Time on the Internet: Timestamps (2002-07)
<http://www.ietf.org/rfc/rfc3339.txt>

That is, how about if we do the following?

1.  Keep --iso-8601 the way it is, for backward-compatibility reasons,
    but deprecate it and stop documenting it.

2.  Introduce a new option --rfc-3339[=TIMESPEC], with the same operands as
    --iso-8601, but with the following differences:

    2a.  Output a space instead of "T".
         RFC 3339 allows this "for the sake of readability".

    2b.  Output "." instead of "," for the decimal point.
         RFC 3339 requires this.

    2c.  Output ":" between the hours and minutes of the time zone offset.

    2d.  The TIMESPEC defaults to whatever resolution is supported by
         the current host.

3.  For convenience, introduce a new short option -i that is
    equivalent to --rfc-3339 with the default TIMESPEC.  The mnemonic
    is that "-i" is short for "Internet time".

So, for example:

$ date -i
2005-07-22 09:13:17.959906-07:00


_______________________________________________
Bug-coreutils mailing list
Bug-coreutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-coreutils

Reply via email to