diff options
Diffstat (limited to 'org/i18n.org')
| -rw-r--r-- | org/i18n.org | 2453 | 
1 files changed, 2453 insertions, 0 deletions
| diff --git a/org/i18n.org b/org/i18n.org new file mode 100644 index 00000000..0aea09d6 --- /dev/null +++ b/org/i18n.org @@ -0,0 +1,2453 @@ +-*- mode: org -*- +#+TITLE:       sisu i18n +#+DESCRIPTION: documents - structuring, various output representations & search +#+FILETAGS:    :sisu:i18n: +#+AUTHOR:      Ralph Amissah +#+EMAIL:       [[mailto:ralph.amissah@gmail.com][ralph.amissah@gmail.com]] +#+COPYRIGHT:   Copyright (C) 2015 - 2021 Ralph Amissah +#+LANGUAGE:    en +#+STARTUP:     content hideblocks hidestars noindent entitiespretty +#+OPTIONS:     H:3 num:nil toc:t \n:nil @:t ::t |:t ^:nil _:nil -:t f:t *:t <:t +#+PROPERTY:    header-args  :exports code +#+PROPERTY:    header-args+ :noweb yes +#+PROPERTY:    header-args+ :eval no +#+PROPERTY:    header-args+ :results no +#+PROPERTY:    header-args+ :cache no +#+PROPERTY:    header-args+ :padline no + +* i18n +** i18n.rb + +#+BEGIN_SRC ruby  :tangle "../lib/sisu/i18n.rb" +# <<sisu_document_header>> +module SiSU_i18n +  @@language_table,@@language_list=nil,nil +  class Languages +    def language +      def table +        @@language_table ||= { +          am:    { c: 'am',    n: 'Amharic',           t: 'Amharic',                     xlp: 'amharic'          }, +          bg:    { c: 'bg',    n: 'Bulgarian',         t: 'Български (Bəlgarski)',       xlp: 'bulgarian'        }, +          bn:    { c: 'bn',    n: 'Bengali',           t: 'Bengali',                     xlp: 'bengali'          }, +          br:    { c: 'br',    n: 'Breton',            t: 'Breton',                      xlp: 'breton'           }, +          ca:    { c: 'ca',    n: 'Catalan',           t: 'catalan',                     xlp: 'catalan'          }, +          cs:    { c: 'cs',    n: 'Czech',             t: 'česky',                       xlp: 'czech'            }, +          cy:    { c: 'cy',    n: 'Welsh',             t: 'Welsh',                       xlp: 'welsh'            }, +          da:    { c: 'da',    n: 'Danish',            t: 'dansk',                       xlp: 'danish'           }, +          de:    { c: 'de',    n: 'German',            t: 'Deutsch',                     xlp: 'german'           }, +          el:    { c: 'el',    n: 'Greek',             t: 'Ελληνικά (Ellinika)',         xlp: 'greek'            }, +          en:    { c: 'en',    n: 'English',           t: 'English',                     xlp: 'english'          }, +          eo:    { c: 'eo',    n: 'Esperanto',         t: 'Esperanto',                   xlp: 'esperanto'        }, +          es:    { c: 'es',    n: 'Spanish',           t: 'español',                     xlp: 'spanish'          }, +          et:    { c: 'et',    n: 'Estonian',          t: 'Estonian',                    xlp: 'estonian'         }, +          eu:    { c: 'eu',    n: 'Basque',            t: 'basque',                      xlp: 'basque'           }, +          fi:    { c: 'fi',    n: 'Finnish',           t: 'suomi',                       xlp: 'finnish'          }, +          fr:    { c: 'fr',    n: 'French',            t: 'français',                    xlp: 'french'           }, +          ga:    { c: 'ga',    n: 'Irish',             t: 'Irish',                       xlp: 'irish'            }, +          gl:    { c: 'gl',    n: 'Galician',          t: 'Galician',                    xlp: 'galician'         }, +          he:    { c: 'he',    n: 'Hebrew',            t: 'Hebrew',                      xlp: 'hebrew'           }, +          hi:    { c: 'hi',    n: 'Hindi',             t: 'Hindi',                       xlp: 'hindi'            }, +          hr:    { c: 'hr',    n: 'Croatian',          t: 'Croatian',                    xlp: 'croatian'         }, +          hy:    { c: 'hy',    n: 'Armenian',          t: 'Armenian',                    xlp: 'armenian'         }, +          ia:    { c: 'ia',    n: 'Interlingua',       t: 'Interlingua',                 xlp: 'interlingua'      }, +          is:    { c: 'is',    n: 'Icelandic',         t: 'Icelandic',                   xlp: 'icelandic'        }, +          it:    { c: 'it',    n: 'Italian',           t: 'Italiano',                    xlp: 'italian'          }, +          ja:    { c: 'ja',    n: 'Japanese',          t: '日本語 (Nihongo)',            xlp: 'japanese'         }, +          ko:    { c: 'ko',    n: 'Korean',            t: 'Korean',                      xlp: 'korean'           }, +          la:    { c: 'la',    n: 'Latin',             t: 'Latin',                       xlp: 'latin'            }, +          lo:    { c: 'lo',    n: 'Lao',               t: 'Lao',                         xlp: 'lao'              }, +          lt:    { c: 'lt',    n: 'Lithuanian',        t: 'Lithuanian',                  xlp: 'lithuanian'       }, +          lv:    { c: 'lv',    n: 'Latvian',           t: 'Latvian',                     xlp: 'latvian'          }, +          ml:    { c: 'ml',    n: 'Malayalam',         t: 'Malayalam',                   xlp: 'malayalam'        }, +          mr:    { c: 'mr',    n: 'Marathi',           t: 'Marathi',                     xlp: 'marathi'          }, +          nl:    { c: 'nl',    n: 'Dutch',             t: 'Nederlands',                  xlp: 'dutch'            }, +          no:    { c: 'no',    n: 'Norwegian',         t: 'norsk',                       xlp: 'norsk'            }, +          nn:    { c: 'nn',    n: 'Norwegian Nynorsk', t: 'nynorsk',                     xlp: 'nynorsk'          }, +          oc:    { c: 'oc',    n: 'Occitan',           t: 'Occitan',                     xlp: 'occitan'          }, +          pl:    { c: 'pl',    n: 'Polish',            t: 'polski',                      xlp: 'polish'           }, +          pt:    { c: 'pt',    n: 'Portuguese',        t: 'Português',                   xlp: 'portuges'         }, +          pt_BR: { c: 'pt_BR', n: 'Portuguese Brazil', t: 'Brazilian Português',         xlp: 'brazilian'        }, +          ro:    { c: 'ro',    n: 'Romanian',          t: 'română',                      xlp: 'romanian'         }, +          ru:    { c: 'ru',    n: 'Russian',           t: 'Русский (Russkij)',           xlp: 'russian'          }, +          sa:    { c: 'sa',    n: 'Sanskrit',          t: 'Sanskrit',                    xlp: 'sanskrit'         }, +          se:    { c: 'se',    n: 'Sami',              t: 'Samin',                       xlp: 'samin'            }, +          sk:    { c: 'sk',    n: 'Slovak',            t: 'slovensky',                   xlp: 'slovak'           }, +          sl:    { c: 'sl',    n: 'Slovenian',         t: 'Slovenian',                   xlp: 'slovenian'        }, +          sq:    { c: 'sq',    n: 'Albanian',          t: 'Albanian',                    xlp: 'albanian'         }, +          sr:    { c: 'sr',    n: 'Serbian',           t: 'Serbian',                     xlp: 'serbian'          }, +          sv:    { c: 'sv',    n: 'Swedish',           t: 'svenska',                     xlp: 'swedish'          }, +          ta:    { c: 'ta',    n: 'Tamil',             t: 'Tamil',                       xlp: 'tamil'            }, +          te:    { c: 'te',    n: 'Telugu',            t: 'Telugu',                      xlp: 'telugu'           }, +          th:    { c: 'th',    n: 'Thai',              t: 'Thai',                        xlp: 'thai'             }, +          tk:    { c: 'tk',    n: 'Turkmen',           t: 'Turkmen',                     xlp: 'turkmen'          }, +          tr:    { c: 'tr',    n: 'Turkish',           t: 'Türkçe',                      xlp: 'turkish'          }, +          uk:    { c: 'uk',    n: 'Ukranian',          t: 'українська (ukrajins\'ka)',   xlp: 'ukrainian'        }, +          ur:    { c: 'ur',    n: 'Urdu',              t: 'Urdu',                        xlp: 'urdu'             }, +          us:    { c: 'en',    n: 'English (American)',t: 'English',                     xlp: 'english'          }, +          vi:    { c: 'vi',    n: 'Vietnamese',        t: 'Vietnamese',                  xlp: 'vietnamese'       }, +          zh:    { c: 'zh',    n: 'Chinese',           t: '中文',                        xlp: 'chinese'          }, +          en:    { c: 'en',    n: 'English',           t: 'English',                     xlp: 'english'          }, +          xx:    { c: 'xx',    n: 'Default',           t: 'English',                     xlp: 'english'          }, +        } +      end +      def list +        @@language_list ||= { +          'am'    => table[:am], +          'bg'    => table[:bg], +          'bn'    => table[:bn], +          'br'    => table[:br], +          'ca'    => table[:ca], +          'cs'    => table[:cs], +          'cy'    => table[:cy], +          'da'    => table[:da], +          'de'    => table[:de], +          'el'    => table[:el], +          'en'    => table[:en], +          'eo'    => table[:eo], +          'es'    => table[:es], +          'et'    => table[:et], +          'eu'    => table[:eu], +          'fi'    => table[:fi], +          'fr'    => table[:fr], +          'ga'    => table[:ga], +          'gl'    => table[:gl], +          'he'    => table[:he], +          'hi'    => table[:hi], +          'hr'    => table[:hr], +          'hy'    => table[:hy], +          'ia'    => table[:ia], +          'is'    => table[:is], +          'it'    => table[:it], +          'ja'    => table[:ja], +          'ko'    => table[:ko], +          'la'    => table[:la], +          'lo'    => table[:lo], +          'lt'    => table[:lt], +          'lv'    => table[:lv], +          'ml'    => table[:ml], +          'mr'    => table[:mr], +          'nl'    => table[:nl], +          'no'    => table[:no], +          'nn'    => table[:nn], +          'oc'    => table[:oc], +          'pl'    => table[:pl], +          'pt'    => table[:pt], +          'pt_BR' => table[:pt_BR], +          'ro'    => table[:ro], +          'ru'    => table[:ru], +          'sa'    => table[:sa], +          'se'    => table[:se], +          'sk'    => table[:sk], +          'sl'    => table[:sl], +          'sq'    => table[:sq], +          'sr'    => table[:sr], +          'sv'    => table[:sv], +          'ta'    => table[:ta], +          'te'    => table[:te], +          'th'    => table[:th], +          'tk'    => table[:tk], +          'tr'    => table[:tr], +          'uk'    => table[:uk], +          'ur'    => table[:ur], +          'us'    => table[:en], +          'vi'    => table[:vi], +          'zh'    => table[:zh], +          'en'    => table[:en], +          'xx'    => table[:en] +        } +      end +      self +    end +  end +  class Alphabet +    def initialize(lng_code) +      @lng_code=lng_code +    end +    def hash_arrays +      @alph=case @lng_code +      when /en/                                                              #english +        { +          u: %w[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z], +          l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z] +        } +      when /da|no|nn/                                                        #danish, norwegian +        { +          u: %w[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Å Æ Ø], +          l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z å æ ø] +          #u: %W[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Æ Ø Å], +          #l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z æ ø å] +        } +      when /sv/                                                              #swedish +        { +          u: %w[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Å Ä Ö], +          l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z å ä ö] +        } +      else                                                                   #english default +        { +          u: %w[A B C D E F G H I J K L M N O P Q R S T U V W X Y Z], +          l: %w[a b c d e f g h i j k l m n o p q r s t u v w x y z] +        } +      end +    end +    def hash_strings +      { u: hash_arrays[:u].join, l: hash_arrays[:l].join } +    end +  end +end +__END__ +Language Lists +,* po4a c: +  <http://www.debian.org/international/l10n/po/> +  Px[:lng_lst] see constants.rb +,* polyglossia xlp: +  <http://mirrors.ctan.org/macros/xetex/latex/polyglossia/polyglossia.pdf> +  missing from (:c) list: +    arabic asturian bahasai bahasam coptic divehi farsi lsorbian magyar scottish syriac usorbian +note ISO_639-1 +  <http://en.wikipedia.org/wiki/ISO_639-1> +  <http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes> +also note ISO_639-2 +  <http://en.wikipedia.org/wiki/ISO_639-2> +  <http://en.wikipedia.org/wiki/List_of_ISO_639-2_codes> + +Px[:lng_lst] # constants.rb + +module SiSU_TextTranslation +  class Language +    def initialize(md) +      @md=md +    end +    def tex_name(char) +      @lang=if char +        case char +        when 'sq'    then 'albanian' +        when 'am'    then 'amharic' +       #when 'ar'    then 'arabic'         # see polyglossia +        when 'hy'    then 'armenian' +       #when ''      then 'asturian'       # polyglossia +       #when ''      then 'bahasai'        # polyglossia +       #when ''      then 'bahasam'        # polyglossia +        when 'eu'    then 'basque' +        when 'bn'    then 'bengali' +        when 'pt_BR' then 'brazilian' +        when 'br'    then 'breton' +        when 'bg'    then 'bulgarian' +        when 'ca'    then 'catalan'        # see polyglossia +       #when ''      then 'coptic'         # polyglossia +        when 'hr'    then 'croatian' +        when 'cs'    then 'czech' +        when 'da'    then 'danish' +       #when ''      then 'divehi'         # polyglossia +        when 'nl'    then 'dutch'          # see polyglossia +        when 'en'    then 'english'        # see polyglossia +        when 'eo'    then 'esperanto'      # see polyglossia +        when 'et'    then 'estonian' +        when 'gl'    then 'galician' +        when 'de'    then 'german' +        when 'el'    then 'greek'          #gl ? +        when 'he'    then 'hebrew' +        when 'hi'    then 'hindi' +        when 'is'    then 'icelandic' +        when 'ia'    then 'interlingua' +        when 'ga'    then 'irish' +        when 'it'    then 'italian' +       #when ''      then 'farsi'          # polyglossia +        when 'fi'    then 'finnish' +        when 'fr'    then 'french' +        when 'lo'    then 'lao' +        when 'la'    then 'latin' +        when 'lv'    then 'latvian' +        when 'lt'    then 'lithuanian' +       #when ''      then 'lsorbian'       # polyglossia +       #when ''      then 'magyar'         # polyglossia +        when 'ml'    then 'malayalam' +        when 'mr'    then 'marathi' +       #when 'hu'    then 'magyar' +        when 'no'    then 'norske' +        when 'nn'    then 'nynorsk' +        when 'oc'    then 'occitan' +        when 'pl'    then 'polish' +        when 'pt'    then 'portuges' +        when 'ro'    then 'romanian' +        when 'ru'    then 'russian' +        when 'se'    then 'samin'          #(check sami?) +        when 'sa'    then 'sanskrit' +        when 'sr'    then 'serbian' +       #when ''      then 'scottish'       # polyglossia  (gd (Gaelic (Scots))) +        when 'sk'    then 'slovak' +        when 'sl'    then 'slovenian' +        when 'es'    then 'spanish' +        when 'sv'    then 'swedish' +        when 'ta'    then 'tamil' +        when 'te'    then 'telugu' +        when 'th'    then 'thai' +        when 'tr'    then 'turkish' +        when 'tk'    then 'turkmen' +        when 'uk'    then 'ukrainian' +        when 'ur'    then 'urdu' +       #when ''      then 'usorbian'       # polyglossia +        when 'vi'    then 'vietnamese' +        when 'cy'    then 'welsh' +        when 'us'    then 'USenglish'      # depreciated, see iso-639-2 +        else         then 'english' +        end +      else            'english' +      end +    end +  end +end +__END__ +#+END_SRC + +* prog_text_translation.rb + +#+BEGIN_SRC ruby  :tangle "../lib/sisu/prog_text_translation.rb" +# <<sisu_document_header>> +module SiSU_Translate +  require_relative 'se'                                 # se.rb +    include SiSU_Env; include SiSU_Param +  class Source +    def initialize(md,doc_lang,trans_str='') +      @md,@doc_lang,@trans_str=md,doc_lang,trans_str +      @lang_class=case @doc_lang +      when /American/i       then English.new(md,doc_lang,trans_str)    # tag depreciated, see iso 639-2 +      when /English/i        then English.new(md,doc_lang,trans_str) +      when /French/i         then French.new(md,doc_lang,trans_str) +      when /German/i         then German.new(md,doc_lang,trans_str) +      when /Italian/i        then Italian.new(md,doc_lang,trans_str) +      when /Spanish/i        then Spanish.new(md,doc_lang,trans_str) +      when /Portuguese Brazil|Brazilian(?: Portuguese)?/i +                                  Portuguese.new(md,doc_lang,trans_str) # tag depreciated, see iso 639-2 +      when /Portuguese/i     then Portuguese.new(md,doc_lang,trans_str) +      when /Swedish/i        then Swedish.new(md,doc_lang,trans_str) +      when /Danish/i         then Danish.new(md,doc_lang,trans_str) +      when /Finnish/i        then Finnish.new(md,doc_lang,trans_str) +      when /Norwegian/i      then Norwegian.new(md,doc_lang,trans_str) +      when /Icelandic/i      then Icelandic.new(md,doc_lang,trans_str) +      when /Dutch/i          then Dutch.new(md,doc_lang,trans_str) +      when /Estonian/i       then Estonian.new(md,doc_lang,trans_str) +      when /Hungarian/i      then Hungarian.new(md,doc_lang,trans_str) +      when /Polish/i         then Polish.new(md,doc_lang,trans_str) +      when /Romanian/i       then Romanian.new(md,doc_lang,trans_str) +      when /Russian/i        then Russian.new(md,doc_lang,trans_str) +      when /Greek/i          then Greek.new(md,doc_lang,trans_str) +      when /Ukranian/i       then Ukranian.new(md,doc_lang,trans_str) +      when /Turkish/i        then Turkish.new(md,doc_lang,trans_str) +      when /Slovenian/i      then Slovenian.new(md,doc_lang,trans_str) +      when /Croatian/i       then Croatian.new(md,doc_lang,trans_str) +      when /Slovak(?:ian)?/i then Slovak.new(md,doc_lang,trans_str) +      when /Czech/i          then Czech.new(md,doc_lang,trans_str) +      when /Bulgarian/i      then Bulgarian.new(md,doc_lang,trans_str) +      else                        English.new(md,doc_lang,trans_str) +      end +    end +    def filename +      @lang_class.filename +    end +    def metadata +      @lang_class.metadata +    end +    def filetype_description +      @lang_class.filetype_description +    end +    def file_size +      @lang_class.file_size +    end +    def sourcefile +      @lang_class.sourcefile +    end +    def sourcefile_digest +      @lang_class.sourcefile_digest +    end +    def full_title #dc +      @lang_class.full_title +    end +    def title +      @lang_class.title +    end +    def subtitle +      @lang_class.subtitle +    end +    def author +      @lang_class.author +    end +    def contributor +      @lang_class.contributor +    end +    def translator +      @lang_class.translator +    end +    def illustrator +      @lang_class.illustrator +    end +    def publisher +      @lang_class.publisher +    end +    def prepared_by +      @lang_class.prepared_by +    end +    def digitized_by +      @lang_class.digitized_by +    end +    def contents +      @lang_class.contents +    end +    def subject +      @lang_class.subject +    end +    def description #dc (watch) +      @lang_class.description +    end +    def abstract +      @lang_class.abstract +    end +    def type +      @lang_class.type +    end +    def rights +      @lang_class.rights +    end +    def date +      @lang_class.date +    end +    def date_created +      @lang_class.date_created +    end +    def date_available +      @lang_class.date_available +    end +    def date_valid +      @lang_class.date_valid +    end +    def date_modified +      @lang_class.date_modified +    end +    def date_issued +      @lang_class.date_issued +    end +    def language +      @lang_class.language +    end +    def language_original +      @lang_class.language_original +    end +    def format +      @lang_class.format +    end +    def identifier +      @lang_class.identifier +    end +    def source +      @lang_class.source +    end +    def relation +      @lang_class.relation +    end +    def coverage +      @lang_class.coverage +    end +    def keywords +      @lang_class.keywords +    end +    def comments +      @lang_class.comments +    end +    def cls_loc +      @lang_class.cls_loc +    end +    def cls_dewey +      @lang_class.cls_dewey +    end +    def cls_oclc +      @lang_class.cls_oclc +    end +    def cls_gutenberg +      @lang_class.cls_gutenberg +    end +    def cls_isbn +      @lang_class.cls_isbn +    end +    def prefix_a +      @lang_class.prefix_a +    end +    def prefix_b +      @lang_class.prefix_b +    end +    def topic_register +      @lang_class.topic_register +    end +    def fns +      @lang_class.fns +    end +    def word_count +      @lang_class.word_count +    end +    def dgst +      @lang_class.dgst +    end +    def sc_number +      @lang_class.sc_number +    end +    def sc_date +      @lang_class.sc_date +    end +    def last_generated +      @lang_class.last_generated +    end +    def sisu_version +      @lang_class.sisu_version +    end +    def ruby_version +      @lang_class.ruby_version +    end +    def suggested_links +      @lang_class.suggested_links +    end +    def language_version_list +      @lang_class.language_version_list +    end +    def language +      @lang_class.language +    end +    def manifest_description +      @lang_class.manifest_description +    end +    def manifest_description_output +      @lang_class.manifest_description_output +    end +    def manifest_description_metadata +      @lang_class.manifest_description_metadata +    end +    def language_list_translated +      @lang_class.language_list +    end +    def language_list +      case @trans_str +      when /American/i       then 'American English'                    # tag depreciated, see iso 639-2 +      when /English/i        then 'English' +      when /French/i         then 'français' +      when /German/i         then 'Deutsch' +      when /Italian/i        then 'Italiano' +      when /Spanish/i        then 'español' +      when /Portuguese Brazil|Brazilian(?: Portuguese)?/i +                                  'Brazilian Português'                 # tag depreciated, see iso 639-2 +      when /Portuguese/i     then 'Português' +      when /Swedish/i        then 'svenska' +      when /Danish/i         then 'dansk' +      when /Finnish/i        then 'suomi' +      when /Norwegian/i      then 'norsk' +      when /Icelandic/i      then 'Icelandic' +      when /Dutch/i          then 'Nederlands' +      when /Estonian/i       then 'Estonian' +      when /Hungarian/i      then 'Hungarian' +      when /Polish/i         then 'polski' +      when /Romanian/i       then 'română' +      when /Russian/i        then 'Русский (Russkij)' +      when /Greek/i          then 'Ελληνικά (Ellinika)' +      when /Ukranian/i       then 'українська (ukrajins\'ka)' +      when /Turkish/i        then 'Türkçe' +      when /Slovenian/i      then 'Slovenian' +      when /Croatian/i       then 'Croatian' +      when /Slovak(?:ian)?/i then 'slovensky'            #slovensky ? +      when /Czech/i          then 'česky' +      when /Bulgarian/i      then 'Български (Bəlgarski)' +      when /Japanese/i       then '日本語 (Nihongo)' +      when /Korean/i         then '한국어 (Hangul)' +     #when /Catalan/i        then 'català' +      else                         'English' +      end +      #check on 中文  and عربي +    end +  end +  <<language_english>> +  <<language_french>> +  <<language_german>> +  <<language_spanish>> +  <<language_italian>> +  <<language_finnish>> +  <<language_protuguese>> +  <<language_swedish>> +  <<language_remaining>> +end +__END__ +#+END_SRC + +* translations +** English + +#+NAME: language_english +#+BEGIN_SRC  ruby +class English +  def initialize(md,doc_lang,trans_str) +    @md,@doc_lang,@trans_str=md,doc_lang,trans_str +  end +  def filename +    'filename' +  end +  def filetype_description +    'filetype description' +  end +  def metadata +    'metadata' +  end +  def file_size +    'file size' +  end +  def full_title #dc +    'Title' +  end +  def title +    'Title' +  end +  def subtitle +    'Subtitle' +  end +  def author +    'Author' +  end +  def creator #dc +    'Creator' +  end +  def contributor #dc +    'Contributor' +  end +  def translator +    'Translator' +  end +  def illustrator +    'Illustrator' +  end +  def publisher #dc +    'Publisher' +  end +  def prepared_by +    'Prepared by' +  end +  def digitized_by +    'Digitized by' +  end +  def contents +    'Contents' +  end +  def subject #dc +    'Subject' +  end +  def description #dc (watch) +    'Description' +  end +  def abstract #dc +    'Abstract' +  end +  def type #dc +    'Type' +  end +  def rights #dc +    'Rights' +  end +  def date #dc +    'Date' +  end +  def date_created #dc +    'Date created' +  end +  def date_issued #dc +    'Date issued' +  end +  def date_available #dc +    'Date available' +  end +  def date_modified #dc +    'Date modified' +  end +  def date_valid #dc +    'Date valid' +  end +  def language #dc +    'Language' +  end +  def language_original +    'Original Language' +  end +  def format #dc +    'Format' +  end +  def identifier #dc +    'Identifier' +  end +  def source #dc +    'Source' +  end +  def relation #dc +    'Relation' +  end +  def coverage #dc +    'Coverage' +  end +  def keywords +    'Keywords' +  end +  def comments +    'Comments' +  end +  def cls_loc +    'Classify Library of Congress' +  end +  def cls_dewey +    'Classify Dewey' +  end +  def cls_oclc +    'Classify OCLC number' +  end +  def cls_gutenberg +    'Classify Project Gutenberg' +  end +  def cls_isbn +    'Classify ISBN' +  end +  def prefix_a +    'Prefix (a)' +  end +  def prefix_b +    'Prefix (b)' +  end +  def topic_register +    'Topics Registered' +  end +  def sourcefile +    'Sourcefile' +  end +  def word_count +    'Word Count approximate' +  end +  def sourcefile_digest +    'Sourcefile Digest' +  end +  def digest_md5 +    'Sourcefile Digest (md5)' +  end +  def digest_sha256 +    'Sourcefile Digest (sha256)' +  end +  def sc_number +    'Document (RCS/CVS) number' +  end +  def sc_date +    'Document (RCS/CVS) number' +  end +  def last_generated +    'Document (ao) last generated' +  end +  def sisu_version +    'Generated by' +  end +  def ruby_version +    'Ruby version' +  end +  def suggested_links +    'metadata suggested links' +  end +  def language_version_list +    'Document Language Versions, manifests' +  end +  def manifest_description +    'SiSU manifest of document filetypes and metadata' +  end +  def manifest_description_output +    'Available document filetypes' +  end +  def manifest_description_metadata +    'Document Metadata' +  end +  def language_list_translated +    case @trans_str +    when /American/i       then 'American English'                    # tag depreciated, see iso 639-2 +    when /English/i        then 'English' +    when /French/i         then 'French' +    when /German/i         then 'German' +    when /Italian/i        then 'Italian' +    when /Spanish/i        then 'Spanish' +    when /Portuguese Brazil|Brazilian(?: Portuguese)?/i +                                'Brazilian Portuguese'                # tag depreciated, see iso 639-2 +    when /Portuguese/i     then 'Portuguese' +    when /Swedish/i        then 'Swedish' +    when /Danish/i         then 'Danish' +    when /Finnish/i        then 'Finnish' +    when /Norwegian/i      then 'Norwegian' +    when /Icelandic/i      then 'Icelandic' +    when /Dutch/i          then 'Dutch' +    when /Estonian/i       then 'Estonian' +    when /Hungarian/i      then 'Hungarian' +    when /Polish/i         then 'Polish' +    when /Romanian/i       then 'Romanian' +    when /Russian/i        then 'Russian' +    when /Greek/i          then 'Greek' +    when /Ukranian/i       then 'Ukranian' +    when /Turkish/i        then 'Turkish' +    when /Slovenian/i      then 'Slovenian' +    when /Croatian/i       then 'Croatian' +    when /Slovak(?:ian)?/i then 'Slovakian' +    when /Czech/i          then 'Czech' +    when /Bulgarian/i      then 'Bulgarian' +    else @trans_str +    end +  end +end +#+END_SRC + +** French + +#+NAME: language_french +#+BEGIN_SRC text +class French +  def initialize(md,doc_lang,trans_str) +    @md,@doc_lang,@trans_str=md,doc_lang,trans_str +  end +  def filename +    'nom de fichier' +  end +  def filetype_description +    description +  end +  def metadata +    'metadonnées' +  end +  def file_size +    'taille' +  end +  def full_title #dc +    'Titre' +  end +  def title +    'Titre' +  end +  def subtitle +    'Sous titre' +  end +  def author +    'Auteur' +  end +  def author #dc +    'Auteur' +  end +  def contributor #dc +    'Contributeur' +  end +  def translator +    'Traducteur' +  end +  def illustrator +    'Illustrateur' +  end +  def publisher #dc +    'Éditeur' +  end +  def prepared_by +    'Préparé par' +  end +  def digitized_by +    'Numérisé par' +  end +  def contents +    'Contents' #translate +  end +  def subject #dc +    'Sujet' +  end +  def description #dc (watch) +    'Description' +  end +  def abstract #dc +    'Résumé' +  end +  def type #dc +    'Type' +  end +  def rights #dc +    'Droits relatifs à la ressource' +  end +  def date #dc +    'Date' +  end +  def date_created #dc +    'Date de création' +  end +  def date_issued #dc +    'Date de publication' +  end +  def date_available #dc +    'Date de mise à disposition' +  end +  def date_modified #dc +    'Date de modification' +  end +  def date_valid #dc +    'Date de validité' +  end +  def language #dc +    'Langue' +  end +  def language_original +    'Langue originale' +  end +  def format #dc +    'Format' +  end +  def identifier #dc +    'Identifiant' +  end +  def source #dc +    'Source' +  end +  def relation #dc +    'Lien' +  end +  def coverage #dc +    'Portée du document' +  end +  def keywords +    'Mots clef' +  end +  def comments +    'Commentaires' +  end +  def cls_loc +    'Classification de la bibliothèque du congres' +  end +  def cls_dewey +    'Classification Dewey' +  end +  def cls_oclc # fix +    'Classify OCLC number' +  end +  def cls_gutenberg +    'Classification du project Gutenberg' +  end +  def cls_isbn +    'Classification ISBN' +  end +  def prefix_a +    'Préfixe (a)' +  end +  def prefix_b +    'Préfixe (b)' +  end +  def topic_register +    'Topics Registered' +  end +  def sourcefile +    'Fichier source' +  end +  def word_count +    'Nombre approximatif de mots' +  end +  def sourcefile_digest +    'Condensé du fichier source' +  end +  def digest_md5 +    'Condensé du fichier source (md5)' +  end +  def digest_sha256 +    'Condensé du fichier source (sha256)' +  end +  def sc_number +    'Numéro (RCS/CVS) du document' +  end +  def sc_date +    'Numéro (RCS/CVS) du document' +  end +  def last_generated +    'Dernière production du document (metaverse)' +  end +  def sisu_version +    'Généré par' +  end +  def ruby_version +    'Version de Ruby' +  end +  def suggested_links +    'Liens suggérés' +  end +  def language_version_list +    'Versions des langues du document, manifestes' +  end +  def manifest_description +    'SiSU manifest of document filetypes and metadata' +  end +  def manifest_description_output +    'Manifeste SiSU du document généré' +  end +  def manifest_description_metadata +    'Manifeste SiSU des métadonnées du document' +  end +  def language_list_translated +    case @trans_str +    when /American/i       then 'Anglais americain'                   # tag depreciated, see iso 639-2 +    when /English/i        then 'Anglais' +    when /French/i         then 'Français' +    when /German/i         then 'Allemand' +    when /Italian/i        then 'Italien' +    when /Spanish/i        then 'Espagnol' +    when /Portuguese Brazil|Brazilian(?: Portuguese)?/i +                                'Portugais brésilien'                 # tag depreciated, see iso 639-2 +    when /Portuguese/i     then 'Portugais' +    when /Swedish/i        then 'Suédois' +    when /Danish/i         then 'Danois' +    when /Finnish/i        then 'Finnois' +    when /Norwegian/i      then 'Norvégien' +    when /Icelandic/i      then 'Islandais' +    when /Dutch/i          then 'Néerlandais' +    when /Estonian/i       then 'Estonien' +    when /Hungarian/i      then 'Hongrois' +    when /Polish/i         then 'Polonais' +    when /Romanian/i       then 'Roumain' +    when /Russian/i        then 'Russe' +    when /Greek/i          then 'Grec' +    when /Ukranian/i       then 'Ukrainien' +    when /Turkish/i        then 'Turc' +    when /Slovenian/i      then 'Slovène' +    when /Croatian/i       then 'Croate' +    when /Slovak(?:ian)?/i then 'Slovaque' +    when /Czech/i          then 'Tcheque' +    when /Bulgarian/i      then 'Bulgare' +    else @trans_str +    end +  end +end +#+END_SRC + +** German + +#+NAME: language_german +#+BEGIN_SRC text +class German +  def initialize(md,doc_lang,trans_str) +    @md,@doc_lang,@trans_str=md,doc_lang,trans_str +  end +  def filename +    'Dateiname' +  end +  def filetype_description +    description +  end +  def metadata +    'Metadata' +  end +  def file_size +    'Dateigrösse' +  end +  def full_title #dc +    'Titel' +  end +  def title +    'Titel' +  end +  def subtitle +    'Untertitel' +  end +  def author +    'Autor' +  end +  def contributor #dc +    'Mitautor' +  end +  def translator +    'Übersetzung' +  end +  def illustrator +    'Illustrator' +  end +  def publisher +    'Herausgeber' +  end +  def prepared_by +    'gesetzt von' +  end +  def digitized_by +    'digitalisiert von' +  end +  def contents +    'Contents' #translate +  end +  def subject +    'Titel' +  end +  def description #dc (watch) +    'Beschreibung' +  end +  def abstract #dc +    'Abstract' +  end +  def type +    'Typ' +  end +  def rights +    'Rechte' +  end +  def date +    'Datum' +  end +  def date_created +    'Erstellung' +  end +  def date_issued +    'Herausgabe' +  end +  def date_available +    'Veröffentlichung' +  end +  def date_modified +    'Modifikation' +  end +  def date_valid +    'Gültigkeit' +  end +  def language +    'Sprache' +  end +  def language_original +    'Ursprungssprache' +  end +  def format #dc +    'Format' +  end +  def identifier #dc +    'Bezeichnung' +  end +  def source #dc +    'Quelle' +  end +  def relation #dc +    'Beziehung' +  end +  def coverage #dc +    'Eingrenzung' +  end +  def keywords +    'Schlüsselwörter' +  end +  def comments +    'Kommentare' +  end +  def cls_loc +    'Klassifikation nach Library of Congress' +  end +  def cls_dewey +    'Klassifikation nach Dewey' +  end +  def cls_oclc # fix +    'Classify OCLC number' +  end +  def cls_gutenberg +    'Klassifikation nach Projekt Gutenberg' +  end +  def cls_isbn +    'Klassifikation nach ISBN' +  end +  def prefix_a +    'Präfix (a)' +  end +  def prefix_b +    'Präfix (b)' +  end +  def topic_register +    'Topics Registered' +  end +  def sourcefile +    'Quelldatei' +  end +  def word_count +    'Anzahl Wörter' +  end +  def sourcefile_digest +    'Quelldatei Digest' +  end +  def digest_md5 +    'Prüfsumme der Quelldatei (MD5)' +  end +  def digest_sha256 +    'Prüfsumme der Quelldatei (SHA256)' +  end +  def sc_number +    'Dokumentversion (RCS/CVS)' +  end +  def sc_date +    'Dokumentdatum (RCS/CVS)' +  end +  def last_generated +    'Letzte Erstellung (metaverse)' +  end +  def sisu_version +    'erstellt bei' +  end +  def ruby_version +    'Ruby Version' +  end +  def suggested_links +    'empfohlene Links' +  end +  def language_version_list +    'verfügbare Sprachen' +  end +  def manifest_description +    'SiSU manifest of document filetypes and metadata' +  end +  def manifest_description_output +    'SiSU Zusammenfassung des Dokumentes' +  end +  def manifest_description_metadata +    'SiSU Zusammenfassung der Metadaten' +  end +  def language_list_translated +    case @trans_str +    when /American/i       then 'Amerikanisch-Englisch'               # tag depreciated, see iso 639-2 +    when /English/i        then 'Englisch' +    when /French/i         then 'Französisch' +    when /German/i         then 'Deutsch' +    when /Italian/i        then 'Italienisch' +    when /Spanish/i        then 'Spanisch' +    when /Portuguese Brazil|Brazilian(?: Portuguese)?/i +                                'Brasilianisch-Portugiesisch'         # tag depreciated, see iso 639-2 +    when /Portuguese/i     then 'Portugiesisch' +    when /Swedish/i        then 'Schwedisch' +    when /Danish/i         then 'Dänisch' +    when /Finnish/i        then 'Finnisch' +    when /Norwegian/i      then 'Norwegisch' +    when /Icelandic/i      then 'Isländisch' +    when /Dutch/i          then 'Niederländisch' +    when /Estonian/i       then 'Estnisch' +    when /Hungarian/i      then 'Ungarisch' +    when /Polish/i         then 'Polnisch' +    when /Romanian/i       then 'Rumänisch' +    when /Russian/i        then 'Russisch' +    when /Greek/i          then 'Griechisch' +    when /Ukranian/i       then 'Ukrainisch' +    when /Turkish/i        then 'Türkisch' +    when /Slovenian/i      then 'Slovenisch' +    when /Croatian/i       then 'Kroatisch' +    when /Slovak(?:ian)?/i then 'Slovakisch' +    when /Czech/i          then 'Tschechisch' +    when /Bulgarian/i      then 'Bulgarisch' +    else @trans_str +    end +  end +end +#+END_SRC + +** Spanish + +#+NAME: language_spanish +#+BEGIN_SRC text +class Spanish +  def initialize(md,doc_lang,trans_str) +    @md,@doc_lang,@trans_str=md,doc_lang,trans_str +  end +  def filename +   'nombre del fichero' +  end +  def filetype_description +    description +  end +  def metadata +    'metadatos' +  end +  def file_size +    'tamaño del fichero' +  end +  def full_title #dc +    'Título' +  end +  def title +    'Título' +  end +  def subtitle +    'Subtítulo' +  end +  def author #dc +    'Creador' +  end +  def contributor #dc +    'Contribuidor' +  end +  def translator +    'Traductor' +  end +  def illustrator +    'Ilustrador' +  end +  def publisher #dc +    'Editor' +  end +  def prepared_by +    'Preparado por' +  end +  def digitized_by +    'Digitalizado por' +  end +  def contents +    'Contents' #translate +  end +  def subject #dc +    'Asunto' +  end +  def description #dc (watch) +    'Descripción' +  end +  def abstract #dc +    'Resumen' +  end +  def type #dc +    'Tipo' +  end +  def rights #dc +    'Derechos' +  end +  def date #dc +    'Fecha' +  end +  def date_created #dc +    'Fecha de creación' +  end +  def date_issued #dc +    'Fecha de publicación' +  end +  def date_available #dc +    'Fecha de disponibilidad' +  end +  def date_modified #dc +    'Fecha de modificación' +  end +  def date_valid #dc +    'Fecha de valided' +  end +  def language #dc +    'Idioma' +  end +  def language_original +    'Lenguaje original' +  end +  def format #dc +    'Formato' +  end +  def identifier #dc +    'Identificador' +  end +  def source #dc +    'Fuente' +  end +  def relation #dc +    'Relación' +  end +  def coverage #dc +    'Cobertura' +  end +  def keywords +    'Palabras claves' +  end +  def comments +    'Comentarios' +  end +  def cls_loc +    'Clasificación Biblioteca del Congreso' +  end +  def cls_dewey +    'Clasificación Dewey' +  end +   def cls_oclc # fix +     'Classify OCLC number' +   end +  def cls_gutenberg +    'Clasificación Proyecto Gutenberg' +  end +  def cls_isbn +    'Clasificación ISBN' +  end +  def prefix_a +    'Prefijo (a)' +  end +  def prefix_b +    'Prefijo (b)' +  end +   def topic_register +     'Topics Registered' +   end +  def sourcefile +    'Fichero fuente' +  end +  def word_count +    'Número de palabras apróximado' +  end +  def sourcefile_digest +    'Resumen del fichero fuente' +  end +  def digest_md5 +    'Resumen del fichero fuente (md5)' +  end +  def digest_sha256 +    'Resumen del fichero fuente (sha256)' +  end +  def sc_number +    'Versión (RCS/CVS) del documento' +  end +  def sc_date +    'Versión (RCS/CVS) del documento' +  end +  def last_generated +    'Última generación (metaverse) del documento' +  end +  def sisu_version +    'Generado por' +  end +  def ruby_version +    'Versión de Ruby' +  end +  def suggested_links +    'enlaces sugeridos de metadatos' +  end +  def language_version_list +    'Document Language Versions, manifests' +  end +   def manifest_description +     'SiSU manifest of document filetypes and metadata' +   end +  def manifest_description_output +    'Manifiesto SiSU de salida generada' +  end +  def manifest_description_metadata +    'Manifiesto SiSU de metadatos de documento' +  end +  def language_list_translated +    case @trans_str +    when /American/i       then 'Inglés Americano'                     # tag depreciated, see iso 639-2 +    when /English/i        then 'Inglés' +    when /French/i         then 'Francés' +    when /German/i         then 'Alemán' +    when /Italian/i        then 'Italiano' +    when /Spanish/i        then 'Español' +    when /Portuguese Brazil|Brazilian(?: Portuguese)?/i +                                'Portugués de Brasil'                  # tag depreciated, see iso 639-2 +    when /Portuguese/i     then 'Portugués' +    when /Swedish/i        then 'Sueco' +    when /Danish/i         then 'Danés' +    when /Finnish/i        then 'Finés' +    when /Norwegian/i      then 'Noruego' +    when /Icelandic/i      then 'Islandés' +    when /Dutch/i          then 'Holandés' +    when /Estonian/i       then 'Estonio' +    when /Hungarian/i      then 'Húngaro' +    when /Polish/i         then 'Polaco' +    when /Romanian/i       then 'Rumano' +    when /Russian/i        then 'Ruso' +    when /Greek/i          then 'Griego' +    when /Ukranian/i       then 'Ucraniano' +    when /Turkish/i        then 'Turco' +    when /Slovenian/i      then 'Eslovaco' +    when /Croatian/i       then 'Croata' +    when /Slovak(?:ian)?/i then 'Eslovaco' +    when /Czech/i          then 'Checo' +    when /Bulgarian/i      then 'Búlgaro' +    else @trans_str +    end +  end +end +#+END_SRC + +** Italian + +#+NAME: language_italian +#+BEGIN_SRC text +class Italian +  def initialize(md,doc_lang,trans_str) +    @md,@doc_lang,@trans_str=md,doc_lang,trans_str +  end +  def filename +    'nome del file' +  end +  def filetype_description +    description +  end +  def metadata +    'metadati' +  end +  def file_size +    'dimensione' +  end +  def full_title #dc +    'Titolo' +  end +  def title +    'Titolo' +  end +  def subtitle +    'Sottotitolo' +  end +  def author #dc +    'Autore' +  end +  def contributor #dc +    'Contributore' +  end +  def translator +    'Traduttore' +  end +  def illustrator +    'Illustratore' +  end +  def publisher #dc +    'Casa editrice' +  end +  def prepared_by +    'Preparato da' +  end +  def digitized_by +    'Convertito in digitale da' +  end +  def contents +    'Contents' #translate +  end +  def subject #dc +    'Oggetto' +  end +  def description #dc (watch) +    'Descrizione' +  end +  def abstract #dc +    'Abstract' +  end +  def type #dc +    'Tipo' +  end +  def rights #dc +    'Diritti del lettore' +  end +  def date #dc +    'Data' +  end +  def date_created #dc +    'Data di creazione' +  end +  def date_issued #dc +    'Data di pubblicazione' +  end +  def date_available #dc +    'Data di effettiva disponibilità' +  end +  def date_modified #dc +    'Data di ultima modifica' +  end +  def date_valid #dc +    'Data di inizo validità' +  end +  def language #dc +    'Lingua' +  end +  def language_original +    'Lingua originale' +  end +  def format #dc +    'Formato' +  end +  def identifier #dc +    'Indentificatore' +  end +  def source #dc +    'Fonte' +  end +  def relation #dc +    'Collegamento' +  end +  def coverage #dc +    'Ambito' +  end +  def keywords +    'Parole chiave' +  end +  def comments +    'Commenti' +  end +  def cls_loc +    'Classificazione della Library of Congress' +  end +  def cls_dewey +    'Classificazione Dewey' +  end +  def cls_oclc # fix +    'Classify OCLC number' +  end +  def cls_gutenberg +    'Classificazione del Progetto Gutenberg' +  end +  def cls_isbn +    'Numero ISBN' +  end +  def prefix_a +    'Premessa (a)' +  end +  def prefix_b +    'Premessa (b)' +  end +  def topic_register +    'Topics Registered' +  end +  def sourcefile +    'Sorgente' +  end +  def word_count +    'Numero approssimativo di parole' +  end +  def sourcefile_digest +    'Checksum file sorgente' +  end +  def digest_md5 +    'Checksum file sorgente (md5)' +  end +  def digest_sha256 +    'Checksum file sorgente (sha256)' +  end +  def sc_number +    'Numero di revisione (RCS/CVS)' +  end +  def sc_date +    'Numero di revisione (RCS/CVS)' +  end +  def last_generated +    'Data di ultima generazione (ao metaverse)' +  end +  def sisu_version +    'Generato da' +  end +  def ruby_version +    'Ruby versione' +  end +  def suggested_links +    'Link suggeriti' +  end +  def language_version_list +    'Traduzioni disponibili' +  end +  def manifest_description +    'SiSU manifest of document filetypes and metadata' +  end +  def manifest_description_output +    'Inventario SiSU dell\'output generato' +  end +  def manifest_description_metadata +    'Inventario SiSU dei metadati' +  end +  def language_list_translated +    case @trans_str +    when /American/i       then 'Inglese USA'                         # tag depreciated, see iso 639-2 +    when /English/i        then 'Inglese' +    when /French/i         then 'Francese' +    when /German/i         then 'Tedesco' +    when /Italian/i        then 'Italiano' +    when /Spanish/i        then 'Spagnolo' +    when /Portuguese Brazil|Brazilian(?: Portuguese)?/i +                                'Portoguese (Brasile)'                # tag depreciated, see iso 639-2 +    when /Portuguese/i     then 'Portoguese' +    when /Swedish/i        then 'Svedese' +    when /Danish/i         then 'Danese' +    when /Finnish/i        then 'Finlandese' +    when /Norwegian/i      then 'Norvegese' +    when /Icelandic/i      then 'Islandese' +    when /Dutch/i          then 'Olandese' +    when /Estonian/i       then 'Estone' +    when /Hungarian/i      then 'Ungherese' +    when /Polish/i         then 'Polacco' +    when /Romanian/i       then 'Romeno' +    when /Russian/i        then 'Russo' +    when /Greek/i          then 'Greco' +    when /Ukranian/i       then 'Ucraino' +    when /Turkish/i        then 'Turco' +    when /Slovenian/i      then 'Sloveno' +    when /Croatian/i       then 'Croato' +    when /Slovak(?:ian)?/i then 'Slovacco' +    when /Czech/i          then 'Ceco' +    when /Bulgarian/i      then 'Bulgaro' +    else @trans_str +    end +  end +end +#+END_SRC + +** Finnish + +#+NAME: language_finnish +#+BEGIN_SRC text +class Finnish +  def initialize(md,doc_lang,trans_str) +    @md,@doc_lang,@trans_str=md,doc_lang,trans_str +  end +  def filename +   'tiedostonimi' +  end +  def filetype_description +    description +  end +  def metadata +    'metadata' +  end +  def file_size +    'tiedoston koko' +  end +  def full_title #dc +    'otsikko' +  end +  def title +    'Otsikko' +  end +  def subtitle +    'Alaotsikko' +  end +  def author #dc +    'tekijä' +  end +  def contributor #dc +    'osallistuja' +  end +  def translator +    'Kääntäjä' +  end +  def illustrator +    'Kuvittaja' +  end +  def publisher #dc +    'julkaisija' +  end +  def prepared_by +    'Valmistaja' +  end +  def digitized_by +    'Digitalisoinut' +  end +  def contents +    'Contents' #translate +  end +  def subject #dc +    'aihe' +  end +  def description #dc (watch) +    'kuvaus' +  end +  def abstract #dc +    'tiivistelmä' +  end +  def type #dc +    'tyyppi' +  end +  def rights #dc +    'oikeudet' +  end +  def date #dc +    'päiväys' +  end +  def date_created #dc +    'luontipäivä' +  end +  def date_issued #dc +    'julkaisupäivä' +  end +  def date_available #dc +    'saantipäivä' +  end +  def date_modified #dc +    'muokkauspäivä' +  end +  def date_valid #dc +    'kelpoisuuspäivä' +  end +  def language #dc +    'kieli' +  end +  def language_original +    'Alkuperäiskieli' +  end +  def format #dc +    'muoto' +  end +  def identifier #dc +    'tunnus' +  end +  def source #dc +    'lähde' +  end +  def relation #dc +    'suhde' +  end +  def coverage #dc +    'kattavuus' +  end +  def keywords +    'Avainsanat' +  end +  def comments +    'Kommentit' +  end +  def cls_loc +    'Classify Library of Congress' +  end +  def cls_dewey +    'Classify Dewey' +  end +  def cls_oclc # fix +    'Classify OCLC number' +  end +  def cls_gutenberg +    'Classify Project Gutenberg' +  end +  def cls_isbn +    'Classify ISBN' +  end +  def prefix_a +    'Prefix (a)' +  end +  def prefix_b +    'Prefix (b)' +  end +  def topic_register +    'Topics Registered' +  end +  def sourcefile +    'Lähdetiedosto' +  end +  def word_count +    'Arvioitu sanamäärä' +  end +  def sourcefile_digest +    'Lähdetiedoston tiiviste' +  end +  def digest_md5 +    'Lähdetiedoston tiiviste (md5)' +  end +  def digest_sha256 +    'Lähdetiedoston tiiviste (sha256)' +  end +  def sc_number +    'Dokumentin RCS/CVS-numero' +  end +  def sc_date +    'Dokumentin RCS/CVS-päiväys' +  end +  def last_generated +    'Viimeksi tuotettu dokumentti (metaverse)' +  end +  def sisu_version +    'Generoinut' +  end +  def ruby_version +    'Ruby-versio' +  end +  def suggested_links +    'metadatan ehdottamat linkit' +  end +  def language_version_list +    'Dokumentin kieliversiot, manifestit' +  end +  def manifest_description +    'SiSU manifest of document filetypes and metadata' +  end +  def manifest_description_output +    'Tuotetun tuloksen SISU-manifesti' +  end +  def manifest_description_metadata +    'Dokumenttimetadatan SISU-manifesti' +  end +  def language_list_translated +    case @trans_str +    when /American/i       then 'Amerikanenglanti'                    # tag depreciated, see iso 639-2 +    when /English/i        then 'Englanti' +    when /French/i         then 'Ranska' +    when /German/i         then 'Saksa' +    when /Italian/i        then 'Italia' +    when /Spanish/i        then 'Espanja' +    when /Portuguese Brazil|Brazilian(?: Portuguese)?/i +                                'Brasilian portugali'                 # tag depreciated, see iso 639-2 +    when /Portuguese/i     then 'Portugali' +    when /Swedish/i        then 'Ruotsi' +    when /Danish/i         then 'Tanska' +    when /Finnish/i        then 'Suomi' +    when /Norwegian/i      then 'Norja' +    when /Icelandic/i      then 'Islanti' +    when /Dutch/i          then 'Hollanti' +    when /Estonian/i       then 'Viro' +    when /Hungarian/i      then 'Unkari' +    when /Polish/i         then 'Puola' +    when /Romanian/i       then 'Romania' +    when /Russian/i        then 'Venäjä' +    when /Greek/i          then 'Kreikka' +    when /Ukranian/i       then 'Ukraina' +    when /Turkish/i        then 'Turkki' +    when /Slovenian/i      then 'Slovenia' +    when /Croatian/i       then 'Kroatia' +    when /Slovak(?:ian)?/i then 'Slovakki' +    when /Czech/i          then 'Tsekki' +    when /Bulgarian/i      then 'Bulgaria' +    else @trans_str +    end +  end +end +#+END_SRC + +** Portuguese + +#+NAME: language_protuguese +#+BEGIN_SRC text +class Portuguese            < English +end +#+END_SRC + +** Swedish + +#+NAME: language_swedish +#+BEGIN_SRC text +class Swedish               < English +  def contents +    'Innehåll' +  end +end +#+END_SRC + +** remaining + +#+NAME: language_remaining +#+BEGIN_SRC text +class Danish                < English +end +class Norwegian             < English +end +class Icelandic             < English +end +class Dutch                 < English +end +class Estonian              < English +end +class Hungarian             < English +end +class Polish                < English +end +class Romanian              < English +end +class Russian               < English +end +class Greek                 < English +end +class Ukranian              < English +end +class Turkish               < English +end +class Croatian              < English +end +class Slovakian             < English +end +class Czech                 < English +end +class Bulgarian             < English +end +#+END_SRC + +* document header + +#+NAME: sisu_document_header +#+BEGIN_SRC text +encoding: utf-8 +- Name: SiSU + +  - Description: documents, structuring, processing, publishing, search +    i18n + +  - Author: Ralph Amissah +    <ralph.amissah@gmail.com> + +  - Copyright: (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, +    2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2019, +    2020, 2021, Ralph Amissah, +    All Rights Reserved. + +  - License: GPL 3 or later: + +    SiSU, a framework for document structuring, publishing and search + +    Copyright (C) Ralph Amissah + +    This program is free software: you can redistribute it and/or modify it +    under the terms of the GNU General Public License as published by the Free +    Software Foundation, either version 3 of the License, or (at your option) +    any later version. + +    This program is distributed in the hope that it will be useful, but WITHOUT +    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +    FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +    more details. + +    You should have received a copy of the GNU General Public License along with +    this program. If not, see <http://www.gnu.org/licenses/>. + +    If you have Internet connection, the latest version of the GPL should be +    available at these locations: +    <http://www.fsf.org/licensing/licenses/gpl.html> +    <http://www.gnu.org/licenses/gpl.html> + +    <http://www.sisudoc.org/sisu/en/manifest/gpl.fsf.html> + +  - SiSU uses: +    - Standard SiSU markup syntax, +    - Standard SiSU meta-markup syntax, and the +    - Standard SiSU object citation numbering and system + +  - Homepages: +    <http://www.sisudoc.org> + +  - Git +    <https://git.sisudoc.org/projects/> +    <https://git.sisudoc.org/projects/?p=software/sisu.git;a=summary> +    <https://git.sisudoc.org/projects/?p=markup/sisu-markup-samples.git;a=summary> +#+END_SRC +* NOTES +** language list po4a + +#+BEGIN_SRC text +#% Language List po4a +http://www.debian.org/international/l10n/po/ +see polyglossia for subset +- CSB (Unknown language) +- KAB (Unknown language) +- TLH (Unknown language) +- aa (Afar) +- ab (Abkhazian) +- af (Afrikaans) +- af_ZA (Afrikaans, as spoken in South Africa) +- am (Amharic) +- an (Unknown language) +- ang (Unknown language) +- ar (Arabic) +- ar_AR (Arabic, as spoken in Argentina) +- ar_EG (Arabic, as spoken in Egypt) +- ar_OM (Arabic, as spoken in Oman) +- ar_PS (Arabic, as spoken in Palestinian Territory, Occupied) +- ar_SA (Arabic, as spoken in Saudi Arabia) +- ar_SY (Arabic, as spoken in Syrian Arab Republic) +- as (Assamese) +- ast (Unknown language) +- ay (Aymara) +- az (Azerbaijani) +- az_IR (Azerbaijani, as spoken in Iran) +- be (Belarusian) +- be@latin (Unknown language) +- be@tarask (Unknown language) +- bem (Unknown language) +- bg (Bulgarian) +- bg_BG (Bulgarian, as spoken in Bulgaria) +- bi (Bislama) +- bn (Bengali) +- bn_BD (Bengali, as spoken in Bangladesh) +- bn_IN (Bengali, as spoken in India) +- bo (Tibetan) +- br (Breton) +- bs (Bosnian) +- bs_BA (Bosnian, as spoken in Bosnia and Herzegovina) +- bs_BS (Bosnian, as spoken in Bahamas) +- byn (Unknown language) +- ca (Catalan) +- ca@valencia (Unknown language) +- ca_AD (Catalan, as spoken in Andorra) +- ca_ES (Catalan, as spoken in Spain) +- ca_ES@valencia (Unknown language) +- ca_FR (Catalan, as spoken in France) +- ca_IT (Catalan, as spoken in Italy) +- co (Corsican) +- crh (Unknown language) +- cs (Czech) +- cs_CZ (Czech, as spoken in Czech Republic) +- csb (Unknown language) +- cy (Welsh) +- cy_GB (Welsh, as spoken in Great Britain) +- cz (Unknown language) +- da (Danish) +- da_DK (Danish, as spoken in Denmark) +- de (German) +- de_AT (German, as spoken in Austria) +- de_CH (German, as spoken in Switzerland) +- de_DE (German, as spoken in Germany) +- dk (Unknown language) +- dz (Dzongkha) +- el (Greek) +- el_GR (Greek, as spoken in Greece) +- en (English) +- en@boldquot (Unknown language) +- en@quot (Unknown language) +- en@shaw (Unknown language) +- en_AU (English, as spoken in Australia) +- en_CA (English, as spoken in Canada) +- en_GB (English, as spoken in Great Britain) +- en_NZ (English, as spoken in New Zealand) +- en_US (English, as spoken in United States) +- en_US@piglatin (Unknown language) +- en_ZA (English, as spoken in South Africa) +- eo (Esperanto) +- es (Spanish) +- es_AR (Spanish, as spoken in Argentina) +- es_CL (Spanish, as spoken in Chile) +- es_CO (Spanish, as spoken in Colombia) +- es_CR (Spanish, as spoken in Costa Rica) +- es_DO (Spanish, as spoken in Dominican Republic) +- es_EC (Spanish, as spoken in Ecuador) +- es_ES (Spanish, as spoken in Spain) +- es_GA (Spanish, as spoken in Gabon) +- es_GT (Spanish, as spoken in Guatemala) +- es_HN (Spanish, as spoken in Honduras) +- es_LA (Spanish, as spoken in Lao People''s Democratic Republic) +- es_MX (Spanish, as spoken in Mexico) +- es_NI (Spanish, as spoken in Nicaragua) +- es_PA (Spanish, as spoken in Panama) +- es_PE (Spanish, as spoken in Peru) +- es_PR (Spanish, as spoken in Puerto Rico) +- es_SV (Spanish, as spoken in El Salvador) +- es_UY (Spanish, as spoken in Uruguay) +- es_VE (Spanish, as spoken in Venezuela) +- et (Estonian) +- et_EE (Estonian, as spoken in Estonia) +- eu (Basque) +- eu_ES (Basque, as spoken in Spain) +- fa (Persian) +- fa_AF (Persian, as spoken in Afghanistan) +- fa_IR (Persian, as spoken in Iran) +- fi (Finnish) +- fi_FI (Finnish, as spoken in Finland) +- fil (Unknown language) +- fo (Faeroese) +- fo_FO (Faeroese, as spoken in Faroe Islands) +- fr (French) +- fr_BE (French, as spoken in Belgium) +- fr_CA (French, as spoken in Canada) +- fr_CH (French, as spoken in Switzerland) +- fr_FR (French, as spoken in France) +- fr_FX (French, as spoken in France, Metropolitan) +- fr_LU (French, as spoken in Luxembourg) +- frp (Unknown language) +- fur (Unknown language) +- fy (Frisian) +- fy_NL (Frisian, as spoken in Netherlands) +- ga (Irish) +- gd (Gaelic (Scots)) +- gez (Unknown language) +- gl (Galician) +- gl_ES (Galician, as spoken in Spain) +- gn (Guarani) +- gu (Gujarati) +- gv (Manx) +- ha (Hausa) +- he (Hebrew) +- he_IL (Hebrew, as spoken in Israel) +- hi (Hindi) +- hne (Unknown language) +- hr (Croatian) +- hr_HR (Croatian, as spoken in Croatia) +- ht (Unknown language) +- hu (Hungarian) +- hu_HU (Hungarian, as spoken in Hungary) +- hy (Armenian) +- ia (Interlingua) +- id (Indonesian) +- id_ID (Indonesian, as spoken in Indonesia) +- ig (Unknown language) +- io (Unknown language) +- is (Icelandic) +- is_IS (Icelandic, as spoken in Iceland) +- it (Italian) +- it_CH (Italian, as spoken in Switzerland) +- it_IT (Italian, as spoken in Italy) +- iu (Inuktitut) +- ja (Japanese) +- ja_JP (Japanese, as spoken in Japan) +- jv (Unknown language) +- jv_ID (Unknown language) +- ka (Georgian) +- kab (Unknown language) +- kk (Kazakh) +- kl (Kalaallisut) +- km (Khmer) +- km_KH (Khmer, as spoken in Cambodia) +- kn (Kannada) +- ko (Korean) +- ko_KR (Korean, as spoken in Korea) +- ks (Kashmiri) +- ku (Kurdish) +- kw (Cornish) +- ky (Kirghiz) +- la (Latin) +- lb (Letzeburgesch) +- lg (Unknown language) +- li (Unknown language) +- ln (Lingala) +- lo (Lao) +- lt (Lithuanian) +- lt_LT (Lithuanian, as spoken in Lithuania) +- lv (Latvian) +- lv_LV (Latvian, as spoken in Latvia) +- mai (Unknown language) +- mal (Unknown language) +- mg (Malagasy) +- mi (Maori) +- mk (Macedonian) +- mk_MK (Macedonian, as spoken in Macedonia, the Former Yugoslav Republic of) +- ml (Malayalam) +- ml_IN (Malayalam, as spoken in India) +- ml_ML (Malayalam, as spoken in Mali) +- mn (Mongolian) +- mr (Marathi) +- ms (Malay) +- ms_MY (Malay, as spoken in Malaysia) +- mt (Maltese) +- my (Burmese) +- my_MM (Burmese, as spoken in Myanmar) +- na (Nauru) +- nb (Norwegian Bokmål) +- nb_NO (Norwegian Bokmål, as spoken in Norway) +- nds (Unknown language) +- ne (Nepali) +- new (Unknown language) +- nl (Dutch) +- nl_BE (Dutch, as spoken in Belgium) +- nl_NL (Dutch, as spoken in Netherlands) +- nn (Norwegian Nynorsk) +- nn_NO (Norwegian Nynorsk, as spoken in Norway) +- no (Norwegian) +- no_NO (Norwegian, as spoken in Norway) +- nr (Ndebele, South) +- nso (Unknown language) +- oc (Occitan (post 1500)) +- oc_FR (Occitan (post 1500), as spoken in France) +- om (Oromo) +- or (Oriya) +- pa (Panjabi) +- pl (Polish) +- pl_PL (Polish, as spoken in Poland) +- pms (Unknown language) +- ps (Pushto) +- pt (Portuguese) +- pt_BR (Portuguese, as spoken in Brazil) +- pt_PT (Portuguese, as spoken in Portugal) +- qu (Quechua) +- rm (Rhaeto-Romance) +- ro (Romanian) +- ro_RO (Romanian, as spoken in Romania) +- ru (Russian) +- ru_RU (Russian, as spoken in Russia) +- rw (Kinyarwanda) +- sa (Sanskrit) +- sc (Sardinian) +- sd (Sindhi) +- se (Sami) +- se_NO (Sami, as spoken in Norway) +- si (Sinhalese) +- si_LK (Sinhalese, as spoken in Sri Lanka) +- si_SI (Sinhalese, as spoken in Slovenia) +- sk (Slovak) +- sk_SK (Slovak, as spoken in Slovakia) +- sl (Slovenian) +- sl_SI (Slovenian, as spoken in Slovenia) +- sl_SL (Slovenian, as spoken in Sierra Leone) +- so (Somali) +- sp (Unknown language) +- sq (Albanian) +- sq_AL (Albanian, as spoken in Albania) +- sr (Serbian) +- sr@Latn (Unknown language) +- sr@ije (Unknown language) +- sr@ijekavian (Unknown language) +- sr@ijekavianlatin (Unknown language) +- sr@latin (Unknown language) +- sr_SR (Serbian, as spoken in Suriname) +- sr_YU (Serbian, as spoken in Yugoslavia) +- st (Sotho) +- su (Sundanese) +- su_ID (Sundanese, as spoken in Indonesia) +- sv (Swedish) +- sv_SE (Swedish, as spoken in Sweden) +- sw (Swahili) +- ta (Tamil) +- ta_LK (Tamil, as spoken in Sri Lanka) +- te (Telugu) +- tg (Tajik) +- th (Thai) +- th_TH (Thai, as spoken in Thailand) +- ti (Tigrinya) +- tig (Unknown language) +- tk (Turkmen) +- tl (Tagalog) +- tlh (Unknown language) +- to (Tonga) +- tr (Turkish) +- tr_TR (Turkish, as spoken in Turkey) +- tt (Tatar) +- ug (Uighur) +- ug_CN (Uighur, as spoken in China) +- uk (Ukrainian) +- uk_UA (Ukrainian, as spoken in Ukraine) +- ur (Urdu) +- ur_PK (Urdu, as spoken in Pakistan) +- uz (Uzbek) +- uz@cyrillic (Unknown language) +- ve (Unknown language) +- vi (Vietnamese) +- vi_AR (Vietnamese, as spoken in Argentina) +- vi_DE (Vietnamese, as spoken in Germany) +- vi_PL (Vietnamese, as spoken in Poland) +- vi_TR (Vietnamese, as spoken in Turkey) +- vi_VN (Vietnamese, as spoken in Vietnam) +- wa (Unknown language) +- wal (Unknown language) +- wo (Wolof) +- xh (Xhosa) +- yi (Yiddish) +- yo (Yoruba) +- zh (Chinese) +- zh_CN (Chinese, as spoken in China) +- zh_HK (Chinese, as spoken in Hong Kong) +- zh_TW (Chinese, as spoken in Taiwan) +- zu (Zulu) + + 'sq';    'albanian' + 'am';    'amharic' +#'ar';    'arabic'         # see polyglossia + 'hy';    'armenian' +#'';      'asturian'       # polyglossia +#'';      'bahasai'        # polyglossia +#'';      'bahasam'        # polyglossia + 'eu';    'basque' + 'bn';    'bengali' + 'pt_BR'; 'brazilian' + 'br';    'breton' + 'bg';    'bulgarian' + 'ca';    'catalan'        # see polyglossia +#'';      'coptic'         # polyglossia + 'hr';    'croatian' + 'cs';    'czech' + 'da';    'danish' +#'';      'divehi'         # polyglossia + 'nl';    'dutch'          # see polyglossia + 'en';    'english'        # see polyglossia + 'eo';    'esperanto'      # see polyglossia + 'et';    'estonian' + 'gl';    'galician' + 'de';    'german' + 'el';    'greek'          #gl ? + 'he';    'hebrew' + 'hi';    'hindi' + 'is';    'icelandic' + 'ia';    'interlingua' + 'ga';    'irish' + 'it';    'italian' +#'';      'farsi'          # polyglossia + 'fi';    'finnish' + 'fr';    'french' + 'lo';    'lao' + 'la';    'latin' + 'lv';    'latvian' + 'lt';    'lithuanian' +#'';      'lsorbian'       # polyglossia +#'';      'magyar'         # polyglossia + 'ml';    'malayalam' + 'mr';    'marathi' +#'hu';    'magyar' + 'no';    'norske' + 'nn';    'nynorsk' + 'oc';    'occitan' + 'pl';    'polish' + 'pt';    'portuges' + 'ro';    'romanian' + 'ru';    'russian' + 'se';    'samin'          #(check sami?) + 'sa';    'sanskrit' + 'sr';    'serbian' +#'';      'scottish'       # polyglossia  (gd (Gaelic (Scots))) + 'sk';    'slovak' + 'sl';    'slovenian' + 'es';    'spanish' + 'sv';    'swedish' + 'ta';    'tamil' + 'te';    'telugu' + 'th';    'thai' + 'tr';    'turkish' + 'tk';    'turkmen' + 'uk';    'ukrainian' + 'ur';    'urdu' +#'';      'usorbian'       # polyglossia + 'vi';    'vietnamese' + 'cy';    'welsh' + 'us';    'USenglish'      # depreciated, see iso-639-2 +#+END_SRC +** language list po4a + +#+BEGIN_SRC text +http://www.debian.org/international/l10n/po/ +http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes +http://www.loc.gov/standards/iso639-2/php/code_list.php +albanian           sq +amharic            am +arabic             ar +armenian           hy +asturian +bahasai +bahasam +basque             eu +bengali            bn +brazil[ian]        pt_BR +breton             br +bulgarian          bg +catalan            ca +coptic +croatian           hr +czech              cs +danish             da +divehi +dutch              nl +english            en +esperanto          eo +estonian           et +galician           gl +german             de +greek              el +hebrew             he +hindi              hi +icelandic          is +interlingua        ia +irish              ga +italian            it +farsi +finnish            fi +french             fr +lao                lo +latin              la +latvian            lv +lithuanian         lt +lsorbian +magyar +malayalam          ml +marathi            mr +norsk              no +nynorsk            nn +occitan            oc +polish             pl +portuges           pt +romanian           ro +russian            ru +samin              se (check sami?) +sanskrit           sa +scottish            #  (gd (Gaelic (Scots))) +serbian            sr +slovak             sk +slovenian          sl +spanish            es +swedish            sv +syriac             #  (ar_SY (Arabic, as spoken in Syrian Arab Republic)) +tamil              ta +telugu             te +thai               th +turkish            tr +turkmen            tk +ukrainian          uk +urdu               ur +usorbian +vietnamese         vi +welsh              cy +#+END_SRC | 
