Provided by: grace_5.1.25-5build1_amd64 bug


       convcal - convert dates to different formats


       convcal [OPTIONS] [DATE]


       convcal  is  part  of  the grace software package, an application for two-dimensional data
       visualization. convcal converts dates from and to  various  formats.  The  following  date
       formats are supported (hour, minutes and seconds are always optional):

       iso    1999-12-31T23:59:59.999

              31/12/1999 23:59:59.999 or 31/12/99 23:59:59.999

       us     12/31/1999 23:59:59.999 or 12/31/99 23:59:59.999

       days   123456.789


       The formats are tried in the following order : users's choice, iso, european and us (there
       is no ambiguity between calendar formats and numerical formats and therefore no  order  is
       specified for them).


       convcal reads the dates either on the command line or in the standard input if the command
       line contains no date.

       The user's choice for the input format put one format before the other ones in  the  trial
       list,  this is mainly useful for US citizen which would certainly prefer to have US format
       checked before european format. The default user's choice (nohint)  does  nothing  so  the
       following formats of the list are checked.

       The  separators  between various fields can be any characters in the set: " :/.-T". One or
       more spaces act as one separator, other characters can not be repeated, the T separator is
       allowed  only  between date and time, mainly for iso8601. So the string "1999-12 31:23-59"
       is allowed (but not recommended).  The '-' character is used both as a  separator  (it  is
       traditionally used in iso8601 format) and as the unary minus (for dates in the far past or
       for numerical dates). When the year is between 0 and 99 and is written with  two  or  less
       digits,  it  is  mapped  to the era beginning at wrap year and ending at wrap year + 99 as
       follows :

       [wy ; 99] -> [ wrap_year ; 100*(1 + wrap_year/100) - 1 ]

       [00 ; wy-1] -> [ 100*(1 + wrap_year/100) ; wrap_year + 99]

       so for example if the wrap year is set to 1950 (which is  the  default  value),  then  the
       mapping is :

       range [00 ; 49] is mapped to [2000 ; 2049]

       range [50 ; 99] is mapped to [1950 ; 1999]

       this is reasonably Y2K compliant and is consistent with current use.  Specifying year 1 is
       still possible using more than two digits as follows : "0001-03-04" is unambiguously March
       the  4th, year 1, even if the user's choice is us format. However using two digits only is
       not recommended (we introduce a 2050 bug here so this feature should be  removed  at  some
       point in the future ;-)

       Numerical  dates  (days  and  seconds  formats)  can  be  specified using integer, real or
       exponential formats (the 'd' and 'D'  exponant  markers  from  fortran  are  supported  in
       addition  to  'e' and 'E').  They are computed according to a customizable reference date.
       The default value is given by the REFDATE constant in the source  file.   You  can  change
       this  value  as  you  want  before  compiling,  and you can change it at will using the -r
       command line option. The default value in the distributed file is  "-4713-01-01T12:00:00",
       it  is  a classical reference for astronomical events (note that the '-' is used here both
       as a unary minus and as a separator).

       The program can be used either for Denys's and gregorian calendars. It does not take  into
       account  leap seconds : you can think it works only in International Atomic Time (TAI) and
       not in Coordinated Unified Time (UTC) ...  Inexistant dates  are  detected,  they  include
       year  0,  dates between 1582-10-05 and 1582-10-14, February 29th of non leap years, months
       below 1 or above 12, ...


       A summary of the options supported by convcal is included below.

       -h     prints the help message on stderr and exits successfully

       -i format
              set user's choice for input format, supported formats are iso, european, us,  days,
              seconds  and  nohint.  At the beginning the input format is nohint, which means the
              program try to guess the format by itself, if the user's choice does not  allow  to
              parse the date, other formats are tried

       -o format
              force  output  format,  supported  formats are iso, european, us, days, seconds and
              nohint.  At the beginning, the output format is nohint,  which  means  the  program
              uses  days  format for dates read in any calendar format and uses iso8601 for dates
              read in numerical format

       -r date
              set reference date (the date is  read  using  the  current  input  format)  at  the
              beginning the reference is set according to the REFDATE constant in the code, which
              is -4713-01-01T12:00:00 in the distributed file.

       -w year
              set the wrap year to year




       Luc Maisonobe

       This man-page was written by Jan  Schaumann  <>  as  part  of  "The
       Missing Man Pages Project".  Please see for