aboutsummaryrefslogtreecommitdiffhomepage
path: root/org/i18n.org
diff options
context:
space:
mode:
authorRalph Amissah <ralph.amissah@gmail.com>2021-04-02 19:37:00 -0400
committerRalph Amissah <ralph.amissah@gmail.com>2021-04-02 20:03:27 -0400
commit90051a7ea55acb043434b1c2483b878d602246ba (patch)
tree9e803c11a0ac4e37023b3c79f19f5b372d4175ee /org/i18n.org
parentnix ruby 3.0 (available) (diff)
org mode (ruby code within)
Diffstat (limited to 'org/i18n.org')
-rw-r--r--org/i18n.org2453
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