From 624f72b8b200bba4ab06ecbceb362838d1c8151f Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Tue, 26 Apr 2011 20:30:55 -0400 Subject: v2 v3: sysenv, refer to lowriter, update * v2 lowriter instead of oowriter * v3 lowriter instead of libreoffice --- lib/sisu/v2/sysenv.rb | 2 +- lib/sisu/v3/sysenv.rb | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/sisu/v2/sysenv.rb b/lib/sisu/v2/sysenv.rb index 72b1ffc7..d3152947 100644 --- a/lib/sisu/v2/sysenv.rb +++ b/lib/sisu/v2/sysenv.rb @@ -1983,7 +1983,7 @@ WOK ((defined? @rc['program_select']['odf_viewer']) \ && @rc['program_select']['odf_viewer'] =~/\S\S+/) \ ? @rc['program_select']['odf_viewer'] \ - : 'oowriter' #'odf-viewer','oowriter' + : 'lowriter' #'odf-viewer','oowriter' end def manpage_viewer 'man' diff --git a/lib/sisu/v3/sysenv.rb b/lib/sisu/v3/sysenv.rb index 6f69296a..1b621c61 100644 --- a/lib/sisu/v3/sysenv.rb +++ b/lib/sisu/v3/sysenv.rb @@ -2091,7 +2091,7 @@ WOK elsif defined? @rc['program_select']['console_web_browser'] \ and @rc['program_select']['console_web_browser'] =~/\S\S+/ @rc['program_select']['console_web_browser'] - else 'console-www-browser' #'lynx' 'links2' 'elinks' 'epiphany' + else 'console-www-browser' #'lynx' 'links' 'links2' 'elinks' 'w3m' end end def console_www_browser @@ -2104,7 +2104,7 @@ WOK elsif defined? @rc['program_select']['epub_viewer'] \ and @rc['program_select']['epub_viewer'] =~/\S\S+/ @rc['program_select']['epub_viewer'] - else 'ebook-viewer' #'calibre' 'fbreader' + else 'ebook-viewer' #'calibre' 'fbreader' end end def xml_viewer @@ -2120,7 +2120,7 @@ WOK ((defined? @rc['program_select']['odf_viewer']) \ && @rc['program_select']['odf_viewer'] =~/\S\S+/) \ ? @rc['program_select']['odf_viewer'] \ - : 'libreoffice' #'odf-viewer','oowriter' + : 'lowriter' #'odf-viewer','oowriter' end def manpage_viewer 'man' -- cgit v1.2.3 From 416d0ec8534623c7dac819d8702ec95d4015975d Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Wed, 27 Apr 2011 20:37:38 -0400 Subject: v2 v3: manpage, reinstate escaping of hyphens --- lib/sisu/v2/manpage.rb | 1 + lib/sisu/v2/param.rb | 2 ++ lib/sisu/v3/manpage.rb | 1 + lib/sisu/v3/param.rb | 2 ++ 4 files changed, 6 insertions(+) (limited to 'lib') diff --git a/lib/sisu/v2/manpage.rb b/lib/sisu/v2/manpage.rb index a040f1a0..f9c75227 100644 --- a/lib/sisu/v2/manpage.rb +++ b/lib/sisu/v2/manpage.rb @@ -293,6 +293,7 @@ WOK dob.obj.gsub!(/┆/,'|') dob.obj.gsub!(/\s\.(\S+)/,' \\.\1') dob.obj.gsub!(/(\n\.)(\S\S\S+)/m,'\1\\.\2') + dob.obj.gsub!(/-/,'\-') #manpages use this dob.obj.gsub!(/~/,'~') if dob.obj #manpages use this if dob.is =~/group|verse|alt|code/ if dob.is =='code' diff --git a/lib/sisu/v2/param.rb b/lib/sisu/v2/param.rb index c500c282..656490d9 100644 --- a/lib/sisu/v2/param.rb +++ b/lib/sisu/v2/param.rb @@ -733,12 +733,14 @@ module SiSU_Param end if manpage['name'] manpage['name']=manpage['name'].join("\n.br\n") + manpage['name'].gsub!(/(-)/m,"\\\\\\1") manpage['name'].gsub!(/\A/,"\n.br\n.SH NAME\n.br\n") else manpage['name']='man page "name/whatis" information not provided, set in header @man: name=[whatis information]' end if manpage['synopsis'] manpage['synopsis']=manpage['synopsis'].join("\n\n.br\n") + manpage['synopsis'].gsub!(/(-)/m,"\\\\\\1") manpage['synopsis'].gsub!(/\A/,"\n.br\n.SH SYNOPSIS\n.br\n") else manpage['synopsis']='' diff --git a/lib/sisu/v3/manpage.rb b/lib/sisu/v3/manpage.rb index 362d9cda..17fef80b 100644 --- a/lib/sisu/v3/manpage.rb +++ b/lib/sisu/v3/manpage.rb @@ -293,6 +293,7 @@ WOK dob.obj.gsub!(/┆/,'|') dob.obj.gsub!(/\s\.(\S+)/,' \\.\1') dob.obj.gsub!(/(\n\.)(\S\S\S+)/m,'\1\\.\2') + dob.obj.gsub!(/-/,'\-') #manpages use this dob.obj.gsub!(/~/,'~') if dob.obj #manpages use this if dob.is =~/block|group|verse|alt|code/ if dob.is =='code' diff --git a/lib/sisu/v3/param.rb b/lib/sisu/v3/param.rb index c2968564..8aa543db 100644 --- a/lib/sisu/v3/param.rb +++ b/lib/sisu/v3/param.rb @@ -744,12 +744,14 @@ module SiSU_Param end if manpage['name'] manpage['name']=manpage['name'].join("\n.br\n") + manpage['name'].gsub!(/(-)/m,"\\\\\\1") manpage['name'].gsub!(/\A/,"\n.br\n.SH NAME\n.br\n") else manpage['name']='man page "name/whatis" information not provided, set in header @man: name=[whatis information]' end if manpage['synopsis'] manpage['synopsis']=manpage['synopsis'].join("\n\n.br\n") + manpage['synopsis'].gsub!(/(-)/m,"\\\\\\1") manpage['synopsis'].gsub!(/\A/,"\n.br\n.SH SYNOPSIS\n.br\n") else manpage['synopsis']='' -- cgit v1.2.3 From 9a9c366840fe0cd3bde483e8fbb27b5a69b4c85f Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Wed, 4 May 2011 22:10:25 -0400 Subject: v3: concordance, output path, screen info correction --- lib/sisu/v3/concordance.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/sisu/v3/concordance.rb b/lib/sisu/v3/concordance.rb index 8b70fdc5..d97c7786 100644 --- a/lib/sisu/v3/concordance.rb +++ b/lib/sisu/v3/concordance.rb @@ -77,7 +77,7 @@ module SiSU_Concordance @env,@md=@particulars.env,@particulars.md loc=@env.url.output_tell unless @md.opt.cmd =~/q/ - tool=(@md.opt.cmd =~/[MVv]/) ? "#{@env.program.web_browser} #{loc}/#{@md.fnb}/#{@md.fn[:concordance]}" : @md.fns + tool=(@md.opt.cmd =~/[MVv]/) ? "#{@env.program.web_browser} #{@md.file.output_path.html_concordance}/#{@md.file.base_filename.html_concordance}" : @md.fns @md.opt.cmd=~/[MVvz]/ \ ? SiSU_Screen::Ansi.new(@md.opt.cmd,"Concordance",tool).grey_title_hi \ : SiSU_Screen::Ansi.new(@md.opt.cmd,'Concordance',tool).green_title_hi @@ -337,7 +337,7 @@ WOK end credits=@vz.credits_sisu @file_concordance << %{\n} # footer - SiSU_Screen::Ansi.new(@md.opt.cmd,@md.fns,"#{@env.path.output_tell}/#{@md.fn[:concordance]}").flow if @md.opt.cmd =~/[MV]/ + SiSU_Screen::Ansi.new(@opt.cmd,@md.fns,"#{@md.file.output_path.html_concordance}/#{@md.file.base_filename.html_concordance}").flow if @md.opt.cmd =~/[MV]/ end end end -- cgit v1.2.3 From 46eebe8bbf6c0102c2f921f65778a99121c91ff2 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Wed, 4 May 2011 22:19:42 -0400 Subject: v3: options, language setting, based on directory structure or filename * affects multiple libraries --- lib/sisu/v3/dal_doc_str.rb | 2 +- lib/sisu/v3/dal_metadata.rb | 2 +- lib/sisu/v3/db_columns.rb | 7 +- lib/sisu/v3/db_import.rb | 3 +- lib/sisu/v3/db_indexes.rb | 1 + lib/sisu/v3/db_remove.rb | 4 +- lib/sisu/v3/db_select.rb | 10 ++- lib/sisu/v3/digests.rb | 2 +- lib/sisu/v3/git.rb | 2 +- lib/sisu/v3/hub.rb | 1 + lib/sisu/v3/manifest.rb | 4 +- lib/sisu/v3/options.rb | 23 ++++-- lib/sisu/v3/param.rb | 23 +++--- lib/sisu/v3/shared_metadata.rb | 4 +- lib/sisu/v3/sitemaps.rb | 2 +- lib/sisu/v3/sst_do_inline_footnotes.rb | 2 +- lib/sisu/v3/sysenv.rb | 141 ++++++++++++++++++++------------- lib/sisu/v3/urls.rb | 3 +- 18 files changed, 141 insertions(+), 95 deletions(-) (limited to 'lib') diff --git a/lib/sisu/v3/dal_doc_str.rb b/lib/sisu/v3/dal_doc_str.rb index 61348d28..063ddd82 100644 --- a/lib/sisu/v3/dal_doc_str.rb +++ b/lib/sisu/v3/dal_doc_str.rb @@ -482,7 +482,7 @@ module SiSU_document_structure_extract meta=[] dir=SiSU_Env::Info_env.new(@md.fns) base_html="#{dir.url.root}/#{@md.fnb}" - l=SiSU_Env::Standardise_language.new.file_to_language(@md.fns) + l=SiSU_Env::Standardise_language.new(@md.opt.lng).language language=l[:l] tr=SiSU_Translate::Source.new(@md,language) meta << @pb diff --git a/lib/sisu/v3/dal_metadata.rb b/lib/sisu/v3/dal_metadata.rb index 31a7e4b2..56ef662c 100644 --- a/lib/sisu/v3/dal_metadata.rb +++ b/lib/sisu/v3/dal_metadata.rb @@ -60,7 +60,7 @@ module SiSU_metadata class Metadata def initialize(md,metad) @md,@metadata=md,metad - l=SiSU_Env::Standardise_language.new.file_to_language(md.fns) + l=SiSU_Env::Standardise_language.new(@md.opt.lng).language language=l[:l] @tr=SiSU_Translate::Source.new(md,language) end diff --git a/lib/sisu/v3/db_columns.rb b/lib/sisu/v3/db_columns.rb index 8b669b12..8b8a0b3c 100644 --- a/lib/sisu/v3/db_columns.rb +++ b/lib/sisu/v3/db_columns.rb @@ -621,9 +621,10 @@ module SiSU_DB_columns IS 'metadata document language';} end def tuple - t=if defined? @md.language.document_char \ - and @md.language.document_char=~/\S+/ - txt=@md.language.document_char + #modify check, is now required, SiSUv3d_ + t=if defined? @md.opt.lng \ + and @md.opt.lng=~/\S+/ + txt=@md.opt.lng special_character_escape(txt) ["#{name}, ","'#{txt}', "] else ['',''] diff --git a/lib/sisu/v3/db_import.rb b/lib/sisu/v3/db_import.rb index f1e7f064..45bb37f3 100644 --- a/lib/sisu/v3/db_import.rb +++ b/lib/sisu/v3/db_import.rb @@ -120,7 +120,8 @@ module SiSU_DB_import @dal_array=SiSU_DAL::Source.new(@opt).get # dal file drawn here SiSU_Screen::Ansi.new(@opt.cmd,"#{@db.psql.db}::#{@opt.fns}").puts_blue if @opt.cmd =~/vVM/ SiSU_Screen::Ansi.new(@opt.cmd,'Marshal Load',@fnc).puts_grey if @opt.cmd =~/v/ - select_first_match=%{ SELECT metadata_and_text.tid FROM metadata_and_text WHERE metadata_and_text.src_filename = '#{@opt.fns}'; } +#% + select_first_match=%{ SELECT metadata_and_text.tid FROM metadata_and_text WHERE metadata_and_text.src_filename = '#{@opt.fns}' AND metadata_and_text.language_document_char = '#{@opt.lng}'; } file_exist=@sql_type=~/sqlite/ \ ? @conn.get_first_value(select_first_match) \ : @conn.select_one(select_first_match) diff --git a/lib/sisu/v3/db_indexes.rb b/lib/sisu/v3/db_indexes.rb index de20e4c4..64a51474 100644 --- a/lib/sisu/v3/db_indexes.rb +++ b/lib/sisu/v3/db_indexes.rb @@ -93,6 +93,7 @@ module SiSU_DB_index %{CREATE INDEX idx_title ON metadata_and_text(title);}, %{CREATE INDEX idx_author ON metadata_and_text(creator_author);}, %{CREATE INDEX idx_filename ON metadata_and_text(src_filename);}, + %{CREATE INDEX idx_language ON metadata_and_text(language_document_char);}, %{CREATE INDEX idx_topics ON metadata_and_text(classify_topic_register)}, ] conn_execute_array(sql_arr) diff --git a/lib/sisu/v3/db_remove.rb b/lib/sisu/v3/db_remove.rb index 025514b1..7644ad52 100644 --- a/lib/sisu/v3/db_remove.rb +++ b/lib/sisu/v3/db_remove.rb @@ -72,9 +72,9 @@ module SiSU_DB_remove : false end del_id=if driver_sqlite3 - @conn.get_first_value(%{ SELECT tid FROM metadata_and_text WHERE src_filename = '#{@opt.fns}'; }).to_i + @conn.get_first_value(%{ SELECT tid FROM metadata_and_text WHERE src_filename = '#{@opt.fns}' AND metadata_and_text.language_document_char = '#{@opt.lng}'; }).to_i else - x=@conn.select_one(%{ SELECT metadata_and_text.tid FROM metadata_and_text WHERE metadata_and_text.src_filename = '#{@opt.fns}'; }) + x=@conn.select_one(%{ SELECT metadata_and_text.tid FROM metadata_and_text WHERE metadata_and_text.src_filename = '#{@opt.fns}' AND metadata_and_text.language_document_char = '#{@opt.lng}'; }) x ? (x.join.to_i) : nil end if del_id diff --git a/lib/sisu/v3/db_select.rb b/lib/sisu/v3/db_select.rb index 9bf8acbc..0cd34bcd 100644 --- a/lib/sisu/v3/db_select.rb +++ b/lib/sisu/v3/db_select.rb @@ -164,7 +164,7 @@ module SiSU_DB_select db_exist? @sdb_import.marshal_load tell=case @sql_type - when /sqlite/; SiSU_Screen::Ansi.new(@opt.cmd,"sqlite #{@db.sqlite.db} database?") + when /sqlite/; SiSU_Screen::Ansi.new(@opt.cmd,"sqlite3 #{@db.sqlite.db} database?") when /pg/; SiSU_Screen::Ansi.new(@opt.cmd,"pgaccess or psql #{@db.psql.db} database?") else '???' end @@ -173,7 +173,13 @@ module SiSU_DB_select db_exist? @sdb_remove_doc.remove @sdb_import.marshal_load - SiSU_Screen::Ansi.new(@opt.cmd,"pgaccess or psql #{@db.psql.db} database?").puts_grey if @opt.cmd =~/v/ + tell=case @sql_type + when /sqlite/; SiSU_Screen::Ansi.new(@opt.cmd,"sqlite3 #{@db.sqlite.db} database?") + when /pg/; SiSU_Screen::Ansi.new(@opt.cmd,"pgaccess or psql #{@db.psql.db} database?") + else '???' + end + tell.puts_grey if @opt.cmd =~/v/ + when /^--update$/ when /^--remove$/ db_exist? @sdb_remove_doc.remove diff --git a/lib/sisu/v3/digests.rb b/lib/sisu/v3/digests.rb index e11ac945..0e6852b2 100644 --- a/lib/sisu/v3/digests.rb +++ b/lib/sisu/v3/digests.rb @@ -101,7 +101,7 @@ module SiSU_Digest_view @@dg ||=@env.digest.type @@dl ||=@env.digest.length @dg,@dl=@@dg,@@dl - l=SiSU_Env::Standardise_language.new.file_to_language(@md.fns) + l=SiSU_Env::Standardise_language.new(@md.opt.lng).language @language=l[:l] @tr=SiSU_Translate::Source.new(@md,@language) @sp=' ' diff --git a/lib/sisu/v3/git.rb b/lib/sisu/v3/git.rb index 9d1d9332..bef93bc3 100644 --- a/lib/sisu/v3/git.rb +++ b/lib/sisu/v3/git.rb @@ -67,7 +67,7 @@ module SiSU_Git @env=SiSU_Env::Info_env.new @md=SiSU_Param::Parameters.new(@opt).get @file=SiSU_Env::SiSU_file.new(@md) - l=SiSU_Env::Standardise_language.new.file_to_language(@opt.fns) + l=SiSU_Env::Standardise_language.new(@md.opt.lng).language unless @md.i18n[0]==l[:c] p "using: #{@md.i18n[0]} (@make: :language:); filename #{@md.fns} filename language: #{l[:c]}, mismatch" end diff --git a/lib/sisu/v3/hub.rb b/lib/sisu/v3/hub.rb index e20b4293..ed3aad1d 100644 --- a/lib/sisu/v3/hub.rb +++ b/lib/sisu/v3/hub.rb @@ -105,6 +105,7 @@ module SiSU @opt.fns=fns @opt.pth=@opt.paths[i] @opt.f_pth=@opt.f_pths[i] + @opt.lng=@opt.lngs[i] @@pwd=@opt.pth Dir.chdir(@opt.pth) #watch env=SiSU_Env::Info_env.new(fns) diff --git a/lib/sisu/v3/manifest.rb b/lib/sisu/v3/manifest.rb index 38dc994c..98ccddb4 100644 --- a/lib/sisu/v3/manifest.rb +++ b/lib/sisu/v3/manifest.rb @@ -72,7 +72,7 @@ module SiSU_Manifest def initialize(opt) @opt=opt @particulars=SiSU_Particulars::Combined_singleton.instance.get_all(opt) - l=SiSU_Env::Standardise_language.new.file_to_language(@opt.fns) + l=SiSU_Env::Standardise_language.new(@opt.lng).language @doc_language=l[:l] end def read @@ -108,7 +108,7 @@ module SiSU_Manifest @base_path=@md.file.output_path.manifest @@dg ||=SiSU_Env::Info_env.new.digest.type @dg=@@dg - l=SiSU_Env::Standardise_language.new.file_to_language(@md.fns) + l=SiSU_Env::Standardise_language.new(@md.opt.lng).language @language=l[:l] @translate=SiSU_Translate::Source.new(@md,@language) @brace_url=SiSU_Viz::Skin.new.url_decoration diff --git a/lib/sisu/v3/options.rb b/lib/sisu/v3/options.rb index a1a448e6..110ebd85 100644 --- a/lib/sisu/v3/options.rb +++ b/lib/sisu/v3/options.rb @@ -61,10 +61,10 @@ module SiSU_commandline require "pathname" require_relative 'sysenv' # sysenv.rb class Options - attr_accessor :cmd,:mod,:act,:f_pths,:files,:paths,:f_pth,:pth,:fns,:fnb,:fnc,:fncb,:lng,:what + attr_accessor :cmd,:mod,:act,:f_pths,:files,:paths,:lngs,:f_pth,:pth,:fns,:fnb,:fnc,:fncb,:lng,:what def initialize(a) @a=a - @cmd,@f_pth,@pth,@fns,@fnb,@fnc,@fncb,@what='','','','','','','','','' + @cmd,@f_pth,@pth,@fns,@fnb,@fnc,@fncb,@what,@lng='','','','','','','','','','' @f_pths,@files,@paths,@mod,@act=Array.new(5){[]} @env=SiSU_Env::Info_env.new r=Px[:lng_lst].join('|') @@ -109,6 +109,7 @@ module SiSU_commandline @paths = q[:paths] @files = q[:files] @f_pths = q[:f_pths] + @lngs = q[:lngs] if @files.length > 0 \ and @cmd.empty? \ and @mod.length==0 #% if no other action called on filename given, default is sisu -0 [filename(s)] configured as flag default @@ -122,7 +123,7 @@ module SiSU_commandline end def set_files_and_paths_and_general_extract(s) c,w='','' - m,f,pth,z,lng=[],[],[],[],[] + m,f,pth,z,lng,lngs=[],[],[],[],[],[] a=s.split(/\s+/) a.each do |x| if x =~/^-[a-z0-5]+/i \ @@ -138,12 +139,20 @@ module SiSU_commandline pt=Pathname.new(x) pth << pt.split[0].realpath.to_s #remove? f << pt.split[1].to_s #remove? - u=/.+?\/([^\/]+)(?:(?:\/(?:en|fr|es)$)|$)/ - t=/.+\/(en|fr|es)/ - lng << (pt.split[0].realpath.to_s[t,1]) \ + r=Px[:lng_lst].join('|') + u=/.+?\/([^\/]+)(?:\/(?:#{r})$|$)/ + t=/.+\/(#{r})$/ + l_p = (pt.split[0].realpath.to_s[t,1]) \ ? pt.split[0].realpath.to_s[t,1] \ : nil #: '' + lng << l_p + lngs << if l_p + l_p + elsif x =~/~(#{r})\.ss[tm]/ + $1 + else 'en' + end f_pths << { pth: pt.split[0].realpath.to_s, f: pt.split[1].to_s, @@ -163,7 +172,7 @@ module SiSU_commandline puts "#{x} in #{a.join(' ')}?" end end - { cmd: c, mod: m, what: w, paths: pth, files: f, f_pths: f_pths, lng: lng } + { cmd: c, mod: m, what: w, paths: pth, files: f, f_pths: f_pths, lng: lng, lngs: lngs } end def expand_numeric_shortcuts(a) shortcut=SiSU_Env::Info_processing_flag.new diff --git a/lib/sisu/v3/param.rb b/lib/sisu/v3/param.rb index 8aa543db..357bc725 100644 --- a/lib/sisu/v3/param.rb +++ b/lib/sisu/v3/param.rb @@ -272,7 +272,7 @@ module SiSU_Param l,n=Db[:col_language],'title.language' validate_length(s,l,n) end - def language_char + def language_char # look into, this must be set, from 1 directory stub (.fi), 2 filename (~fi), [3 (not used) document header (@title:\n :language_char: fi)] s=@h['language_char'] l,n=Db[:col_language_char],'title.language_char' validate_length(s,l,n) @@ -1232,7 +1232,7 @@ module SiSU_Param end end @publisher ||= "#@@publisher (this copy)" - fn_set_lang=SiSU_Env::Standardise_language.new.file_to_language(@fns) + fn_set_lang=SiSU_Env::Standardise_language.new(@opt.lng).language unless @language[:code] \ and @language[:name] lang=@env.i18n.language #default language settings for directory by name, or in sysrc.yml @@ -1244,15 +1244,16 @@ module SiSU_Param @language[:name]=fn_set_lang[:l] end @fnl=@env.i18n.lang_filename(fn_set_lang[:c]) - @flv.each do |l| - lang=SiSU_Env::Standardise_language.new.file_to_language(l) - c={ a: '', b: '', c: '' } - if @fnl[:pre] =~/\S/; c[:a]="#{lang[:c]}." - elsif @fnl[:mid] =~/\S/; c[:b]=".#{lang[:c]}" - elsif @fnl[:post] =~/\S/; c[:c]=".#{lang[:c]}" - end - @lang << [lang[:l],"#{c[:a]}sisu_manifest#{c[:b]}.html#{c[:c]}"] - end if @flv +#fix +# @flv.each do |l| +# lang=SiSU_Env::Standardise_language.new.file_to_language(l) +# c={ a: '', b: '', c: '' } +# if @fnl[:pre] =~/\S/; c[:a]="#{lang[:c]}." +# elsif @fnl[:mid] =~/\S/; c[:b]=".#{lang[:c]}" +# elsif @fnl[:post] =~/\S/; c[:c]=".#{lang[:c]}" +# end +# @lang << [lang[:l],"#{c[:a]}sisu_manifest#{c[:b]}.html#{c[:c]}"] +# end if @flv @lang.uniq! @fn=SiSU_Env::Env_call.new(@fns).lang(fn_set_lang[:c]) @identifier="#{@env.url.root}/#{@fnb}/#{@fn[:toc]}" #DC note constructed dc identifier diff --git a/lib/sisu/v3/shared_metadata.rb b/lib/sisu/v3/shared_metadata.rb index 167af5c4..25ca19f1 100644 --- a/lib/sisu/v3/shared_metadata.rb +++ b/lib/sisu/v3/shared_metadata.rb @@ -67,7 +67,7 @@ module Metadata meta,tag=[],[] dir=SiSU_Env::Info_env.new(@md.fns) base_html="#{dir.url.root}/#{@md.fnb}" - l=SiSU_Env::Standardise_language.new.file_to_language(@md.fns) + l=SiSU_Env::Standardise_language.new(@md.opt.lng).language language=l[:l] tr=SiSU_Translate::Source.new(@md,language) @attrib='md' @@ -997,7 +997,7 @@ WOK meta=[] dir=SiSU_Env::Info_env.new(@md.fns) base_html="#{dir.url.root}/#{@md.fnb}" - l=SiSU_Env::Standardise_language.new.file_to_language(@md.fns) + l=SiSU_Env::Standardise_language.new(@md.opt.lng).language language=l[:l] tr=SiSU_Translate::Source.new(@md,language) tag="Document Manifest @" diff --git a/lib/sisu/v3/sitemaps.rb b/lib/sisu/v3/sitemaps.rb index 2241b5e6..c306ee99 100644 --- a/lib/sisu/v3/sitemaps.rb +++ b/lib/sisu/v3/sitemaps.rb @@ -75,7 +75,7 @@ module SiSU_Sitemaps def songsheet begin @sys=SiSU_Env::System_call.new - fn_set_lang=SiSU_Env::Standardise_language.new.file_to_language(@opt.fns) + fn_set_lang=SiSU_Env::Standardise_language.new(@opt.lng).language @fn=SiSU_Env::Env_call.new(@opt.fns).lang(fn_set_lang[:c]) if @opt.cmd =~/Y/ @md=SiSU_Param::Parameters.new(@opt).get diff --git a/lib/sisu/v3/sst_do_inline_footnotes.rb b/lib/sisu/v3/sst_do_inline_footnotes.rb index 27ccf6db..3936d612 100644 --- a/lib/sisu/v3/sst_do_inline_footnotes.rb +++ b/lib/sisu/v3/sst_do_inline_footnotes.rb @@ -170,7 +170,7 @@ module SiSU_Convert_footnotes @@word_mode=[] @env=SiSU_Env::Info_env.new(@md.fns) @skin=SiSU_Env::Info_skin.new(@md) - l=SiSU_Env::Standardise_language.new.file_to_language(@md.fns) + l=SiSU_Env::Standardise_language.new(@md.opt.lng).language @language=l[:l] @translate=SiSU_Translate::Source.new(@md,@language) end diff --git a/lib/sisu/v3/sysenv.rb b/lib/sisu/v3/sysenv.rb index 1b621c61..ac584e80 100644 --- a/lib/sisu/v3/sysenv.rb +++ b/lib/sisu/v3/sysenv.rb @@ -444,7 +444,7 @@ module SiSU_Env end self end - def document_language_versions_found + def document_language_versions_found #REVISIT @fn={} unless (@fns.nil? \ or @fns.empty?) @@ -499,12 +499,12 @@ module SiSU_Env fns_c="#{@fn[:m]}~#{lng.code}.#{@fn[:t]}" fns_l="#{@fn[:m]}~#{lng.name}.#{@fn[:t]}" if FileTest.file?(fns_c) - fn_set_lang=SiSU_Env::Standardise_language.new.file_to_language(fns_c) + fn_set_lang=SiSU_Env::Standardise_language.new.file_to_language(fns_c) #reconsider file_to_language lng=fn_set_lang[:l] fn=SiSU_Env::Env_call.new(fns_c).lang(fn_set_lang[:c]) @m << { m: fn[:manifest], l: lng } elsif FileTest.file?(fns_l) - fn_set_lang=SiSU_Env::Standardise_language.new.file_to_language(fns_l) + fn_set_lang=SiSU_Env::Standardise_language.new.file_to_language(fns_l) #reconsider file_to_language @fnl=dir.i18n.lang_filename(fn_set_lang[:c]) fn=SiSU_Env::Env_call.new(fns_l).lang(fn_set_lang[:c]) @m << { m: fn[:manifest], l: lng } @@ -796,48 +796,67 @@ module SiSU_Env @language=Info_env.new.defaults[:language] end end - def language #use ISO_639-2 + def language lang={} case @language - when /American|^us$/i; d,c,l=false,'en','American English' #depreciated, see iso 639-2 - when /English|^en$/i; d,c,l=false,'en','English' - when /French|Francais|^fr$/i; d,c,l=false,'fr','French' - when /German|^de$/i; d,c,l=false,'de','German' - when /Italian|^it$/i; d,c,l=false,'it','Italian' - when /Spanish|Espanol|^es$/i; d,c,l=false,'es','Spanish' - when /Brazilian(?: Portuguese)?|^br$/i; d,c,l=false,'pt','Brazilian Portuguese' #depreciated, see iso 639-2 - when /Portuguese|^pt$/i; d,c,l=false,'pt','Portuguese' - when /Swedish|Svensk|^sv$/i; d,c,l=false,'sv','Swedish' - when /Danish|Dansk|^da$/i; d,c,l=false,'da','Danish' - when /Finnish|Finsk|Suomi|^fi$/i; d,c,l=false,'fi','Finnish' - when /Norwegian|Norsk|^no$/i; d,c,l=false,'no','Norwegian' - when /Icelandic|^is$/i; d,c,l=false,'is','Icelandic' - when /Dutch|^nl$/i; d,c,l=false,'nl','Dutch' - when /Estonian|^et$/i; d,c,l=false,'et','Estonian' - when /Hungarian|^hu$/i; d,c,l=false,'hu','Hungarian' - when /Polish|^pl$/i; d,c,l=false,'pl','Polish' - when /Romanian|^ro$/i; d,c,l=false,'ro','Romanian' - when /Russian|^ru$/i; d,c,l=false,'ru','Russian' - when /Greek|^el$/i; d,c,l=false,'el','Greek' - when /Ukranian|^uk$/i; d,c,l=false,'uk','Ukranian' - when /Turkish|^tr$/i; d,c,l=false,'tr','Turkish' - #when /Serbian/i; d,c,l=false,'', 'Serbian' - #when /Welsh/i; d,c,l=false,'', 'Welsh' - #when /Basque/i; d,c,l=false,'', 'Basque' - #when /Breton/i; d,c,l=false,'', 'Breton' - #when /Catalan/i; d,c,l=false,'', 'Catalan' - #when /Galician/i; d,c,l=false,'', 'Galician' - #when /Saa?mi/i; d,c,l=false,'', 'Saami' - #when /Hebrew/i; d,c,l=false,'', 'Hebrew' - #when /Latin/i; d,c,l=false,'', 'Latin' - #when /Esperanto/i; d,c,l=false,'', 'Esperanto' - when /Slovenian|^sl$/i; d,c,l=false,'sl','Slovenian' - when /Croatian|^hr$/i; d,c,l=false,'hr','Croatian' - when /Slovak(?:ian)?|^sk$/i; d,c,l=false,'sk','Slovakian' - when /Czech|^cs$/i; d,c,l=false,'cs','Czech' - when /Bulgarian|^bg$/i; d,c,l=false,'bg','Bulgarian' - else d,c,l=true,'en','English (default)' - #else d,c,l=true,'xx','Default' + when /^am$|Amharic/i; d,c,l=false,'am','Amharic' + when /^bg$|Bulgarian/i; d,c,l=false,'bg','Bulgarian' + when /^br$|Breton/i; d,c,l=false,'br','Breton' + when /^ca$|Catalan/i; d,c,l=false,'ca','Catalan' + when /^cs$|Czech/i; d,c,l=false,'cs','Czech' + when /^cy$|Welsh/i; d,c,l=false,'cy','Welsh' + when /^da$|Danish|Dansk/i; d,c,l=false,'da','Danish' + when /^de$|German/i; d,c,l=false,'de','German' + when /^el$|Greek/i; d,c,l=false,'el','Greek' + when /^en$|English/i; d,c,l=false,'en','English' + when /^eo$|Esperanto/i; d,c,l=false,'eo','Esperanto' + when /^es$|Spanish|Espanol/i; d,c,l=false,'es','Spanish' + when /^et$|Estonian/i; d,c,l=false,'et','Estonian' + when /^eu$|Basque/i; d,c,l=false,'eu','Basque' + when /^fi$|Finnish|Finsk|Suomi/i; d,c,l=false,'fi','Finnish' + when /^fr$|French|Francais/i; d,c,l=false,'fr','French' + when /^ga$|Irish/i; d,c,l=false,'ga','Irish' + when /^gl$|Galician/i; d,c,l=false,'gl','Galician' + when /^he$|Hebrew/i; d,c,l=false,'he','Hebrew' + when /^hi$|Hindi/i; d,c,l=false,'hi','Hindi' + when /^hr$|Croatian/i; d,c,l=false,'hr','Croatian' + when /^hy$|Armenian/i; d,c,l=false,'hy','Armenian' + when /^ia$|Interlingua/i; d,c,l=false,'ia','Interlingua' + when /^is$|Icelandic/i; d,c,l=false,'is','Icelandic' + when /^it$|Italian/i; d,c,l=false,'it','Italian' + when /^la$|Latin/i; d,c,l=false,'la','Latin' + when /^lo$|Lao/i; d,c,l=false,'lo','Lao' + when /^lt$|Lithuanian/i; d,c,l=false,'lt','Lithuanian' + when /^lv$|Latvian/i; d,c,l=false,'lv','Latvian' + when /^ml$|Malayalam/i; d,c,l=false,'ml','Malayalam' + when /^mr$|Marathi/i; d,c,l=false,'mr','Marathi' + when /^nl$|Dutch/i; d,c,l=false,'nl','Dutch' + when /^no$|Norwegian|Norsk/i; d,c,l=false,'no','Norwegian' + when /^nn$|Norwegian Nynorsk/i; d,c,l=false,'nn','Norwegian Nynorsk' + when /^oc$|Occitan/i; d,c,l=false,'oc','Occitan' + when /^pl$|Polish/i; d,c,l=false,'pl','Polish' + when /^pt$|Portuguese/i; d,c,l=false,'pt','Portuguese' + when /^pt_BR$|Portuguese Brazil/i; d,c,l=false,'pt_BR','Portuguese Brazil' + when /^ro$|Romanian/i; d,c,l=false,'ro','Romanian' + when /^ru$|Russian/i; d,c,l=false,'ru','Russian' + when /^sa$|Sanskrit/i; d,c,l=false,'sa','Sanskrit' + when /^se$|Sami/i; d,c,l=false,'se','Sami' + when /^sk$|Slovak/i; d,c,l=false,'sk','Slovak' + when /^sl$|Slovenian/i; d,c,l=false,'sl','Slovenian' + when /^sq$|Albanian/i; d,c,l=false,'sq','Albanian' + when /^sr$|Serbian/i; d,c,l=false,'sr','Serbian' + when /^sv$|Swedish|Svensk/i; d,c,l=false,'sv','Swedish' + when /^ta$|Tamil/i; d,c,l=false,'ta','Tamil' + when /^te$|Telugu/i; d,c,l=false,'te','Telugu' + when /^th$|Thai/i; d,c,l=false,'th','Thai' + when /^tk$|Turkmen/i; d,c,l=false,'tk','Turkmen' + when /^tr$|Turkish/i; d,c,l=false,'tr','Turkish' + when /^uk$|Ukranian/i; d,c,l=false,'uk','Ukranian' + when /^ur$|Urdu/i; d,c,l=false,'ur','Urdu' + #when /^us$|/i; d,c,l=false,'us','' + when /^vi$|Vietnamese/i; d,c,l=false,'vi','Vietnamese' + else d,c,l=true,'en','English (default)' + #else d,c,l=true,'xx','Default' end lang[:d],lang[:c],lang[:l]=d,c,l lang @@ -851,7 +870,7 @@ module SiSU_Env def code language[:c] end - def file_to_language(file) + def file_to_language(file) # used, fix and remove m=/.+?\~(\w{2,3})\.(?:-|ssm\.)?sst$/ @language=if file =~m ; file[m,1] else '' @@ -859,7 +878,15 @@ module SiSU_Env language end def codes - codes=['us','en','fr','de','it','es','br','pt','sv','da','fi','no','is','nl','et','hu','pl','ro','ru','el','uk','tr','sk','hr','sl','cs','bg'] # remove us and br see iso-639-2 + # Language List po4a + # + # Px[:lng_lst]=%w[am bg bn br ca cs cy da de el en eo es et eu fi fr ga gl he hi hr hy ia is it la lo lt lv ml mr nl nn no oc pl pt pt_BR ro ru sa se sk sl sq sr sv ta te th tk tr uk ur us vi] + # see polyglossia for subset + # + # also note ISO_639-2 + # + # + Px[:lng_lst] # constants.rb end end class Info_env < Env_call @@ -3382,14 +3409,9 @@ WOK end self end - def lang_part - (@md.opt.f_pth[:lng]) \ - ? @md.opt.f_pth[:lng] \ - : @md.i18n[0] - end def set_path_abc(ft) if @env.output_dir_structure.by_language_code? - "#{output_path.base}/#{lang_part}/#{ft}" + "#{output_path.base}/#{@md.opt.lng}/#{ft}" elsif @env.output_dir_structure.by_filetype? "#{output_path.base}/#{ft}" else @@ -3398,14 +3420,14 @@ WOK end def set_path_ab(ft) if @env.output_dir_structure.by_language_code? - "#{output_path.base}/#{lang_part}/#{ft}" + "#{output_path.base}/#{@md.opt.lng}/#{ft}" else "#{output_path.base}/#{ft}" end end def set_path_ab_src(ft) if @env.output_dir_structure.by_language_code? - "#{output_path.base}/#{ft}/#{lang_part}" + "#{output_path.base}/#{ft}/#{@md.opt.lng}" else "#{output_path.base}/#{ft}" end @@ -3429,14 +3451,14 @@ WOK path=set_path_ab_src(ft) end def po - "#{output_path.base}/po4a/#{@md.fnb}/po/#{lang_part}" + "#{output_path.base}/po4a/#{@md.fnb}/po/#{@md.opt.lng}" end def pot "#{output_path.base}/po4a/#{@md.fnb}/pot" end def po_git ft=Gt[:po] - pth=@env.processing_path.git + '/' + @md.fnb + '/' + ft + '/' + lang_part + pth=@env.processing_path.git + '/' + @md.fnb + '/' + ft + '/' + @md.opt.lng mkdir_p(pth) unless FileTest.directory?(pth) pth end @@ -3512,6 +3534,9 @@ WOK ft='sitemaps' path=set_path_ab(ft) end + def sqlite + path=output_path.base + end self end end @@ -3638,8 +3663,10 @@ WOK @@pwd ||=Dir.pwd @pwd=Dir.pwd @env=SiSU_Env::Info_env.new - m=/.+\/(?:src\/)?(\S+)/m # m=/.+?\/(?:src\/)?([^\/]+)$/im # m=/.+\/(\S+)/m - @pwd_stub=@pwd[m,1] + pt=Pathname.new(@pwd) + r=Px[:lng_lst].join('|') + u=/.+?\/([^\/]+)(?:\/(?:#{r})$|$)/ + @pwd_stub=pt.realpath.to_s[u,1] @rc=@@rc ||=Get_init.instance.sisu_yaml.rc @defaults=Info_env.new.defaults end diff --git a/lib/sisu/v3/urls.rb b/lib/sisu/v3/urls.rb index 77952d0b..14788c00 100644 --- a/lib/sisu/v3/urls.rb +++ b/lib/sisu/v3/urls.rb @@ -79,12 +79,11 @@ module SiSU_urls def initialize(opt) @opt=opt @particulars=SiSU_Particulars::Combined_singleton.instance.get_env_md(opt) - fn_set_lang=SiSU_Env::Standardise_language.new.file_to_language(@opt.fns) @cmd=@opt.cmd @md=@particulars.md @env=@particulars.env @fnb=@env.fnb - fn_set_lang=SiSU_Env::Standardise_language.new.file_to_language(@opt.fns) + fn_set_lang=SiSU_Env::Standardise_language.new(@opt.lng).language @fnl=@env.i18n.lang_filename(fn_set_lang[:c]) @fn=SiSU_Env::Env_call.new(@opt.fns).lang(fn_set_lang[:c]) @m_regular=/(.+?)\.(?:(?:-|ssm\.)?sst|ssm)$/ -- cgit v1.2.3 From 8ece506490b3f52aa3cf241a3b3009abc8027eae Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Wed, 4 May 2011 23:02:26 -0400 Subject: v3: i18n, sysenv, options, language setting changes * must be able to set language at options stage from filename or directory * affects many files * old i18n more appropriately renamed prog_text_translation --- lib/sisu/v3/dal.rb | 2 +- lib/sisu/v3/dal_doc_str.rb | 2 +- lib/sisu/v3/dal_metadata.rb | 2 +- lib/sisu/v3/digests.rb | 4 +- lib/sisu/v3/i18n.rb | 1792 +++----------------------------- lib/sisu/v3/manifest.rb | 10 +- lib/sisu/v3/param.rb | 6 +- lib/sisu/v3/prog_text_translation.rb | 1697 ++++++++++++++++++++++++++++++ lib/sisu/v3/shared_metadata.rb | 4 +- lib/sisu/v3/sst_do_inline_footnotes.rb | 2 +- lib/sisu/v3/sysenv.rb | 156 +-- lib/sisu/v3/texpdf_format.rb | 12 +- 12 files changed, 1963 insertions(+), 1726 deletions(-) create mode 100644 lib/sisu/v3/prog_text_translation.rb (limited to 'lib') diff --git a/lib/sisu/v3/dal.rb b/lib/sisu/v3/dal.rb index a25f0f99..28e7193d 100644 --- a/lib/sisu/v3/dal.rb +++ b/lib/sisu/v3/dal.rb @@ -77,7 +77,7 @@ module SiSU_DAL require_relative 'dal_character_check' # dal_character_check.rb require_relative 'dal_substitutions_and_insertions' # dal_substitutions_and_insertions.rb require_relative 'dal_expand_insertions' # dal_expand_insertions.rb - require_relative 'i18n' # i18n.rb + require_relative 'prog_text_translation' # prog_text_translation.rb require_relative 'shared_sem' # shared_sem.rb class Instantiate < SiSU_Param::Parameters::Instructions def initialize diff --git a/lib/sisu/v3/dal_doc_str.rb b/lib/sisu/v3/dal_doc_str.rb index 063ddd82..ed289015 100644 --- a/lib/sisu/v3/dal_doc_str.rb +++ b/lib/sisu/v3/dal_doc_str.rb @@ -483,7 +483,7 @@ module SiSU_document_structure_extract dir=SiSU_Env::Info_env.new(@md.fns) base_html="#{dir.url.root}/#{@md.fnb}" l=SiSU_Env::Standardise_language.new(@md.opt.lng).language - language=l[:l] + language=l[:n] tr=SiSU_Translate::Source.new(@md,language) meta << @pb h={ ln: 2, obj: 'Metadata', ocn_: false } diff --git a/lib/sisu/v3/dal_metadata.rb b/lib/sisu/v3/dal_metadata.rb index 56ef662c..2e68c944 100644 --- a/lib/sisu/v3/dal_metadata.rb +++ b/lib/sisu/v3/dal_metadata.rb @@ -61,7 +61,7 @@ module SiSU_metadata def initialize(md,metad) @md,@metadata=md,metad l=SiSU_Env::Standardise_language.new(@md.opt.lng).language - language=l[:l] + language=l[:n] @tr=SiSU_Translate::Source.new(md,language) end def make_para(obj,ocn) diff --git a/lib/sisu/v3/digests.rb b/lib/sisu/v3/digests.rb index 0e6852b2..e7b303ba 100644 --- a/lib/sisu/v3/digests.rb +++ b/lib/sisu/v3/digests.rb @@ -58,7 +58,7 @@ =end module SiSU_Digest_view require_relative 'particulars' # particulars.rb - require_relative 'i18n' # i18n.rb + require_relative 'prog_text_translation' # prog_text_translation.rb require_relative 'shared_markup_alt.rb' # shared_markup_alt.rb pwd=Dir.pwd class Source @@ -102,7 +102,7 @@ module SiSU_Digest_view @@dl ||=@env.digest.length @dg,@dl=@@dg,@@dl l=SiSU_Env::Standardise_language.new(@md.opt.lng).language - @language=l[:l] + @language=l[:n] @tr=SiSU_Translate::Source.new(@md,@language) @sp=' ' end diff --git a/lib/sisu/v3/i18n.rb b/lib/sisu/v3/i18n.rb index 9fbe8c3e..683e6098 100644 --- a/lib/sisu/v3/i18n.rb +++ b/lib/sisu/v3/i18n.rb @@ -57,6 +57,159 @@ =end module SiSU_i18n + class Languages + def language + def table + list= { + am: { c: 'am', n: 'Amharic', xlp: 'amharic'}, + bg: { c: 'bg', n: 'Bulgarian', xlp: 'bulgarian'}, + bn: { c: 'bn', n: 'Bengali', xlp: 'bengali'}, + br: { c: 'br', n: 'Breton', xlp: 'breton'}, + ca: { c: 'ca', n: 'Catalan', xlp: 'catalan'}, + cs: { c: 'cs', n: 'Czech', xlp: 'czech'}, + cy: { c: 'cy', n: 'Welsh', xlp: 'welsh'}, + da: { c: 'da', n: 'Danish', xlp: 'danish'}, + de: { c: 'de', n: 'German', xlp: 'german'}, + el: { c: 'el', n: 'Greek', xlp: 'greek'}, + en: { c: 'en', n: 'English', xlp: 'english'}, + eo: { c: 'eo', n: 'Esperanto', xlp: 'esperanto'}, + es: { c: 'es', n: 'Spanish', xlp: 'spanish'}, + et: { c: 'et', n: 'Estonian', xlp: 'estonian'}, + eu: { c: 'eu', n: 'Basque', xlp: 'basque'}, + fi: { c: 'fi', n: 'Finnish', xlp: 'finnish'}, + fr: { c: 'fr', n: 'French', xlp: 'french'}, + ga: { c: 'ga', n: 'Irish', xlp: 'irish'}, + gl: { c: 'gl', n: 'Galician', xlp: 'galician'}, + he: { c: 'he', n: 'Hebrew', xlp: 'hebrew'}, + hi: { c: 'hi', n: 'Hindi', xlp: 'hindi'}, + hr: { c: 'hr', n: 'Croatian', xlp: 'croatian'}, + hy: { c: 'hy', n: 'Armenian', xlp: 'armenian'}, + ia: { c: 'ia', n: 'Interlingua', xlp: 'interlingua'}, + is: { c: 'is', n: 'Icelandic', xlp: 'icelandic'}, + it: { c: 'it', n: 'Italian', xlp: 'italian'}, + la: { c: 'la', n: 'Latin', xlp: 'latin'}, + lo: { c: 'lo', n: 'Lao', xlp: 'lao'}, + lt: { c: 'lt', n: 'Lithuanian', xlp: 'lithuanian'}, + lv: { c: 'lv', n: 'Latvian', xlp: 'latvian'}, + ml: { c: 'ml', n: 'Malayalam', xlp: 'malayalam'}, + mr: { c: 'mr', n: 'Marathi', xlp: 'marathi'}, + nl: { c: 'nl', n: 'Dutch', xlp: 'dutch'}, + no: { c: 'no', n: 'Norwegian', xlp: 'norsk'}, + nn: { c: 'nn', n: 'Norwegian Nynorsk', xlp: 'nynorsk'}, + oc: { c: 'oc', n: 'Occitan', xlp: 'occitan'}, + pl: { c: 'pl', n: 'Polish', xlp: 'polish'}, + pt: { c: 'pt', n: 'Portuguese', xlp: 'portuges'}, + pt_BR: { c: 'pt_BR', n: 'Portuguese Brazil', xlp: 'brazilian'}, + ro: { c: 'ro', n: 'Romanian', xlp: 'romanian'}, + ru: { c: 'ru', n: 'Russian', xlp: 'russian'}, + sa: { c: 'sa', n: 'Sanskrit', xlp: 'sanskrit'}, + se: { c: 'se', n: 'Sami', xlp: 'samin'}, + sk: { c: 'sk', n: 'Slovak', xlp: 'slovak'}, + sl: { c: 'sl', n: 'Slovenian', xlp: 'slovenian'}, + sq: { c: 'sq', n: 'Albanian', xlp: 'albanian'}, + sr: { c: 'sr', n: 'Serbian', xlp: 'serbian'}, + sv: { c: 'sv', n: 'Swedish', xlp: 'swedish'}, + ta: { c: 'ta', n: 'Tamil', xlp: 'tamil'}, + te: { c: 'te', n: 'Telugu', xlp: 'telugu'}, + th: { c: 'th', n: 'Thai', xlp: 'thai'}, + tk: { c: 'tk', n: 'Turkmen', xlp: 'turkmen'}, + tr: { c: 'tr', n: 'Turkish', xlp: 'turkish'}, + uk: { c: 'uk', n: 'Ukranian', xlp: 'ukrainian'}, + ur: { c: 'ur', n: 'Urdu', xlp: 'urdu'}, + us: { c: 'en', n: 'English (American)',xlp: 'english'}, + vi: { c: 'vi', n: 'Vietnamese', xlp: 'vietnamese'}, + en: { c: 'en', n: 'English', xlp: 'english'}, + xx: { c: 'xx', n: 'Default', xlp: 'english'}, + } + end + def list + 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], + '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], + 'en' => table[:en], + 'xx' => table[:en] + } + end + self + end + end +end +__END__ +Language Lists +* po4a c: + + Px[:lng_lst]=%w[am bg bn br ca cs cy da de el en eo es et eu fi fr ga gl he hi hr hy ia is it la lo lt lv ml mr nl nn no oc pl pt pt_BR ro ru sa se sk sl sq sr sv ta te th tk tr uk ur us vi] +* polyglossia xlp: + + missing from (:c) list: + arabic asturian bahasai bahasam coptic divehi farsi lsorbian magyar scottish syriac usorbian +note ISO_639-1 + + +also note ISO_639-2 + + + +Px[:lng_lst] # constants.rb + + + +module SiSU_text_translation class Language def initialize(md) @md=md @@ -140,1642 +293,3 @@ module SiSU_i18n end end end -module SiSU_Translate - require_relative 'sysenv' # sysenv.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; English.new(md,doc_lang,trans_str) # tag depreciated, see iso 639-2 - when /English/i; English.new(md,doc_lang,trans_str) - when /French/i; French.new(md,doc_lang,trans_str) - when /German/i; German.new(md,doc_lang,trans_str) - when /Italian/i; Italian.new(md,doc_lang,trans_str) - when /Spanish/i; Spanish.new(md,doc_lang,trans_str) - when /Brazilian(?: Portuguese)?/i; Portuguese.new(md,doc_lang,trans_str) # tag depreciated, see iso 639-2 - when /Portuguese/i; Portuguese.new(md,doc_lang,trans_str) - when /Swedish/i; Swedish.new(md,doc_lang,trans_str) - when /Danish/i; Danish.new(md,doc_lang,trans_str) - when /Finnish/i; Finnish.new(md,doc_lang,trans_str) - when /Norwegian/i; Norwegian.new(md,doc_lang,trans_str) - when /Icelandic/i; Icelandic.new(md,doc_lang,trans_str) - when /Dutch/i; Dutch.new(md,doc_lang,trans_str) - when /Estonian/i; Estonian.new(md,doc_lang,trans_str) - when /Hungarian/i; Hungarian.new(md,doc_lang,trans_str) - when /Polish/i; Polish.new(md,doc_lang,trans_str) - when /Romanian/i; Romanian.new(md,doc_lang,trans_str) - when /Russian/i; Russian.new(md,doc_lang,trans_str) - when /Greek/i; Greek.new(md,doc_lang,trans_str) - when /Ukranian/i; Ukranian.new(md,doc_lang,trans_str) - when /Turkish/i; Turkish.new(md,doc_lang,trans_str) - when /Slovenian/i; Slovenian.new(md,doc_lang,trans_str) - when /Croatian/i; Croatian.new(md,doc_lang,trans_str) - when /Slovak(?:ian)?/i; Slovak.new(md,doc_lang,trans_str) - when /Czech/i; Czech.new(md,doc_lang,trans_str) - when /Bulgarian/i; Bulgarian.new(md,doc_lang,trans_str) - else English.new(md,doc_lang,trans_str) - end - end - - def filename - @lang_class.filename - end - def description - @lang_class.description - 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 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 digitized_by - @lang_class.digitized_by - 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 - lang=case @trans_str - when /American/i; 'American English' # tag depreciated, see iso 639-2 - when /English/i; 'English' - when /French/i; 'français' - when /German/i; 'Deutsch' - when /Italian/i; 'Italiano' - when /Spanish/i; 'español' - when /Brazilian(?: Portuguese)?/i; 'Brazilian Português' # tag depreciated, see iso 639-2 - when /Portuguese/i; 'Português' - when /Swedish/i; 'svenska' - when /Danish/i; 'dansk' - when /Finnish/i; 'suomi' - when /Norwegian/i; 'norsk' - when /Icelandic/i; 'Icelandic' - when /Dutch/i; 'Nederlands' - when /Estonian/i; 'Estonian' - when /Hungarian/i; 'Hungarian' - when /Polish/i; 'polski' - when /Romanian/i; 'română' - when /Russian/i; 'Русский (Russkij)' - when /Greek/i; 'Ελληνικά (Ellinika)' - when /Ukranian/i; 'українська (ukrajins\'ka)' - when /Turkish/i; 'Türkçe' - when /Slovenian/i; 'Slovenian' - when /Croatian/i; 'Croatian' - when /Slovak(?:ian)?/i; 'slovensky' #slovensky ? - when /Czech/i; 'česky' - when /Bulgarian/i; 'Български (Bəlgarski)' - when /Japanese/i; '日本語 (Nihongo)' - when /Korean/i; '한국어 (Hangul)' - #when /Catalan/i; 'català' - else 'English' - end - #check on 中文 and عربي - end - end - 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 description - 'description' - 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 author #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 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 (dal) 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 - lang=case @trans_str - when /American/i; 'American English' # tag depreciated, see iso 639-2 - when /English/i; 'English' - when /French/i; 'French' - when /German/i; 'German' - when /Italian/i; 'Italian' - when /Spanish/i; 'Spanish' - when /Brazilian(?: Portuguese)?/i; 'Brazilian Portuguese' # tag depreciated, see iso 639-2 - when /Portuguese/i; 'Portuguese' - when /Swedish/i; 'Swedish' - when /Danish/i; 'Danish' - when /Finnish/i; 'Finnish' - when /Norwegian/i; 'Norwegian' - when /Icelandic/i; 'Icelandic' - when /Dutch/i; 'Dutch' - when /Estonian/i; 'Estonian' - when /Hungarian/i; 'Hungarian' - when /Polish/i; 'Polish' - when /Romanian/i; 'Romanian' - when /Russian/i; 'Russian' - when /Greek/i; 'Greek' - when /Ukranian/i; 'Ukranian' - when /Turkish/i; 'Turkish' - when /Slovenian/i; 'Slovenian' - when /Croatian/i; 'Croatian' - when /Slovak(?:ian)?/i; 'Slovakian' - when /Czech/i; 'Czech' - when /Bulgarian/i; 'Bulgarian' - else @trans_str - end - end - end - 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 description - 'description' - 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 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 - lang=case @trans_str - when /American/i; 'Anglais americain' # tag depreciated, see iso 639-2 - when /English/i; 'Anglais' - when /French/i; 'Français' - when /German/i; 'Allemand' - when /Italian/i; 'Italien' - when /Spanish/i; 'Espagnol' - when /Brazilian(?: Portuguese)?/i; 'Portugais brésilien' # tag depreciated, see iso 639-2 - when /Portuguese/i; 'Portugais' - when /Swedish/i; 'Suédois' - when /Danish/i; 'Danois' - when /Finnish/i; 'Finnois' - when /Norwegian/i; 'Norvégien' - when /Icelandic/i; 'Islandais' - when /Dutch/i; 'Néerlandais' - when /Estonian/i; 'Estonien' - when /Hungarian/i; 'Hongrois' - when /Polish/i; 'Polonais' - when /Romanian/i; 'Roumain' - when /Russian/i; 'Russe' - when /Greek/i; 'Grec' - when /Ukranian/i; 'Ukrainien' - when /Turkish/i; 'Turc' - when /Slovenian/i; 'Slovène' - when /Croatian/i; 'Croate' - when /Slovak(?:ian)?/i; 'Slovaque' - when /Czech/i; 'Tcheque' - when /Bulgarian/i; 'Bulgare' - else @trans_str - end - end - end - 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 description - 'Beschreibung' - 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 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 - lang=case @trans_str - when /American/i; 'Amerikanisch-Englisch' # tag depreciated, see iso 639-2 - when /English/i; 'Englisch' - when /French/i; 'Französisch' - when /German/i; 'Deutsch' - when /Italian/i; 'Italienisch' - when /Spanish/i; 'Spanisch' - when /Brazilian(?: Portuguese)?/i; 'Brasilianisch-Portugiesisch' # tag depreciated, see iso 639-2 - when /Portuguese/i; 'Portugiesisch' - when /Swedish/i; 'Schwedisch' - when /Danish/i; 'Dänisch' - when /Finnish/i; 'Finnisch' - when /Norwegian/i; 'Norwegisch' - when /Icelandic/i; 'Isländisch' - when /Dutch/i; 'Niederländisch' - when /Estonian/i; 'Estnisch' - when /Hungarian/i; 'Ungarisch' - when /Polish/i; 'Polnisch' - when /Romanian/i; 'Rumänisch' - when /Russian/i; 'Russisch' - when /Greek/i; 'Griechisch' - when /Ukranian/i; 'Ukrainisch' - when /Turkish/i; 'Türkisch' - when /Slovenian/i; 'Slovenisch' - when /Croatian/i; 'Kroatisch' - when /Slovak(?:ian)?/i; 'Slovakisch' - when /Czech/i; 'Tschechisch' - when /Bulgarian/i; 'Bulgarisch' - else @trans_str - end - end - end - 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 description - 'descripción' - 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 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 - lang=case @trans_str - when /American/i; 'Inglés Americano' # tag depreciated, see iso 639-2 - when /English/i; 'Inglés' - when /French/i; 'Francés' - when /German/i; 'Alemán' - when /Italian/i; 'Italiano' - when /Spanish/i; 'Español' - when /Brazilian(?: Portuguese)?/i; 'Portugués de Brasil' # tag depreciated, see iso 639-2 - when /Portuguese/i; 'Portugués' - when /Swedish/i; 'Sueco' - when /Danish/i; 'Danés' - when /Finnish/i; 'Finés' - when /Norwegian/i; 'Noruego' - when /Icelandic/i; 'Islandés' - when /Dutch/i; 'Holandés' - when /Estonian/i; 'Estonio' - when /Hungarian/i; 'Húngaro' - when /Polish/i; 'Polaco' - when /Romanian/i; 'Rumano' - when /Russian/i; 'Ruso' - when /Greek/i; 'Griego' - when /Ukranian/i; 'Ucraniano' - when /Turkish/i; 'Turco' - when /Slovenian/i; 'Eslovaco' - when /Croatian/i; 'Croata' - when /Slovak(?:ian)?/i; 'Eslovaco' - when /Czech/i; 'Checo' - when /Bulgarian/i; 'Búlgaro' - else @trans_str - end - end - end - 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 description - 'descrizione' - 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 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 (dal 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 - lang=case @trans_str - when /American/i; 'Inglese USA' # tag depreciated, see iso 639-2 - when /English/i; 'Inglese' - when /French/i; 'Francese' - when /German/i; 'Tedesco' - when /Italian/i; 'Italiano' - when /Spanish/i; 'Spagnolo' - when /Brazilian(?: Portuguese)?/i; 'Portoguese (Brasile)' # tag depreciated, see iso 639-2 - when /Portuguese/i; 'Portoguese' - when /Swedish/i; 'Svedese' - when /Danish/i; 'Danese' - when /Finnish/i; 'Finlandese' - when /Norwegian/i; 'Norvegese' - when /Icelandic/i; 'Islandese' - when /Dutch/i; 'Olandese' - when /Estonian/i; 'Estone' - when /Hungarian/i; 'Ungherese' - when /Polish/i; 'Polacco' - when /Romanian/i; 'Romeno' - when /Russian/i; 'Russo' - when /Greek/i; 'Greco' - when /Ukranian/i; 'Ucraino' - when /Turkish/i; 'Turco' - when /Slovenian/i; 'Sloveno' - when /Croatian/i; 'Croato' - when /Slovak(?:ian)?/i; 'Slovacco' - when /Czech/i; 'Ceco' - when /Bulgarian/i; 'Bulgaro' - else @trans_str - end - end - end - 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 description - 'kuvaus' - 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 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 - lang=case @trans_str - when /American/i; 'Amerikanenglanti' # tag depreciated, see iso 639-2 - when /English/i; 'Englanti' - when /French/i; 'Ranska' - when /German/i; 'Saksa' - when /Italian/i; 'Italia' - when /Spanish/i; 'Espanja' - when /Brazilian(?: Portuguese)?/i; 'Brasilian portugali' # tag depreciated, see iso 639-2 - when /Portuguese/i; 'Portugali' - when /Swedish/i; 'Ruotsi' - when /Danish/i; 'Tanska' - when /Finnish/i; 'Suomi' - when /Norwegian/i; 'Norja' - when /Icelandic/i; 'Islanti' - when /Dutch/i; 'Hollanti' - when /Estonian/i; 'Viro' - when /Hungarian/i; 'Unkari' - when /Polish/i; 'Puola' - when /Romanian/i; 'Romania' - when /Russian/i; 'Venäjä' - when /Greek/i; 'Kreikka' - when /Ukranian/i; 'Ukraina' - when /Turkish/i; 'Turkki' - when /Slovenian/i; 'Slovenia' - when /Croatian/i; 'Kroatia' - when /Slovak(?:ian)?/i; 'Slovakki' - when /Czech/i; 'Tsekki' - when /Bulgarian/i; 'Bulgaria' - else @trans_str - end - end - end - class Porguguese < English - end - class Swedish < English - end - 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 -__END__ -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 diff --git a/lib/sisu/v3/manifest.rb b/lib/sisu/v3/manifest.rb index 98ccddb4..4373ad26 100644 --- a/lib/sisu/v3/manifest.rb +++ b/lib/sisu/v3/manifest.rb @@ -59,7 +59,7 @@ module SiSU_Manifest require_relative 'sysenv' # sysenv.rb include SiSU_Env - require_relative 'i18n' # i18n.rb + require_relative 'prog_text_translation' # prog_text_translation.rb require_relative 'particulars' # particulars.rb include SiSU_Particulars require_relative 'html_minitoc' # html_minitoc.rb @@ -73,7 +73,7 @@ module SiSU_Manifest @opt=opt @particulars=SiSU_Particulars::Combined_singleton.instance.get_all(opt) l=SiSU_Env::Standardise_language.new(@opt.lng).language - @doc_language=l[:l] + @doc_language=l[:n] end def read begin @@ -109,7 +109,7 @@ module SiSU_Manifest @@dg ||=SiSU_Env::Info_env.new.digest.type @dg=@@dg l=SiSU_Env::Standardise_language.new(@md.opt.lng).language - @language=l[:l] + @language=l[:n] @translate=SiSU_Translate::Source.new(@md,@language) @brace_url=SiSU_Viz::Skin.new.url_decoration end @@ -149,7 +149,7 @@ module SiSU_Manifest flv=@env.published_manifests?(@base_path) @manifest[:html] << %{