Provided by: libdate-manip-perl_6.95-1_all bug

NAME

       Date::Manip::Lang - language support for Date::Manip

DESCRIPTION

       Date::Manip supports a number of different languages when parsing dates, and more can be added.

CURRENT LANGUAGES

       Currently, the following languages are supported by Date::Manip.  The version of Date::Manip where they
       were added is included (so you can see the minimum version of Date::Manip needed to parse each).

       The language can be chosen by setting the Language config variable to the name of the language or any of
       the aliases included in the table.

       All names and aliases are case insensitive.

          Language     Version  Aliases

          English      default  en, en_us

          Catalan      5.43     ca
          Danish       5.41     da
          Dutch        5.32     Nederlands, nl
          Finnish      6.31     fi, fi_fi
          French       5.02     fr, fr_fr
          German       5.31     de, de_de
          Italian      5.35     it, it_it
          Norwegian    6.21     nb, nb_no
          Polish       5.32     pl, pl_pl
          Portuguese   5.34     pt, pt_pt
          Romanian     5.35     ro, ro_ro
          Russian      5.41     ru, ru_ru
          Spanish      5.33     es, es_es
          Swedish      5.05     sv
          Turkish      5.41     tr, tr_tr

ADDING A LANGUAGE

       Adding a language is easily done (if you're fluent in both English and the other language).  If you want
       to add a new language, do the following:

       Language name
           When  you  submit  the  new  language,  I'll need the name of the language (of course) and any common
           locale names that might be useful for people to select the language.

           For example, if you were creating a Spanish translation (which is  not  necessary  since  it  already
           exists), I would need the following list:

              spanish es es_es

       Copy the english module
           Copy the english.pm file (which is in lib/Date/Manip/Lang in the Date::Manip distribution) to the new
           language (i.e. spanish.pm in this example).

       Set some variables in the new module
           The  new  module  (spanish.pm)  will  need  a few simple modifications.  Change the package name from
           'english' to 'spanish'.

           Fix the @Encodings lines.  Most languages can be written  in  more  than  one  encoding.   The  first
           encoding  in  the list should be utf-8 and the last should be perl.  Include any other encodings that
           should be supported as well.

           Set the $YearAdded and $LangName appropriately.

       Translate the language terms
           The data section of the module is fairly straightforward to translate.

           Every term is defined in the Date::Manip::Lang::english document (or in any  of  the  other  language
           module  documents),  so  please  refer  to  it to find out what each element means.  Then replace the
           English version with the new translation.

           There are some requirements:

           1) Every element should be defined (except for the sephm and sepms elements which are optional).

           2) The module must be  written  using  UTF-8  characters  if  the  language  includes  any  non-ASCII
           characters.

           3)  Each element includes a list of values (different variations of the element).  In most cases, the
           order of the values for each element is not important since they are just used to  create  a  regular
           expression for parsing dates, but a few of them are also used to determine printable values using the
           "Date::Manip::Date::printf" method (or the "UnixDate" function).  These elements are:

              Element       printf directive

              ampm          %p
              day_abb       %a
              day_char      %v
              day_name      %A
              month_abb     %b
              month_name    %B
              nth           %E

           For each of these, the value that should be printed out must be the first value in the list.

           4)  When  possible,  if  a  language includes characters that are essentially ASCII characters with a
           punctuation mark, please include a variation of the value which is just ASCII  with  the  punctuation
           removed.   For  example,  the  spanish  name  for  Saturday  in ASCII would be written sabado, but in
           reality, the first 'a' has an accent over it. This word should appear twice... first  in  full  UTF-8
           encoding,  and  second  as  all ASCII. If the language (Russian for example) has no ASCII equivalent,
           just include the UTF-8 representation.

       Feel free to contact me if you have any questions.

LANGUAGE SPECIFIC RULES

       In the language file, there is one special value named _special_rules.  This is a hash of special parsing
       rules that will be applied for this language.

       Currently the following rules are available:

       remove_trailing_period
           If this is set, trailing periods will be removed.

           For example, in German, default output of the date command includes a day of month  with  a  trailing
           period.  For example:

              Mo 3. Jan 11:00:00 EST 2022

           If this rule is set, periods followed by whitespace (or an end of string) are stripped.

       remove_parens
           This will strip parentheses () from a string.

       strip_word
           This  is  a  list  of  words that will be stripped from a string.  Each word must be bracketed by the
           start/end of the string or whitespace.

SEE ALSO

       Date::Manip        - main module documentation

LICENSE

       This script is free software; you can redistribute it and/or modify it  under  the  same  terms  as  Perl
       itself.

AUTHOR

       Sullivan Beck (sbeck@cpan.org)

perl v5.38.2                                       2024-03-02                             Date::Manip::Lang(3pm)