sisu 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. checksums.yaml +7 -0
  2. data/bin/sisu +367 -0
  3. data/bin/sisugem +367 -0
  4. data/data/sisu/image/arrow_next_red.png +0 -0
  5. data/data/sisu/image/arrow_prev_red.png +0 -0
  6. data/data/sisu/image/arrow_up_red.png +0 -0
  7. data/data/sisu/image/b_bluebell.png +0 -0
  8. data/data/sisu/image/b_doc.png +0 -0
  9. data/data/sisu/image/b_epub.png +0 -0
  10. data/data/sisu/image/b_home.png +0 -0
  11. data/data/sisu/image/b_info.png +0 -0
  12. data/data/sisu/image/b_odf.png +0 -0
  13. data/data/sisu/image/b_pdf.png +0 -0
  14. data/data/sisu/image/b_search.png +0 -0
  15. data/data/sisu/image/b_toc.png +0 -0
  16. data/data/sisu/image/bullet_08.png +0 -0
  17. data/data/sisu/image/bullet_09.png +0 -0
  18. data/data/sisu/image/bullet_10.png +0 -0
  19. data/data/sisu/image/bullet_11.png +0 -0
  20. data/data/sisu/image/bullet_12.png +0 -0
  21. data/data/sisu/image/bullet_doc.png +0 -0
  22. data/data/sisu/image/bullet_red.png +0 -0
  23. data/data/sisu/image/dot_clear.png +0 -0
  24. data/data/sisu/image/dot_white.png +0 -0
  25. data/data/sisu/image/gplv3.png +0 -0
  26. data/data/sisu/image/gplv3_free_software.png +0 -0
  27. data/data/sisu/image/next.png +0 -0
  28. data/data/sisu/image/previous.png +0 -0
  29. data/data/sisu/image/rb7.ico +0 -0
  30. data/data/sisu/image/sisu.png +0 -0
  31. data/data/sisu/image/toctoc.png +0 -0
  32. data/data/sisu/version.yml +5 -0
  33. data/lib/sisu.rb +94 -0
  34. data/lib/sisu/air.rb +80 -0
  35. data/lib/sisu/ao.rb +590 -0
  36. data/lib/sisu/ao_character_check.rb +102 -0
  37. data/lib/sisu/ao_composite.rb +286 -0
  38. data/lib/sisu/ao_doc_objects.rb +565 -0
  39. data/lib/sisu/ao_doc_str.rb +2269 -0
  40. data/lib/sisu/ao_endnotes.rb +136 -0
  41. data/lib/sisu/ao_expand_insertions.rb +514 -0
  42. data/lib/sisu/ao_hash_digest.rb +174 -0
  43. data/lib/sisu/ao_idx.rb +422 -0
  44. data/lib/sisu/ao_images.rb +187 -0
  45. data/lib/sisu/ao_metadata.rb +86 -0
  46. data/lib/sisu/ao_misc_arrange.rb +207 -0
  47. data/lib/sisu/ao_numbering.rb +720 -0
  48. data/lib/sisu/ao_persist.rb +194 -0
  49. data/lib/sisu/ao_references.rb +502 -0
  50. data/lib/sisu/ao_syntax.rb +640 -0
  51. data/lib/sisu/cgi.rb +84 -0
  52. data/lib/sisu/cgi_pgsql.rb +270 -0
  53. data/lib/sisu/cgi_sql_common.rb +986 -0
  54. data/lib/sisu/cgi_sqlite.rb +244 -0
  55. data/lib/sisu/conf.rb +287 -0
  56. data/lib/sisu/constants.rb +388 -0
  57. data/lib/sisu/css.rb +3484 -0
  58. data/lib/sisu/db_columns.rb +1997 -0
  59. data/lib/sisu/db_create.rb +689 -0
  60. data/lib/sisu/db_dbi.rb +90 -0
  61. data/lib/sisu/db_drop.rb +207 -0
  62. data/lib/sisu/db_import.rb +877 -0
  63. data/lib/sisu/db_indexes.rb +146 -0
  64. data/lib/sisu/db_load_tuple.rb +323 -0
  65. data/lib/sisu/db_remove.rb +182 -0
  66. data/lib/sisu/db_select.rb +230 -0
  67. data/lib/sisu/db_sqltxt.rb +173 -0
  68. data/lib/sisu/db_tests.rb +114 -0
  69. data/lib/sisu/dbi.rb +166 -0
  70. data/lib/sisu/dbi_discrete.rb +206 -0
  71. data/lib/sisu/digests.rb +306 -0
  72. data/lib/sisu/dp.rb +1606 -0
  73. data/lib/sisu/dp_identify_markup.rb +161 -0
  74. data/lib/sisu/dp_make.rb +668 -0
  75. data/lib/sisu/embedded.rb +149 -0
  76. data/lib/sisu/errors.rb +84 -0
  77. data/lib/sisu/generic_parts.rb +131 -0
  78. data/lib/sisu/git.rb +277 -0
  79. data/lib/sisu/html.rb +775 -0
  80. data/lib/sisu/html_concordance.rb +391 -0
  81. data/lib/sisu/html_format.rb +1348 -0
  82. data/lib/sisu/html_harvest.rb +109 -0
  83. data/lib/sisu/html_harvest_author_format.rb +111 -0
  84. data/lib/sisu/html_harvest_authors.rb +466 -0
  85. data/lib/sisu/html_harvest_topics.rb +893 -0
  86. data/lib/sisu/html_lite_shared.rb +324 -0
  87. data/lib/sisu/html_manifest.rb +1032 -0
  88. data/lib/sisu/html_minitoc.rb +230 -0
  89. data/lib/sisu/html_parts.rb +437 -0
  90. data/lib/sisu/html_persist.rb +237 -0
  91. data/lib/sisu/html_promo.rb +440 -0
  92. data/lib/sisu/html_scroll.rb +235 -0
  93. data/lib/sisu/html_segments.rb +716 -0
  94. data/lib/sisu/html_shared.rb +62 -0
  95. data/lib/sisu/html_table.rb +64 -0
  96. data/lib/sisu/html_tune.rb +301 -0
  97. data/lib/sisu/hub.rb +277 -0
  98. data/lib/sisu/hub_actions.rb +1122 -0
  99. data/lib/sisu/hub_loop_markup_files.rb +170 -0
  100. data/lib/sisu/hub_options.rb +1695 -0
  101. data/lib/sisu/i18n.rb +702 -0
  102. data/lib/sisu/manpage.rb +377 -0
  103. data/lib/sisu/manpage_format.rb +85 -0
  104. data/lib/sisu/object_munge.rb +307 -0
  105. data/lib/sisu/prog_text_translation.rb +1702 -0
  106. data/lib/sisu/qrcode.rb +754 -0
  107. data/lib/sisu/relaxng.rb +1153 -0
  108. data/lib/sisu/remote.rb +246 -0
  109. data/lib/sisu/rexml.rb +148 -0
  110. data/lib/sisu/se.rb +158 -0
  111. data/lib/sisu/se_cleanoutput.rb +145 -0
  112. data/lib/sisu/se_clear.rb +105 -0
  113. data/lib/sisu/se_createsite.rb +273 -0
  114. data/lib/sisu/se_css.rb +221 -0
  115. data/lib/sisu/se_date.rb +92 -0
  116. data/lib/sisu/se_db.rb +214 -0
  117. data/lib/sisu/se_envcall.rb +326 -0
  118. data/lib/sisu/se_file_op.rb +2758 -0
  119. data/lib/sisu/se_filemap.rb +247 -0
  120. data/lib/sisu/se_get_init.rb +238 -0
  121. data/lib/sisu/se_hub_particulars.rb +234 -0
  122. data/lib/sisu/se_info_env.rb +2179 -0
  123. data/lib/sisu/se_info_port.rb +70 -0
  124. data/lib/sisu/se_info_system.rb +202 -0
  125. data/lib/sisu/se_load.rb +108 -0
  126. data/lib/sisu/se_processing.rb +659 -0
  127. data/lib/sisu/se_programs.rb +394 -0
  128. data/lib/sisu/se_remotes.rb +553 -0
  129. data/lib/sisu/se_standardise_lang.rb +176 -0
  130. data/lib/sisu/se_version.rb +174 -0
  131. data/lib/sisu/shared_images.rb +137 -0
  132. data/lib/sisu/shared_markup_alt.rb +336 -0
  133. data/lib/sisu/shared_metadata.rb +1361 -0
  134. data/lib/sisu/shared_sem.rb +156 -0
  135. data/lib/sisu/sisu_thor_lib.rb +407 -0
  136. data/lib/sisu/sitemaps.rb +224 -0
  137. data/lib/sisu/src_kdissert_share.rb +102 -0
  138. data/lib/sisu/src_po4a_share.rb +309 -0
  139. data/lib/sisu/src_po4a_shelf.rb +1217 -0
  140. data/lib/sisu/src_po4a_shelf_set.rb +297 -0
  141. data/lib/sisu/src_po4a_sst_ao_sst.rb +893 -0
  142. data/lib/sisu/src_po4a_sst_ao_sst_set.rb +284 -0
  143. data/lib/sisu/src_po4a_sstm.rb +135 -0
  144. data/lib/sisu/src_shared.rb +347 -0
  145. data/lib/sisu/src_sisupod_make.rb +171 -0
  146. data/lib/sisu/src_sisupod_sstm.rb +109 -0
  147. data/lib/sisu/sst_convert_markup.rb +323 -0
  148. data/lib/sisu/sst_do_inline_footnotes.rb +440 -0
  149. data/lib/sisu/sst_from_xml.rb +178 -0
  150. data/lib/sisu/sst_identify_markup.rb +482 -0
  151. data/lib/sisu/sst_to_s_xml_sax.rb +471 -0
  152. data/lib/sisu/termsheet.rb +163 -0
  153. data/lib/sisu/texinfo.rb +430 -0
  154. data/lib/sisu/texinfo_format.rb +541 -0
  155. data/lib/sisu/texpdf.rb +1162 -0
  156. data/lib/sisu/texpdf_format.rb +1689 -0
  157. data/lib/sisu/texpdf_parts.rb +235 -0
  158. data/lib/sisu/txt_asciidoc.rb +354 -0
  159. data/lib/sisu/txt_asciidoc_decorate.rb +207 -0
  160. data/lib/sisu/txt_markdown.rb +389 -0
  161. data/lib/sisu/txt_markdown_decorate.rb +207 -0
  162. data/lib/sisu/txt_orgmode.rb +376 -0
  163. data/lib/sisu/txt_orgmode_decorate.rb +186 -0
  164. data/lib/sisu/txt_output.rb +86 -0
  165. data/lib/sisu/txt_plain.rb +410 -0
  166. data/lib/sisu/txt_plain_decorate.rb +189 -0
  167. data/lib/sisu/txt_read.rb +109 -0
  168. data/lib/sisu/txt_rst.rb +371 -0
  169. data/lib/sisu/txt_rst_decorate.rb +186 -0
  170. data/lib/sisu/txt_shared.rb +241 -0
  171. data/lib/sisu/txt_textile.rb +367 -0
  172. data/lib/sisu/txt_textile_decorate.rb +186 -0
  173. data/lib/sisu/update.rb +141 -0
  174. data/lib/sisu/urls.rb +696 -0
  175. data/lib/sisu/utils.rb +232 -0
  176. data/lib/sisu/utils_composite.rb +115 -0
  177. data/lib/sisu/utils_response.rb +114 -0
  178. data/lib/sisu/utils_screen_text_color.rb +472 -0
  179. data/lib/sisu/utils_spell.rb +99 -0
  180. data/lib/sisu/webrick.rb +191 -0
  181. data/lib/sisu/wikispeak.rb +375 -0
  182. data/lib/sisu/xhtml.rb +472 -0
  183. data/lib/sisu/xhtml_epub2.rb +890 -0
  184. data/lib/sisu/xhtml_epub2_concordance.rb +322 -0
  185. data/lib/sisu/xhtml_epub2_format.rb +2272 -0
  186. data/lib/sisu/xhtml_epub2_persist.rb +278 -0
  187. data/lib/sisu/xhtml_epub2_segments.rb +599 -0
  188. data/lib/sisu/xhtml_epub2_tune.rb +330 -0
  189. data/lib/sisu/xhtml_parts.rb +183 -0
  190. data/lib/sisu/xhtml_shared.rb +62 -0
  191. data/lib/sisu/xhtml_table.rb +97 -0
  192. data/lib/sisu/xml_docbook5.rb +376 -0
  193. data/lib/sisu/xml_dom.rb +624 -0
  194. data/lib/sisu/xml_fictionbook2.rb +389 -0
  195. data/lib/sisu/xml_format.rb +865 -0
  196. data/lib/sisu/xml_md_oai_pmh_dc.rb +229 -0
  197. data/lib/sisu/xml_odf_odt.rb +887 -0
  198. data/lib/sisu/xml_odf_odt_format.rb +674 -0
  199. data/lib/sisu/xml_parts.rb +191 -0
  200. data/lib/sisu/xml_persist.rb +126 -0
  201. data/lib/sisu/xml_sax.rb +521 -0
  202. data/lib/sisu/xml_scaffold_structure_collapsed.rb +198 -0
  203. data/lib/sisu/xml_scaffold_structure_sisu.rb +201 -0
  204. data/lib/sisu/xml_shared.rb +665 -0
  205. data/lib/sisu/xml_tables.rb +261 -0
  206. data/lib/sisu/zap.rb +90 -0
  207. metadata +251 -0
@@ -0,0 +1,307 @@
1
+ # encoding: utf-8
2
+ =begin
3
+
4
+ * Name: SiSU
5
+
6
+ ** Description: documents, structuring, processing, publishing, search
7
+ *** object munge
8
+
9
+ ** Author: Ralph Amissah
10
+ <ralph@amissah.com>
11
+ <ralph.amissah@gmail.com>
12
+
13
+ ** Copyright: (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
14
+ 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Ralph Amissah,
15
+ All Rights Reserved.
16
+
17
+ ** License: GPL 3 or later:
18
+
19
+ SiSU, a framework for document structuring, publishing and search
20
+
21
+ Copyright (C) Ralph Amissah
22
+
23
+ This program is free software: you can redistribute it and/or modify it
24
+ under the terms of the GNU General Public License as published by the Free
25
+ Software Foundation, either version 3 of the License, or (at your option)
26
+ any later version.
27
+
28
+ This program is distributed in the hope that it will be useful, but WITHOUT
29
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
30
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
31
+ more details.
32
+
33
+ You should have received a copy of the GNU General Public License along with
34
+ this program. If not, see <http://www.gnu.org/licenses/>.
35
+
36
+ If you have Internet connection, the latest version of the GPL should be
37
+ available at these locations:
38
+ <http://www.fsf.org/licensing/licenses/gpl.html>
39
+ <http://www.gnu.org/licenses/gpl.html>
40
+
41
+ <http://www.sisudoc.org/sisu/en/manifest/gpl.fsf.html>
42
+
43
+ ** SiSU uses:
44
+ * Standard SiSU markup syntax,
45
+ * Standard SiSU meta-markup syntax, and the
46
+ * Standard SiSU object citation numbering and system
47
+
48
+ ** Hompages:
49
+ <http://www.jus.uio.no/sisu>
50
+ <http://www.sisudoc.org>
51
+
52
+ ** Git
53
+ <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=summary>
54
+ <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob;f=lib/sisu/html_parts.rb;hb=HEAD>
55
+
56
+ =end
57
+ module SiSU_Object_Munge
58
+ def i_src_o_strip_markup(txtobj)
59
+ txtobj=txtobj.
60
+ gsub(/#{Mx[:srcrgx_bold_o]}(.+?)#{Mx[:srcrgx_bold_c]}/m,'\1').
61
+ gsub(/#{Mx[:srcrgx_italics_o]}(.+?)#{Mx[:srcrgx_italics_c]}/m,'\1').
62
+ gsub(/#{Mx[:srcrgx_underscore_o]}(.+?)#{Mx[:srcrgx_underscore_c]}/m,'\1').
63
+ gsub(/#{Mx[:srcrgx_cite_o]}(.+?)#{Mx[:srcrgx_cite_c]}/m,'\1').
64
+ gsub(/#{Mx[:srcrgx_insert_o]}(.+?)#{Mx[:srcrgx_insert_c]}/m,'\1').
65
+ gsub(/#{Mx[:srcrgx_strike_o]}(.+?)#{Mx[:srcrgx_strike_c]}/m,'\1').
66
+ gsub(/#{Mx[:srcrgx_superscript_o]}(\d+)#{Mx[:srcrgx_superscript_c]}/m,'[\1]').
67
+ gsub(/#{Mx[:srcrgx_superscript_o]}(.+?)#{Mx[:srcrgx_superscript_c]}/m,'\1').
68
+ gsub(/#{Mx[:srcrgx_subscript_o]}(.+?)#{Mx[:srcrgx_subscript_c]}/m,'\1').
69
+ gsub(/#{Mx[:srcrgx_hilite_o]}(.+?)#{Mx[:srcrgx_hilite_c]}/m,'\1').
70
+ gsub(/#{Mx[:gl_o]}#(?:126|152)#{Mx[:gl_c]}/i,'~').
71
+ gsub(/#{Mx[:en_a_o]}([\d*+]+)\s+(?:.+?)#{Mx[:en_a_c]}/m,''). # endnote removed
72
+ gsub(/#{Mx[:en_b_o]}([\d*+]+)\s+(?:.+?)#{Mx[:en_b_c]}/m,''). # endnote removed
73
+ gsub(/(?:#{Mx[:nbsp]})+/,' ').
74
+ gsub(/(?:#{Mx[:br_nl]})+/,"\n").
75
+ gsub(/(?:#{Mx[:br_paragraph]})+/,"\n").
76
+ gsub(/(?:#{Mx[:br_line]})+/,"\n").
77
+ gsub(/#{Mx[:gl_o]}(?:#lt|#060)#{Mx[:gl_c]}/,'<').
78
+ gsub(/#{Mx[:gl_o]}(?:#gt|#062)#{Mx[:gl_c]}/,'>').
79
+ gsub(/#{Mx[:gl_o]}#(?:038|amp)#{Mx[:gl_c]}/,'&').
80
+ gsub(/#{Mx[:gl_o]}#033#{Mx[:gl_c]}/,'!').
81
+ gsub(/#{Mx[:gl_o]}#035#{Mx[:gl_c]}/,'#').
82
+ gsub(/#{Mx[:gl_o]}#042#{Mx[:gl_c]}/,'*').
83
+ gsub(/#{Mx[:gl_o]}#045#{Mx[:gl_c]}/,'-').
84
+ gsub(/#{Mx[:gl_o]}#047#{Mx[:gl_c]}/,'/').
85
+ gsub(/#{Mx[:gl_o]}#095#{Mx[:gl_c]}/,'_').
86
+ gsub(/#{Mx[:gl_o]}#123#{Mx[:gl_c]}/,'{').
87
+ gsub(/#{Mx[:gl_o]}#125#{Mx[:gl_c]}/,'}').
88
+ gsub(/#{Mx[:gl_o]}#126#{Mx[:gl_c]}/,'~').
89
+ gsub(/#{Mx[:gl_o]}#169#{Mx[:gl_c]}/,'©').
90
+ gsub(/[ ][ ]s+/,' ').
91
+ strip
92
+ if txtobj =~/Reading this/
93
+ puts txtobj
94
+ if txtobj =~ /#{Mx[:srcrgx_italics_o]}(.+?)#{Mx[:srcrgx_italics_c]}/
95
+ puts __LINE__
96
+ puts Mx[:srcrgx_italics_o]
97
+ puts txtobj
98
+ end
99
+ end
100
+ ; txtobj
101
+ end
102
+ def i_ao_o_strip_markup(txtobj)
103
+ txtobj=txtobj.gsub(/#{Mx[:fa_bold_o]}(.+?)#{Mx[:fa_bold_c]}/,'\1').
104
+ gsub(/#{Mx[:fa_italics_o]}(.+?)#{Mx[:fa_italics_c]}/,'\1').
105
+ gsub(/#{Mx[:fa_underscore_o]}(.+?)#{Mx[:fa_underscore_c]}/,'\1').
106
+ gsub(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,'\1').
107
+ gsub(/#{Mx[:fa_insert_o]}(.+?)#{Mx[:fa_insert_c]}/,'\1').
108
+ gsub(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'\1').
109
+ gsub(/#{Mx[:fa_superscript_o]}(\d+)#{Mx[:fa_superscript_c]}/,'[\1]').
110
+ gsub(/#{Mx[:fa_superscript_o]}(.+?)#{Mx[:fa_superscript_c]}/,'\1').
111
+ gsub(/#{Mx[:fa_subscript_o]}(.+?)#{Mx[:fa_subscript_c]}/,'\1').
112
+ gsub(/#{Mx[:fa_hilite_o]}(.+?)#{Mx[:fa_hilite_c]}/,'\1').
113
+ gsub(/#{Mx[:gl_o]}#(?:126|152)#{Mx[:gl_c]}/i,'~').
114
+ gsub(/#{Mx[:en_a_o]}([\d*+]+)\s+(?:.+?)#{Mx[:en_a_c]}/,''). # endnote removed
115
+ gsub(/#{Mx[:en_b_o]}([\d*+]+)\s+(?:.+?)#{Mx[:en_b_c]}/,''). # endnote removed
116
+ gsub(/(?:#{Mx[:nbsp]})+/,' ').
117
+ gsub(/(?:#{Mx[:br_nl]})+/,"\n").
118
+ gsub(/(?:#{Mx[:br_paragraph]})+/,"\n").
119
+ gsub(/(?:#{Mx[:br_line]})+/,"\n").
120
+ gsub(/#{Mx[:gl_o]}(?:#lt|#060)#{Mx[:gl_c]}/,'<').
121
+ gsub(/#{Mx[:gl_o]}(?:#gt|#062)#{Mx[:gl_c]}/,'>').
122
+ gsub(/#{Mx[:gl_o]}#(?:038|amp)#{Mx[:gl_c]}/,'&').
123
+ gsub(/#{Mx[:gl_o]}#033#{Mx[:gl_c]}/,'!').
124
+ gsub(/#{Mx[:gl_o]}#035#{Mx[:gl_c]}/,'#').
125
+ gsub(/#{Mx[:gl_o]}#042#{Mx[:gl_c]}/,'*').
126
+ gsub(/#{Mx[:gl_o]}#045#{Mx[:gl_c]}/,'-').
127
+ gsub(/#{Mx[:gl_o]}#047#{Mx[:gl_c]}/,'/').
128
+ gsub(/#{Mx[:gl_o]}#095#{Mx[:gl_c]}/,'_').
129
+ gsub(/#{Mx[:gl_o]}#123#{Mx[:gl_c]}/,'{').
130
+ gsub(/#{Mx[:gl_o]}#125#{Mx[:gl_c]}/,'}').
131
+ gsub(/#{Mx[:gl_o]}#126#{Mx[:gl_c]}/,'~').
132
+ gsub(/#{Mx[:gl_o]}#169#{Mx[:gl_c]}/,'©').
133
+ gsub(/[ ][ ]s+/,' ').
134
+ strip
135
+ end
136
+ def i_ao_o_src_markup_restore(txtobj)
137
+ @txtobj=txtobj
138
+ def textface_marks
139
+ @txtobj.gsub(/#{Mx[:fa_bold_o]}(.+?)#{Mx[:fa_bold_c]}/,'*{\1}*').
140
+ gsub(/#{Mx[:fa_italics_o]}(.+?)#{Mx[:fa_italics_c]}/,'/{\1}/').
141
+ gsub(/#{Mx[:fa_underscore_o]}(.+?)#{Mx[:fa_underscore_c]}/,'_{\1}_').
142
+ gsub(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,'"{\1}"').
143
+ gsub(/#{Mx[:fa_insert_o]}(.+?)#{Mx[:fa_insert_c]}/,'+{\1}+').
144
+ gsub(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'-{\1}-').
145
+ gsub(/#{Mx[:fa_superscript_o]}(\d+)#{Mx[:fa_superscript_c]}/,'^{[\1]}^').
146
+ gsub(/#{Mx[:fa_superscript_o]}(.+?)#{Mx[:fa_superscript_c]}/,'^{\1}^').
147
+ gsub(/#{Mx[:fa_subscript_o]}(.+?)#{Mx[:fa_subscript_c]}/,',{\1},').
148
+ gsub(/#{Mx[:fa_hilite_o]}(.+?)#{Mx[:fa_hilite_c]}/,'\1').
149
+ gsub(/#{Mx[:gl_o]}#(?:126|152)#{Mx[:gl_c]}/i,'~').
150
+ gsub(/#{Mx[:en_a_o]}([\d*+]+)\s+(?:.+?)#{Mx[:en_a_c]}/,'~{\1 \2}~').
151
+ gsub(/#{Mx[:en_b_o]}([\d*+]+)\s+(?:.+?)#{Mx[:en_b_c]}/,''). # endnote removed
152
+ gsub(/(?:#{Mx[:nbsp]})+/,' ').
153
+ gsub(/(?:#{Mx[:br_nl]})+/,"\n").
154
+ gsub(/(?:#{Mx[:br_paragraph]})+/,"\n").
155
+ gsub(/(?:#{Mx[:br_line]})+/,"\n").
156
+ gsub(/#{Mx[:gl_o]}(?:#lt|#060)#{Mx[:gl_c]}/,'<').
157
+ gsub(/#{Mx[:gl_o]}(?:#gt|#062)#{Mx[:gl_c]}/,'>').
158
+ gsub(/#{Mx[:gl_o]}#(?:038|amp)#{Mx[:gl_c]}/,'&').
159
+ gsub(/#{Mx[:gl_o]}#033#{Mx[:gl_c]}/,'!').
160
+ gsub(/#{Mx[:gl_o]}#035#{Mx[:gl_c]}/,'#').
161
+ gsub(/#{Mx[:gl_o]}#042#{Mx[:gl_c]}/,'*').
162
+ gsub(/#{Mx[:gl_o]}#045#{Mx[:gl_c]}/,'-').
163
+ gsub(/#{Mx[:gl_o]}#047#{Mx[:gl_c]}/,'/').
164
+ gsub(/#{Mx[:gl_o]}#095#{Mx[:gl_c]}/,'_').
165
+ gsub(/#{Mx[:gl_o]}#123#{Mx[:gl_c]}/,'{').
166
+ gsub(/#{Mx[:gl_o]}#125#{Mx[:gl_c]}/,'}').
167
+ gsub(/#{Mx[:gl_o]}#126#{Mx[:gl_c]}/,'~').
168
+ gsub(/#{Mx[:gl_o]}#169#{Mx[:gl_c]}/,'©').
169
+ gsub(/[ ][ ]s+/,' ').
170
+ strip
171
+ end
172
+ def object_marks
173
+ @txtobj
174
+ end
175
+ self
176
+ end
177
+ def clean_text(txtobj,markup=:ao)
178
+ if txtobj.class==String
179
+ txtobj=if markup ==:ao
180
+ i_ao_o_strip_markup(txtobj)
181
+ elsif markup ==:src
182
+ i_src_o_strip_markup(txtobj)
183
+ else p __FILE__; p __LINE__
184
+ end
185
+ elsif txtobj.class.inspect=~/^SiSU_AO_DocumentStructure::/
186
+ txtobj.obj=i_ao_o_strip_markup(txtobj.obj)
187
+ else p 'error'
188
+ end
189
+ txtobj
190
+ end
191
+ def footnotes_inline(txtobj)
192
+ end
193
+ def footnotes_ref_and_note(txtobj)
194
+ end
195
+ def src_markup(txtobj)
196
+ txtobj
197
+ end
198
+ def extract_endnotes(doc_obj_txt,endnotes_) #% used for extraction of endnotes from paragraphs
199
+ if endnotes_ ==:separate
200
+ notes_a=doc_obj_txt.scan(/#{Mx[:en_a_o]}([\d]+\s+.+?)#{Mx[:en_a_c]}/)
201
+ ##notes_a=doc_obj_txt.scan(/#{Mx[:en_a_o]}([\d*+]+\s+.+?)#{Mx[:en_a_c]}/)
202
+ #notes_b=doc_obj_txt.scan(/#{Mx[:en_b_o]}([\d*+]+\s+.+?)#{Mx[:en_b_c]}/)
203
+ n=[]
204
+ notes_a.flatten.each do |note| #high cost to deal with <br> appropriately within plaintext, consider
205
+ note=note.dup.to_s
206
+ note=note.gsub(/^([\d]+)\s+/,'^~\1 ').
207
+ gsub(/#{Mx[:br_line]}|#{Mx[:br_nl]}/,
208
+ ' \\\\\\ ')
209
+ n << note
210
+ end
211
+ notes_a=n.flatten
212
+ doc_obj_txt=doc_obj_txt.
213
+ gsub(/#{Mx[:en_a_o]}([\d]+)\s+(?:.+?)#{Mx[:en_a_c]}/,'~^') # endnote marker marked up
214
+ else
215
+ doc_obj_txt=doc_obj_txt.
216
+ gsub(/#{Mx[:en_b_o]}[\d]+\s+(.+?)#{Mx[:en_b_c]}/,
217
+ '~[ \1 ]~'). # inline endnote with marker marked up
218
+ gsub(/#{Mx[:en_a_o]}([*+]+)\s+(.+?)#{Mx[:en_a_c]}/,
219
+ '~{\1 \2 }~'). # inline endnote with marker marked up
220
+ gsub(/#{Mx[:en_b_o]}([*+]+)\s+(.+?)#{Mx[:en_b_c]}/,
221
+ '~[\1 \2 ]~') # inline endnote with marker marked up
222
+ end
223
+ [doc_obj_txt,notes_a]
224
+ end
225
+ def objects #def i_ao_o_src_markup_restore(txtobj)
226
+ def code_(dob)
227
+ if dob.is==:code
228
+ dob.obj=dob.obj.gsub(/(^|[^}])_([<>])/m,'\1\2'). # _> _<
229
+ gsub(/(^|[^}])_([<>])/m,'\1\2') # _<_<
230
+ end
231
+ dob
232
+ end
233
+ def block_(dob)
234
+ dob.obj=if dob.of==:block # watch
235
+ dob.obj.gsub(/#{Mx[:gl_o]}●#{Mx[:gl_c]}/,"* ").
236
+ gsub(/#{Mx[:br_line]}|#{Mx[:br_nl]}/,"\n")
237
+ else dob.obj.gsub(/#{Mx[:br_line]}|#{Mx[:br_nl]}/,"\n\n")
238
+ end
239
+ dob
240
+ end
241
+ def textface_marks_po4a(dob,endnotes_=:inline)
242
+ notes=''
243
+ dob.obj=dob.obj.
244
+ gsub(/#{Mx[:fa_bold_o]}(.+?)#{Mx[:fa_bold_c]}/,
245
+ Mx[:src_bold_o] + '\1' + Mx[:src_bold_c]).
246
+ gsub(/#{Mx[:fa_italics_o]}(.+?)#{Mx[:fa_italics_c]}/,
247
+ Mx[:src_italics_o] + '\1' + Mx[:src_italics_c]).
248
+ gsub(/#{Mx[:fa_underscore_o]}(.+?)#{Mx[:fa_underscore_c]}/,
249
+ Mx[:src_underscore_o] + '\1' + Mx[:src_underscore_c]).
250
+ gsub(/#{Mx[:fa_subscript_o]}(.+?)#{Mx[:fa_subscript_c]}/,
251
+ Mx[:src_subscript_o] + '\1' + Mx[:src_subscript_c]).
252
+ gsub(/#{Mx[:fa_superscript_o]}(.+?)#{Mx[:fa_superscript_c]}/,
253
+ Mx[:src_superscript_o] + '\1' + Mx[:src_superscript_c]).
254
+ gsub(/#{Mx[:fa_insert_o]}(.+?)#{Mx[:fa_insert_c]}/,
255
+ Mx[:src_insert_o] + '\1' + Mx[:src_insert_c]).
256
+ gsub(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,
257
+ Mx[:src_cite_o] + '\1' + Mx[:src_cite_c]).
258
+ gsub(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,
259
+ Mx[:src_strike_o] + '\1' + Mx[:src_strike_c]).
260
+ gsub(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/,
261
+ Mx[:src_monospace_o] + '\1' + Mx[:src_monospace_c])
262
+ unless dob.is==:code
263
+ dob.obj=dob.obj.
264
+ gsub(/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}#{Mx[:rel_o]}\S+?#{Mx[:rel_c]}/,'\1').
265
+ gsub(/#{Mx[:url_o]}_(\S+?)#{Mx[:url_c]}/,'\1').
266
+ gsub(/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}#{Mx[:url_o]}(\S+?)#{Mx[:url_c]}/,
267
+ '\1 [link: <\2>]').
268
+ gsub(/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}image/,
269
+ '\1 [link: local image]').
270
+ gsub(/#{Mx[:url_o]}(\S+?)#{Mx[:url_c]}/,'\1')
271
+ dob.obj,notes=extract_endnotes(dob.obj,endnotes_)
272
+ dob.obj=dob.obj.
273
+ gsub(/#{Mx[:gl_o]}(?:#lt|#060)#{Mx[:gl_c]}/,'<').
274
+ gsub(/#{Mx[:gl_o]}(?:#gt|#062)#{Mx[:gl_c]}/,'>').
275
+ gsub(/#{Mx[:gl_o]}#(?:038|amp)#{Mx[:gl_c]}/,'&').
276
+ gsub(/#{Mx[:gl_o]}#033#{Mx[:gl_c]}/,'!').
277
+ gsub(/#{Mx[:gl_o]}#035#{Mx[:gl_c]}/,'#').
278
+ gsub(/#{Mx[:gl_o]}#042#{Mx[:gl_c]}/,'*').
279
+ gsub(/#{Mx[:gl_o]}#045#{Mx[:gl_c]}/,'-').
280
+ gsub(/#{Mx[:gl_o]}#047#{Mx[:gl_c]}/,'/').
281
+ gsub(/#{Mx[:gl_o]}#095#{Mx[:gl_c]}/,'_').
282
+ gsub(/#{Mx[:gl_o]}#123#{Mx[:gl_c]}/,'{').
283
+ gsub(/#{Mx[:gl_o]}#125#{Mx[:gl_c]}/,'}').
284
+ gsub(/#{Mx[:gl_o]}#126#{Mx[:gl_c]}/,'~').
285
+ gsub(/#{Mx[:gl_o]}#169#{Mx[:gl_c]}/,'©')
286
+ end
287
+ dob=block_(dob)
288
+ dob=code_(dob)
289
+ dob.obj=dob.obj.gsub(/#{Mx[:br_page]}\s*|#{Mx[:br_page_new]}/,''). # remove page breaks
290
+ gsub(/#{Mx[:url_o]}_(\S+?)#{Mx[:url_c]}/,'\1').
291
+ gsub(/#{Mx[:mk_o]}:name#(\S+?)#{Mx[:mk_c]}/,''). # remove name links
292
+ gsub(/&nbsp;|#{Mx[:nbsp]}/,' '). # decide on
293
+ gsub(/(?:^|[^_\\])#{Mx[:lnk_o]}(\S+?\.(?:png|jpg|gif)) .+?#{Mx[:lnk_c]}#{Mx[:url_o]}\S+?#{Mx[:url_c]}/,
294
+ ' [ \1 ]'). #"[ #{dir.url.images_local}\/\\1 ]")
295
+ gsub(/(?:^|[^_\\])#{Mx[:lnk_o]}(\S+?\.(?:png|jpg|gif)) .+?#{Mx[:lnk_c]}image/,
296
+ ' [ \1 ]'). #"[ #{dir.url.images_local}\/\\1 ]")
297
+ gsub(/(?:^|[^_\\])\{\s*\S+?\.(?:png|jpg|gif)\s+.+?"(.*?)"\s*\}\S+/,
298
+ '[image: "\1"]')
299
+ [dob,notes]
300
+ end
301
+ def object_marks
302
+ @txtobj
303
+ end
304
+ self
305
+ end
306
+ end
307
+ __END__
@@ -0,0 +1,1702 @@
1
+ # encoding: utf-8
2
+ =begin
3
+
4
+ * Name: SiSU
5
+
6
+ ** Description: documents, structuring, processing, publishing, search
7
+ *** internationalisation
8
+
9
+ ** Author: Ralph Amissah
10
+ <ralph@amissah.com>
11
+ <ralph.amissah@gmail.com>
12
+
13
+ ** Copyright: (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
14
+ 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Ralph Amissah,
15
+ All Rights Reserved.
16
+
17
+ ** License: GPL 3 or later:
18
+
19
+ SiSU, a framework for document structuring, publishing and search
20
+
21
+ Copyright (C) Ralph Amissah
22
+
23
+ This program is free software: you can redistribute it and/or modify it
24
+ under the terms of the GNU General Public License as published by the Free
25
+ Software Foundation, either version 3 of the License, or (at your option)
26
+ any later version.
27
+
28
+ This program is distributed in the hope that it will be useful, but WITHOUT
29
+ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
30
+ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
31
+ more details.
32
+
33
+ You should have received a copy of the GNU General Public License along with
34
+ this program. If not, see <http://www.gnu.org/licenses/>.
35
+
36
+ If you have Internet connection, the latest version of the GPL should be
37
+ available at these locations:
38
+ <http://www.fsf.org/licensing/licenses/gpl.html>
39
+ <http://www.gnu.org/licenses/gpl.html>
40
+
41
+ <http://www.sisudoc.org/sisu/en/manifest/gpl.fsf.html>
42
+
43
+ ** SiSU uses:
44
+ * Standard SiSU markup syntax,
45
+ * Standard SiSU meta-markup syntax, and the
46
+ * Standard SiSU object citation numbering and system
47
+
48
+ ** Hompages:
49
+ <http://www.jus.uio.no/sisu>
50
+ <http://www.sisudoc.org>
51
+
52
+ ** Git
53
+ <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=summary>
54
+ <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob;f=lib/sisu/prog_text_translation.rb;hb=HEAD>
55
+
56
+ =end
57
+ module SiSU_Translate
58
+ require_relative 'se' # se.rb
59
+ include SiSU_Env; include SiSU_Param
60
+ class Source
61
+ def initialize(md,doc_lang,trans_str='')
62
+ @md,@doc_lang,@trans_str=md,doc_lang,trans_str
63
+ @lang_class=case @doc_lang
64
+ when /American/i then English.new(md,doc_lang,trans_str) # tag depreciated, see iso 639-2
65
+ when /English/i then English.new(md,doc_lang,trans_str)
66
+ when /French/i then French.new(md,doc_lang,trans_str)
67
+ when /German/i then German.new(md,doc_lang,trans_str)
68
+ when /Italian/i then Italian.new(md,doc_lang,trans_str)
69
+ when /Spanish/i then Spanish.new(md,doc_lang,trans_str)
70
+ when /Portuguese Brazil|Brazilian(?: Portuguese)?/i
71
+ Portuguese.new(md,doc_lang,trans_str) # tag depreciated, see iso 639-2
72
+ when /Portuguese/i then Portuguese.new(md,doc_lang,trans_str)
73
+ when /Swedish/i then Swedish.new(md,doc_lang,trans_str)
74
+ when /Danish/i then Danish.new(md,doc_lang,trans_str)
75
+ when /Finnish/i then Finnish.new(md,doc_lang,trans_str)
76
+ when /Norwegian/i then Norwegian.new(md,doc_lang,trans_str)
77
+ when /Icelandic/i then Icelandic.new(md,doc_lang,trans_str)
78
+ when /Dutch/i then Dutch.new(md,doc_lang,trans_str)
79
+ when /Estonian/i then Estonian.new(md,doc_lang,trans_str)
80
+ when /Hungarian/i then Hungarian.new(md,doc_lang,trans_str)
81
+ when /Polish/i then Polish.new(md,doc_lang,trans_str)
82
+ when /Romanian/i then Romanian.new(md,doc_lang,trans_str)
83
+ when /Russian/i then Russian.new(md,doc_lang,trans_str)
84
+ when /Greek/i then Greek.new(md,doc_lang,trans_str)
85
+ when /Ukranian/i then Ukranian.new(md,doc_lang,trans_str)
86
+ when /Turkish/i then Turkish.new(md,doc_lang,trans_str)
87
+ when /Slovenian/i then Slovenian.new(md,doc_lang,trans_str)
88
+ when /Croatian/i then Croatian.new(md,doc_lang,trans_str)
89
+ when /Slovak(?:ian)?/i then Slovak.new(md,doc_lang,trans_str)
90
+ when /Czech/i then Czech.new(md,doc_lang,trans_str)
91
+ when /Bulgarian/i then Bulgarian.new(md,doc_lang,trans_str)
92
+ else English.new(md,doc_lang,trans_str)
93
+ end
94
+ end
95
+ def filename
96
+ @lang_class.filename
97
+ end
98
+ def metadata
99
+ @lang_class.metadata
100
+ end
101
+ def filetype_description
102
+ @lang_class.filetype_description
103
+ end
104
+ def file_size
105
+ @lang_class.file_size
106
+ end
107
+ def sourcefile
108
+ @lang_class.sourcefile
109
+ end
110
+ def sourcefile_digest
111
+ @lang_class.sourcefile_digest
112
+ end
113
+ def full_title #dc
114
+ @lang_class.full_title
115
+ end
116
+ def title
117
+ @lang_class.title
118
+ end
119
+ def subtitle
120
+ @lang_class.subtitle
121
+ end
122
+ def author
123
+ @lang_class.author
124
+ end
125
+ def contributor
126
+ @lang_class.contributor
127
+ end
128
+ def translator
129
+ @lang_class.translator
130
+ end
131
+ def illustrator
132
+ @lang_class.illustrator
133
+ end
134
+ def publisher
135
+ @lang_class.publisher
136
+ end
137
+ def prepared_by
138
+ @lang_class.prepared_by
139
+ end
140
+ def digitized_by
141
+ @lang_class.digitized_by
142
+ end
143
+ def contents
144
+ @lang_class.contents
145
+ end
146
+ def subject
147
+ @lang_class.subject
148
+ end
149
+ def description #dc (watch)
150
+ @lang_class.description
151
+ end
152
+ def abstract
153
+ @lang_class.abstract
154
+ end
155
+ def type
156
+ @lang_class.type
157
+ end
158
+ def rights
159
+ @lang_class.rights
160
+ end
161
+ def date
162
+ @lang_class.date
163
+ end
164
+ def date_created
165
+ @lang_class.date_created
166
+ end
167
+ def date_available
168
+ @lang_class.date_available
169
+ end
170
+ def date_valid
171
+ @lang_class.date_valid
172
+ end
173
+ def date_modified
174
+ @lang_class.date_modified
175
+ end
176
+ def date_issued
177
+ @lang_class.date_issued
178
+ end
179
+ def language
180
+ @lang_class.language
181
+ end
182
+ def language_original
183
+ @lang_class.language_original
184
+ end
185
+ def format
186
+ @lang_class.format
187
+ end
188
+ def identifier
189
+ @lang_class.identifier
190
+ end
191
+ def source
192
+ @lang_class.source
193
+ end
194
+ def relation
195
+ @lang_class.relation
196
+ end
197
+ def coverage
198
+ @lang_class.coverage
199
+ end
200
+ def keywords
201
+ @lang_class.keywords
202
+ end
203
+ def comments
204
+ @lang_class.comments
205
+ end
206
+ def cls_loc
207
+ @lang_class.cls_loc
208
+ end
209
+ def cls_dewey
210
+ @lang_class.cls_dewey
211
+ end
212
+ def cls_oclc
213
+ @lang_class.cls_oclc
214
+ end
215
+ def cls_gutenberg
216
+ @lang_class.cls_gutenberg
217
+ end
218
+ def cls_isbn
219
+ @lang_class.cls_isbn
220
+ end
221
+ def prefix_a
222
+ @lang_class.prefix_a
223
+ end
224
+ def prefix_b
225
+ @lang_class.prefix_b
226
+ end
227
+ def topic_register
228
+ @lang_class.topic_register
229
+ end
230
+ def fns
231
+ @lang_class.fns
232
+ end
233
+ def word_count
234
+ @lang_class.word_count
235
+ end
236
+ def dgst
237
+ @lang_class.dgst
238
+ end
239
+ def sc_number
240
+ @lang_class.sc_number
241
+ end
242
+ def sc_date
243
+ @lang_class.sc_date
244
+ end
245
+ def last_generated
246
+ @lang_class.last_generated
247
+ end
248
+ def sisu_version
249
+ @lang_class.sisu_version
250
+ end
251
+ def ruby_version
252
+ @lang_class.ruby_version
253
+ end
254
+ def suggested_links
255
+ @lang_class.suggested_links
256
+ end
257
+ def language_version_list
258
+ @lang_class.language_version_list
259
+ end
260
+ def language
261
+ @lang_class.language
262
+ end
263
+ def manifest_description
264
+ @lang_class.manifest_description
265
+ end
266
+ def manifest_description_output
267
+ @lang_class.manifest_description_output
268
+ end
269
+ def manifest_description_metadata
270
+ @lang_class.manifest_description_metadata
271
+ end
272
+ def language_list_translated
273
+ @lang_class.language_list
274
+ end
275
+ def language_list
276
+ case @trans_str
277
+ when /American/i then 'American English' # tag depreciated, see iso 639-2
278
+ when /English/i then 'English'
279
+ when /French/i then 'français'
280
+ when /German/i then 'Deutsch'
281
+ when /Italian/i then 'Italiano'
282
+ when /Spanish/i then 'español'
283
+ when /Portuguese Brazil|Brazilian(?: Portuguese)?/i
284
+ 'Brazilian Português' # tag depreciated, see iso 639-2
285
+ when /Portuguese/i then 'Português'
286
+ when /Swedish/i then 'svenska'
287
+ when /Danish/i then 'dansk'
288
+ when /Finnish/i then 'suomi'
289
+ when /Norwegian/i then 'norsk'
290
+ when /Icelandic/i then 'Icelandic'
291
+ when /Dutch/i then 'Nederlands'
292
+ when /Estonian/i then 'Estonian'
293
+ when /Hungarian/i then 'Hungarian'
294
+ when /Polish/i then 'polski'
295
+ when /Romanian/i then 'română'
296
+ when /Russian/i then 'Русский (Russkij)'
297
+ when /Greek/i then 'Ελληνικά (Ellinika)'
298
+ when /Ukranian/i then 'українська (ukrajins\'ka)'
299
+ when /Turkish/i then 'Türkçe'
300
+ when /Slovenian/i then 'Slovenian'
301
+ when /Croatian/i then 'Croatian'
302
+ when /Slovak(?:ian)?/i then 'slovensky' #slovensky ?
303
+ when /Czech/i then 'česky'
304
+ when /Bulgarian/i then 'Български (Bəlgarski)'
305
+ when /Japanese/i then '日本語 (Nihongo)'
306
+ when /Korean/i then '한국어 (Hangul)'
307
+ #when /Catalan/i then 'català'
308
+ else 'English'
309
+ end
310
+ #check on 中文 and عربي
311
+ end
312
+ end
313
+ class English
314
+ def initialize(md,doc_lang,trans_str)
315
+ @md,@doc_lang,@trans_str=md,doc_lang,trans_str
316
+ end
317
+ def filename
318
+ 'filename'
319
+ end
320
+ def filetype_description
321
+ 'filetype description'
322
+ end
323
+ def metadata
324
+ 'metadata'
325
+ end
326
+ def file_size
327
+ 'file size'
328
+ end
329
+ def full_title #dc
330
+ 'Title'
331
+ end
332
+ def title
333
+ 'Title'
334
+ end
335
+ def subtitle
336
+ 'Subtitle'
337
+ end
338
+ def author
339
+ 'Author'
340
+ end
341
+ def author #dc
342
+ 'Creator'
343
+ end
344
+ def contributor #dc
345
+ 'Contributor'
346
+ end
347
+ def translator
348
+ 'Translator'
349
+ end
350
+ def illustrator
351
+ 'Illustrator'
352
+ end
353
+ def publisher #dc
354
+ 'Publisher'
355
+ end
356
+ def prepared_by
357
+ 'Prepared by'
358
+ end
359
+ def digitized_by
360
+ 'Digitized by'
361
+ end
362
+ def contents
363
+ 'Contents'
364
+ end
365
+ def subject #dc
366
+ 'Subject'
367
+ end
368
+ def description #dc (watch)
369
+ 'Description'
370
+ end
371
+ def abstract #dc
372
+ 'Abstract'
373
+ end
374
+ def type #dc
375
+ 'Type'
376
+ end
377
+ def rights #dc
378
+ 'Rights'
379
+ end
380
+ def date #dc
381
+ 'Date'
382
+ end
383
+ def date_created #dc
384
+ 'Date created'
385
+ end
386
+ def date_issued #dc
387
+ 'Date issued'
388
+ end
389
+ def date_available #dc
390
+ 'Date available'
391
+ end
392
+ def date_modified #dc
393
+ 'Date modified'
394
+ end
395
+ def date_valid #dc
396
+ 'Date valid'
397
+ end
398
+ def language #dc
399
+ 'Language'
400
+ end
401
+ def language_original
402
+ 'Original Language'
403
+ end
404
+ def format #dc
405
+ 'Format'
406
+ end
407
+ def identifier #dc
408
+ 'Identifier'
409
+ end
410
+ def source #dc
411
+ 'Source'
412
+ end
413
+ def relation #dc
414
+ 'Relation'
415
+ end
416
+ def coverage #dc
417
+ 'Coverage'
418
+ end
419
+ def keywords
420
+ 'Keywords'
421
+ end
422
+ def comments
423
+ 'Comments'
424
+ end
425
+ def cls_loc
426
+ 'Classify Library of Congress'
427
+ end
428
+ def cls_dewey
429
+ 'Classify Dewey'
430
+ end
431
+ def cls_oclc
432
+ 'Classify OCLC number'
433
+ end
434
+ def cls_gutenberg
435
+ 'Classify Project Gutenberg'
436
+ end
437
+ def cls_isbn
438
+ 'Classify ISBN'
439
+ end
440
+ def prefix_a
441
+ 'Prefix (a)'
442
+ end
443
+ def prefix_b
444
+ 'Prefix (b)'
445
+ end
446
+ def topic_register
447
+ 'Topics Registered'
448
+ end
449
+ def sourcefile
450
+ 'Sourcefile'
451
+ end
452
+ def word_count
453
+ 'Word Count approximate'
454
+ end
455
+ def sourcefile_digest
456
+ 'Sourcefile Digest'
457
+ end
458
+ def digest_md5
459
+ 'Sourcefile Digest (md5)'
460
+ end
461
+ def digest_sha256
462
+ 'Sourcefile Digest (sha256)'
463
+ end
464
+ def sc_number
465
+ 'Document (RCS/CVS) number'
466
+ end
467
+ def sc_date
468
+ 'Document (RCS/CVS) number'
469
+ end
470
+ def last_generated
471
+ 'Document (ao) last generated'
472
+ end
473
+ def sisu_version
474
+ 'Generated by'
475
+ end
476
+ def ruby_version
477
+ 'Ruby version'
478
+ end
479
+ def suggested_links
480
+ 'metadata suggested links'
481
+ end
482
+ def language_version_list
483
+ 'Document Language Versions, manifests'
484
+ end
485
+ def manifest_description
486
+ 'SiSU manifest of document filetypes and metadata'
487
+ end
488
+ def manifest_description_output
489
+ 'Available document filetypes'
490
+ end
491
+ def manifest_description_metadata
492
+ 'Document Metadata'
493
+ end
494
+ def language_list_translated
495
+ case @trans_str
496
+ when /American/i then 'American English' # tag depreciated, see iso 639-2
497
+ when /English/i then 'English'
498
+ when /French/i then 'French'
499
+ when /German/i then 'German'
500
+ when /Italian/i then 'Italian'
501
+ when /Spanish/i then 'Spanish'
502
+ when /Portuguese Brazil|Brazilian(?: Portuguese)?/i
503
+ 'Brazilian Portuguese' # tag depreciated, see iso 639-2
504
+ when /Portuguese/i then 'Portuguese'
505
+ when /Swedish/i then 'Swedish'
506
+ when /Danish/i then 'Danish'
507
+ when /Finnish/i then 'Finnish'
508
+ when /Norwegian/i then 'Norwegian'
509
+ when /Icelandic/i then 'Icelandic'
510
+ when /Dutch/i then 'Dutch'
511
+ when /Estonian/i then 'Estonian'
512
+ when /Hungarian/i then 'Hungarian'
513
+ when /Polish/i then 'Polish'
514
+ when /Romanian/i then 'Romanian'
515
+ when /Russian/i then 'Russian'
516
+ when /Greek/i then 'Greek'
517
+ when /Ukranian/i then 'Ukranian'
518
+ when /Turkish/i then 'Turkish'
519
+ when /Slovenian/i then 'Slovenian'
520
+ when /Croatian/i then 'Croatian'
521
+ when /Slovak(?:ian)?/i then 'Slovakian'
522
+ when /Czech/i then 'Czech'
523
+ when /Bulgarian/i then 'Bulgarian'
524
+ else @trans_str
525
+ end
526
+ end
527
+ end
528
+ class French
529
+ def initialize(md,doc_lang,trans_str)
530
+ @md,@doc_lang,@trans_str=md,doc_lang,trans_str
531
+ end
532
+ def filename
533
+ 'nom de fichier'
534
+ end
535
+ def filetype_description
536
+ description
537
+ end
538
+ def metadata
539
+ 'metadonnées'
540
+ end
541
+ def file_size
542
+ 'taille'
543
+ end
544
+ def full_title #dc
545
+ 'Titre'
546
+ end
547
+ def title
548
+ 'Titre'
549
+ end
550
+ def subtitle
551
+ 'Sous titre'
552
+ end
553
+ def author
554
+ 'Auteur'
555
+ end
556
+ def author #dc
557
+ 'Auteur'
558
+ end
559
+ def contributor #dc
560
+ 'Contributeur'
561
+ end
562
+ def translator
563
+ 'Traducteur'
564
+ end
565
+ def illustrator
566
+ 'Illustrateur'
567
+ end
568
+ def publisher #dc
569
+ 'Éditeur'
570
+ end
571
+ def prepared_by
572
+ 'Préparé par'
573
+ end
574
+ def digitized_by
575
+ 'Numérisé par'
576
+ end
577
+ def contents
578
+ 'Contents' #translate
579
+ end
580
+ def subject #dc
581
+ 'Sujet'
582
+ end
583
+ def description #dc (watch)
584
+ 'Description'
585
+ end
586
+ def abstract #dc
587
+ 'Résumé'
588
+ end
589
+ def type #dc
590
+ 'Type'
591
+ end
592
+ def rights #dc
593
+ 'Droits relatifs à la ressource'
594
+ end
595
+ def date #dc
596
+ 'Date'
597
+ end
598
+ def date_created #dc
599
+ 'Date de création'
600
+ end
601
+ def date_issued #dc
602
+ 'Date de publication'
603
+ end
604
+ def date_available #dc
605
+ 'Date de mise à disposition'
606
+ end
607
+ def date_modified #dc
608
+ 'Date de modification'
609
+ end
610
+ def date_valid #dc
611
+ 'Date de validité'
612
+ end
613
+ def language #dc
614
+ 'Langue'
615
+ end
616
+ def language_original
617
+ 'Langue originale'
618
+ end
619
+ def format #dc
620
+ 'Format'
621
+ end
622
+ def identifier #dc
623
+ 'Identifiant'
624
+ end
625
+ def source #dc
626
+ 'Source'
627
+ end
628
+ def relation #dc
629
+ 'Lien'
630
+ end
631
+ def coverage #dc
632
+ 'Portée du document'
633
+ end
634
+ def keywords
635
+ 'Mots clef'
636
+ end
637
+ def comments
638
+ 'Commentaires'
639
+ end
640
+ def cls_loc
641
+ 'Classification de la bibliothèque du congres'
642
+ end
643
+ def cls_dewey
644
+ 'Classification Dewey'
645
+ end
646
+ def cls_oclc # fix
647
+ 'Classify OCLC number'
648
+ end
649
+ def cls_gutenberg
650
+ 'Classification du project Gutenberg'
651
+ end
652
+ def cls_isbn
653
+ 'Classification ISBN'
654
+ end
655
+ def prefix_a
656
+ 'Préfixe (a)'
657
+ end
658
+ def prefix_b
659
+ 'Préfixe (b)'
660
+ end
661
+ def topic_register
662
+ 'Topics Registered'
663
+ end
664
+ def sourcefile
665
+ 'Fichier source'
666
+ end
667
+ def word_count
668
+ 'Nombre approximatif de mots'
669
+ end
670
+ def sourcefile_digest
671
+ 'Condensé du fichier source'
672
+ end
673
+ def digest_md5
674
+ 'Condensé du fichier source (md5)'
675
+ end
676
+ def digest_sha256
677
+ 'Condensé du fichier source (sha256)'
678
+ end
679
+ def sc_number
680
+ 'Numéro (RCS/CVS) du document'
681
+ end
682
+ def sc_date
683
+ 'Numéro (RCS/CVS) du document'
684
+ end
685
+ def last_generated
686
+ 'Dernière production du document (metaverse)'
687
+ end
688
+ def sisu_version
689
+ 'Généré par'
690
+ end
691
+ def ruby_version
692
+ 'Version de Ruby'
693
+ end
694
+ def suggested_links
695
+ 'Liens suggérés'
696
+ end
697
+ def language_version_list
698
+ 'Versions des langues du document, manifestes'
699
+ end
700
+ def manifest_description
701
+ 'SiSU manifest of document filetypes and metadata'
702
+ end
703
+ def manifest_description_output
704
+ 'Manifeste SiSU du document généré'
705
+ end
706
+ def manifest_description_metadata
707
+ 'Manifeste SiSU des métadonnées du document'
708
+ end
709
+ def language_list_translated
710
+ case @trans_str
711
+ when /American/i then 'Anglais americain' # tag depreciated, see iso 639-2
712
+ when /English/i then 'Anglais'
713
+ when /French/i then 'Français'
714
+ when /German/i then 'Allemand'
715
+ when /Italian/i then 'Italien'
716
+ when /Spanish/i then 'Espagnol'
717
+ when /Portuguese Brazil|Brazilian(?: Portuguese)?/i
718
+ 'Portugais brésilien' # tag depreciated, see iso 639-2
719
+ when /Portuguese/i then 'Portugais'
720
+ when /Swedish/i then 'Suédois'
721
+ when /Danish/i then 'Danois'
722
+ when /Finnish/i then 'Finnois'
723
+ when /Norwegian/i then 'Norvégien'
724
+ when /Icelandic/i then 'Islandais'
725
+ when /Dutch/i then 'Néerlandais'
726
+ when /Estonian/i then 'Estonien'
727
+ when /Hungarian/i then 'Hongrois'
728
+ when /Polish/i then 'Polonais'
729
+ when /Romanian/i then 'Roumain'
730
+ when /Russian/i then 'Russe'
731
+ when /Greek/i then 'Grec'
732
+ when /Ukranian/i then 'Ukrainien'
733
+ when /Turkish/i then 'Turc'
734
+ when /Slovenian/i then 'Slovène'
735
+ when /Croatian/i then 'Croate'
736
+ when /Slovak(?:ian)?/i then 'Slovaque'
737
+ when /Czech/i then 'Tcheque'
738
+ when /Bulgarian/i then 'Bulgare'
739
+ else @trans_str
740
+ end
741
+ end
742
+ end
743
+ class German
744
+ def initialize(md,doc_lang,trans_str)
745
+ @md,@doc_lang,@trans_str=md,doc_lang,trans_str
746
+ end
747
+ def filename
748
+ 'Dateiname'
749
+ end
750
+ def filetype_description
751
+ description
752
+ end
753
+ def metadata
754
+ 'Metadata'
755
+ end
756
+ def file_size
757
+ 'Dateigrösse'
758
+ end
759
+ def full_title #dc
760
+ 'Titel'
761
+ end
762
+ def title
763
+ 'Titel'
764
+ end
765
+ def subtitle
766
+ 'Untertitel'
767
+ end
768
+ def author
769
+ 'Autor'
770
+ end
771
+ def contributor #dc
772
+ 'Mitautor'
773
+ end
774
+ def translator
775
+ 'Übersetzung'
776
+ end
777
+ def illustrator
778
+ 'Illustrator'
779
+ end
780
+ def publisher
781
+ 'Herausgeber'
782
+ end
783
+ def prepared_by
784
+ 'gesetzt von'
785
+ end
786
+ def digitized_by
787
+ 'digitalisiert von'
788
+ end
789
+ def contents
790
+ 'Contents' #translate
791
+ end
792
+ def subject
793
+ 'Titel'
794
+ end
795
+ def description #dc (watch)
796
+ 'Beschreibung'
797
+ end
798
+ def abstract #dc
799
+ 'Abstract'
800
+ end
801
+ def type
802
+ 'Typ'
803
+ end
804
+ def rights
805
+ 'Rechte'
806
+ end
807
+ def date
808
+ 'Datum'
809
+ end
810
+ def date_created
811
+ 'Erstellung'
812
+ end
813
+ def date_issued
814
+ 'Herausgabe'
815
+ end
816
+ def date_available
817
+ 'Veröffentlichung'
818
+ end
819
+ def date_modified
820
+ 'Modifikation'
821
+ end
822
+ def date_valid
823
+ 'Gültigkeit'
824
+ end
825
+ def language
826
+ 'Sprache'
827
+ end
828
+ def language_original
829
+ 'Ursprungssprache'
830
+ end
831
+ def format #dc
832
+ 'Format'
833
+ end
834
+ def identifier #dc
835
+ 'Bezeichnung'
836
+ end
837
+ def source #dc
838
+ 'Quelle'
839
+ end
840
+ def relation #dc
841
+ 'Beziehung'
842
+ end
843
+ def coverage #dc
844
+ 'Eingrenzung'
845
+ end
846
+ def keywords
847
+ 'Schlüsselwörter'
848
+ end
849
+ def comments
850
+ 'Kommentare'
851
+ end
852
+ def cls_loc
853
+ 'Klassifikation nach Library of Congress'
854
+ end
855
+ def cls_dewey
856
+ 'Klassifikation nach Dewey'
857
+ end
858
+ def cls_oclc # fix
859
+ 'Classify OCLC number'
860
+ end
861
+ def cls_gutenberg
862
+ 'Klassifikation nach Projekt Gutenberg'
863
+ end
864
+ def cls_isbn
865
+ 'Klassifikation nach ISBN'
866
+ end
867
+ def prefix_a
868
+ 'Präfix (a)'
869
+ end
870
+ def prefix_b
871
+ 'Präfix (b)'
872
+ end
873
+ def topic_register
874
+ 'Topics Registered'
875
+ end
876
+ def sourcefile
877
+ 'Quelldatei'
878
+ end
879
+ def word_count
880
+ 'Anzahl Wörter'
881
+ end
882
+ def sourcefile_digest
883
+ 'Quelldatei Digest'
884
+ end
885
+ def digest_md5
886
+ 'Prüfsumme der Quelldatei (MD5)'
887
+ end
888
+ def digest_sha256
889
+ 'Prüfsumme der Quelldatei (SHA256)'
890
+ end
891
+ def sc_number
892
+ 'Dokumentversion (RCS/CVS)'
893
+ end
894
+ def sc_date
895
+ 'Dokumentdatum (RCS/CVS)'
896
+ end
897
+ def last_generated
898
+ 'Letzte Erstellung (metaverse)'
899
+ end
900
+ def sisu_version
901
+ 'erstellt bei'
902
+ end
903
+ def ruby_version
904
+ 'Ruby Version'
905
+ end
906
+ def suggested_links
907
+ 'empfohlene Links'
908
+ end
909
+ def language_version_list
910
+ 'verfügbare Sprachen'
911
+ end
912
+ def manifest_description
913
+ 'SiSU manifest of document filetypes and metadata'
914
+ end
915
+ def manifest_description_output
916
+ 'SiSU Zusammenfassung des Dokumentes'
917
+ end
918
+ def manifest_description_metadata
919
+ 'SiSU Zusammenfassung der Metadaten'
920
+ end
921
+ def language_list_translated
922
+ case @trans_str
923
+ when /American/i then 'Amerikanisch-Englisch' # tag depreciated, see iso 639-2
924
+ when /English/i then 'Englisch'
925
+ when /French/i then 'Französisch'
926
+ when /German/i then 'Deutsch'
927
+ when /Italian/i then 'Italienisch'
928
+ when /Spanish/i then 'Spanisch'
929
+ when /Portuguese Brazil|Brazilian(?: Portuguese)?/i
930
+ 'Brasilianisch-Portugiesisch' # tag depreciated, see iso 639-2
931
+ when /Portuguese/i then 'Portugiesisch'
932
+ when /Swedish/i then 'Schwedisch'
933
+ when /Danish/i then 'Dänisch'
934
+ when /Finnish/i then 'Finnisch'
935
+ when /Norwegian/i then 'Norwegisch'
936
+ when /Icelandic/i then 'Isländisch'
937
+ when /Dutch/i then 'Niederländisch'
938
+ when /Estonian/i then 'Estnisch'
939
+ when /Hungarian/i then 'Ungarisch'
940
+ when /Polish/i then 'Polnisch'
941
+ when /Romanian/i then 'Rumänisch'
942
+ when /Russian/i then 'Russisch'
943
+ when /Greek/i then 'Griechisch'
944
+ when /Ukranian/i then 'Ukrainisch'
945
+ when /Turkish/i then 'Türkisch'
946
+ when /Slovenian/i then 'Slovenisch'
947
+ when /Croatian/i then 'Kroatisch'
948
+ when /Slovak(?:ian)?/i then 'Slovakisch'
949
+ when /Czech/i then 'Tschechisch'
950
+ when /Bulgarian/i then 'Bulgarisch'
951
+ else @trans_str
952
+ end
953
+ end
954
+ end
955
+ class Spanish
956
+ def initialize(md,doc_lang,trans_str)
957
+ @md,@doc_lang,@trans_str=md,doc_lang,trans_str
958
+ end
959
+ def filename
960
+ 'nombre del fichero'
961
+ end
962
+ def filetype_description
963
+ description
964
+ end
965
+ def metadata
966
+ 'metadatos'
967
+ end
968
+ def file_size
969
+ 'tamaño del fichero'
970
+ end
971
+ def full_title #dc
972
+ 'Título'
973
+ end
974
+ def title
975
+ 'Título'
976
+ end
977
+ def subtitle
978
+ 'Subtítulo'
979
+ end
980
+ def author #dc
981
+ 'Creador'
982
+ end
983
+ def contributor #dc
984
+ 'Contribuidor'
985
+ end
986
+ def translator
987
+ 'Traductor'
988
+ end
989
+ def illustrator
990
+ 'Ilustrador'
991
+ end
992
+ def publisher #dc
993
+ 'Editor'
994
+ end
995
+ def prepared_by
996
+ 'Preparado por'
997
+ end
998
+ def digitized_by
999
+ 'Digitalizado por'
1000
+ end
1001
+ def contents
1002
+ 'Contents' #translate
1003
+ end
1004
+ def subject #dc
1005
+ 'Asunto'
1006
+ end
1007
+ def description #dc (watch)
1008
+ 'Descripción'
1009
+ end
1010
+ def abstract #dc
1011
+ 'Resumen'
1012
+ end
1013
+ def type #dc
1014
+ 'Tipo'
1015
+ end
1016
+ def rights #dc
1017
+ 'Derechos'
1018
+ end
1019
+ def date #dc
1020
+ 'Fecha'
1021
+ end
1022
+ def date_created #dc
1023
+ 'Fecha de creación'
1024
+ end
1025
+ def date_issued #dc
1026
+ 'Fecha de publicación'
1027
+ end
1028
+ def date_available #dc
1029
+ 'Fecha de disponibilidad'
1030
+ end
1031
+ def date_modified #dc
1032
+ 'Fecha de modificación'
1033
+ end
1034
+ def date_valid #dc
1035
+ 'Fecha de valided'
1036
+ end
1037
+ def language #dc
1038
+ 'Idioma'
1039
+ end
1040
+ def language_original
1041
+ 'Lenguaje original'
1042
+ end
1043
+ def format #dc
1044
+ 'Formato'
1045
+ end
1046
+ def identifier #dc
1047
+ 'Identificador'
1048
+ end
1049
+ def source #dc
1050
+ 'Fuente'
1051
+ end
1052
+ def relation #dc
1053
+ 'Relación'
1054
+ end
1055
+ def coverage #dc
1056
+ 'Cobertura'
1057
+ end
1058
+ def keywords
1059
+ 'Palabras claves'
1060
+ end
1061
+ def comments
1062
+ 'Comentarios'
1063
+ end
1064
+ def cls_loc
1065
+ 'Clasificación Biblioteca del Congreso'
1066
+ end
1067
+ def cls_dewey
1068
+ 'Clasificación Dewey'
1069
+ end
1070
+ def cls_oclc # fix
1071
+ 'Classify OCLC number'
1072
+ end
1073
+ def cls_gutenberg
1074
+ 'Clasificación Proyecto Gutenberg'
1075
+ end
1076
+ def cls_isbn
1077
+ 'Clasificación ISBN'
1078
+ end
1079
+ def prefix_a
1080
+ 'Prefijo (a)'
1081
+ end
1082
+ def prefix_b
1083
+ 'Prefijo (b)'
1084
+ end
1085
+ def topic_register
1086
+ 'Topics Registered'
1087
+ end
1088
+ def sourcefile
1089
+ 'Fichero fuente'
1090
+ end
1091
+ def word_count
1092
+ 'Número de palabras apróximado'
1093
+ end
1094
+ def sourcefile_digest
1095
+ 'Resumen del fichero fuente'
1096
+ end
1097
+ def digest_md5
1098
+ 'Resumen del fichero fuente (md5)'
1099
+ end
1100
+ def digest_sha256
1101
+ 'Resumen del fichero fuente (sha256)'
1102
+ end
1103
+ def sc_number
1104
+ 'Versión (RCS/CVS) del documento'
1105
+ end
1106
+ def sc_date
1107
+ 'Versión (RCS/CVS) del documento'
1108
+ end
1109
+ def last_generated
1110
+ 'Última generación (metaverse) del documento'
1111
+ end
1112
+ def sisu_version
1113
+ 'Generado por'
1114
+ end
1115
+ def ruby_version
1116
+ 'Versión de Ruby'
1117
+ end
1118
+ def suggested_links
1119
+ 'enlaces sugeridos de metadatos'
1120
+ end
1121
+ def language_version_list
1122
+ 'Document Language Versions, manifests'
1123
+ end
1124
+ def manifest_description
1125
+ 'SiSU manifest of document filetypes and metadata'
1126
+ end
1127
+ def manifest_description_output
1128
+ 'Manifiesto SiSU de salida generada'
1129
+ end
1130
+ def manifest_description_metadata
1131
+ 'Manifiesto SiSU de metadatos de documento'
1132
+ end
1133
+ def language_list_translated
1134
+ case @trans_str
1135
+ when /American/i then 'Inglés Americano' # tag depreciated, see iso 639-2
1136
+ when /English/i then 'Inglés'
1137
+ when /French/i then 'Francés'
1138
+ when /German/i then 'Alemán'
1139
+ when /Italian/i then 'Italiano'
1140
+ when /Spanish/i then 'Español'
1141
+ when /Portuguese Brazil|Brazilian(?: Portuguese)?/i
1142
+ 'Portugués de Brasil' # tag depreciated, see iso 639-2
1143
+ when /Portuguese/i then 'Portugués'
1144
+ when /Swedish/i then 'Sueco'
1145
+ when /Danish/i then 'Danés'
1146
+ when /Finnish/i then 'Finés'
1147
+ when /Norwegian/i then 'Noruego'
1148
+ when /Icelandic/i then 'Islandés'
1149
+ when /Dutch/i then 'Holandés'
1150
+ when /Estonian/i then 'Estonio'
1151
+ when /Hungarian/i then 'Húngaro'
1152
+ when /Polish/i then 'Polaco'
1153
+ when /Romanian/i then 'Rumano'
1154
+ when /Russian/i then 'Ruso'
1155
+ when /Greek/i then 'Griego'
1156
+ when /Ukranian/i then 'Ucraniano'
1157
+ when /Turkish/i then 'Turco'
1158
+ when /Slovenian/i then 'Eslovaco'
1159
+ when /Croatian/i then 'Croata'
1160
+ when /Slovak(?:ian)?/i then 'Eslovaco'
1161
+ when /Czech/i then 'Checo'
1162
+ when /Bulgarian/i then 'Búlgaro'
1163
+ else @trans_str
1164
+ end
1165
+ end
1166
+ end
1167
+ class Italian
1168
+ def initialize(md,doc_lang,trans_str)
1169
+ @md,@doc_lang,@trans_str=md,doc_lang,trans_str
1170
+ end
1171
+ def filename
1172
+ 'nome del file'
1173
+ end
1174
+ def filetype_description
1175
+ description
1176
+ end
1177
+ def metadata
1178
+ 'metadati'
1179
+ end
1180
+ def file_size
1181
+ 'dimensione'
1182
+ end
1183
+ def full_title #dc
1184
+ 'Titolo'
1185
+ end
1186
+ def title
1187
+ 'Titolo'
1188
+ end
1189
+ def subtitle
1190
+ 'Sottotitolo'
1191
+ end
1192
+ def author #dc
1193
+ 'Autore'
1194
+ end
1195
+ def contributor #dc
1196
+ 'Contributore'
1197
+ end
1198
+ def translator
1199
+ 'Traduttore'
1200
+ end
1201
+ def illustrator
1202
+ 'Illustratore'
1203
+ end
1204
+ def publisher #dc
1205
+ 'Casa editrice'
1206
+ end
1207
+ def prepared_by
1208
+ 'Preparato da'
1209
+ end
1210
+ def digitized_by
1211
+ 'Convertito in digitale da'
1212
+ end
1213
+ def contents
1214
+ 'Contents' #translate
1215
+ end
1216
+ def subject #dc
1217
+ 'Oggetto'
1218
+ end
1219
+ def description #dc (watch)
1220
+ 'Descrizione'
1221
+ end
1222
+ def abstract #dc
1223
+ 'Abstract'
1224
+ end
1225
+ def type #dc
1226
+ 'Tipo'
1227
+ end
1228
+ def rights #dc
1229
+ 'Diritti del lettore'
1230
+ end
1231
+ def date #dc
1232
+ 'Data'
1233
+ end
1234
+ def date_created #dc
1235
+ 'Data di creazione'
1236
+ end
1237
+ def date_issued #dc
1238
+ 'Data di pubblicazione'
1239
+ end
1240
+ def date_available #dc
1241
+ 'Data di effettiva disponibilità'
1242
+ end
1243
+ def date_modified #dc
1244
+ 'Data di ultima modifica'
1245
+ end
1246
+ def date_valid #dc
1247
+ 'Data di inizo validità'
1248
+ end
1249
+ def language #dc
1250
+ 'Lingua'
1251
+ end
1252
+ def language_original
1253
+ 'Lingua originale'
1254
+ end
1255
+ def format #dc
1256
+ 'Formato'
1257
+ end
1258
+ def identifier #dc
1259
+ 'Indentificatore'
1260
+ end
1261
+ def source #dc
1262
+ 'Fonte'
1263
+ end
1264
+ def relation #dc
1265
+ 'Collegamento'
1266
+ end
1267
+ def coverage #dc
1268
+ 'Ambito'
1269
+ end
1270
+ def keywords
1271
+ 'Parole chiave'
1272
+ end
1273
+ def comments
1274
+ 'Commenti'
1275
+ end
1276
+ def cls_loc
1277
+ 'Classificazione della Library of Congress'
1278
+ end
1279
+ def cls_dewey
1280
+ 'Classificazione Dewey'
1281
+ end
1282
+ def cls_oclc # fix
1283
+ 'Classify OCLC number'
1284
+ end
1285
+ def cls_gutenberg
1286
+ 'Classificazione del Progetto Gutenberg'
1287
+ end
1288
+ def cls_isbn
1289
+ 'Numero ISBN'
1290
+ end
1291
+ def prefix_a
1292
+ 'Premessa (a)'
1293
+ end
1294
+ def prefix_b
1295
+ 'Premessa (b)'
1296
+ end
1297
+ def topic_register
1298
+ 'Topics Registered'
1299
+ end
1300
+ def sourcefile
1301
+ 'Sorgente'
1302
+ end
1303
+ def word_count
1304
+ 'Numero approssimativo di parole'
1305
+ end
1306
+ def sourcefile_digest
1307
+ 'Checksum file sorgente'
1308
+ end
1309
+ def digest_md5
1310
+ 'Checksum file sorgente (md5)'
1311
+ end
1312
+ def digest_sha256
1313
+ 'Checksum file sorgente (sha256)'
1314
+ end
1315
+ def sc_number
1316
+ 'Numero di revisione (RCS/CVS)'
1317
+ end
1318
+ def sc_date
1319
+ 'Numero di revisione (RCS/CVS)'
1320
+ end
1321
+ def last_generated
1322
+ 'Data di ultima generazione (ao metaverse)'
1323
+ end
1324
+ def sisu_version
1325
+ 'Generato da'
1326
+ end
1327
+ def ruby_version
1328
+ 'Ruby versione'
1329
+ end
1330
+ def suggested_links
1331
+ 'Link suggeriti'
1332
+ end
1333
+ def language_version_list
1334
+ 'Traduzioni disponibili'
1335
+ end
1336
+ def manifest_description
1337
+ 'SiSU manifest of document filetypes and metadata'
1338
+ end
1339
+ def manifest_description_output
1340
+ 'Inventario SiSU dell\'output generato'
1341
+ end
1342
+ def manifest_description_metadata
1343
+ 'Inventario SiSU dei metadati'
1344
+ end
1345
+ def language_list_translated
1346
+ case @trans_str
1347
+ when /American/i then 'Inglese USA' # tag depreciated, see iso 639-2
1348
+ when /English/i then 'Inglese'
1349
+ when /French/i then 'Francese'
1350
+ when /German/i then 'Tedesco'
1351
+ when /Italian/i then 'Italiano'
1352
+ when /Spanish/i then 'Spagnolo'
1353
+ when /Portuguese Brazil|Brazilian(?: Portuguese)?/i
1354
+ 'Portoguese (Brasile)' # tag depreciated, see iso 639-2
1355
+ when /Portuguese/i then 'Portoguese'
1356
+ when /Swedish/i then 'Svedese'
1357
+ when /Danish/i then 'Danese'
1358
+ when /Finnish/i then 'Finlandese'
1359
+ when /Norwegian/i then 'Norvegese'
1360
+ when /Icelandic/i then 'Islandese'
1361
+ when /Dutch/i then 'Olandese'
1362
+ when /Estonian/i then 'Estone'
1363
+ when /Hungarian/i then 'Ungherese'
1364
+ when /Polish/i then 'Polacco'
1365
+ when /Romanian/i then 'Romeno'
1366
+ when /Russian/i then 'Russo'
1367
+ when /Greek/i then 'Greco'
1368
+ when /Ukranian/i then 'Ucraino'
1369
+ when /Turkish/i then 'Turco'
1370
+ when /Slovenian/i then 'Sloveno'
1371
+ when /Croatian/i then 'Croato'
1372
+ when /Slovak(?:ian)?/i then 'Slovacco'
1373
+ when /Czech/i then 'Ceco'
1374
+ when /Bulgarian/i then 'Bulgaro'
1375
+ else @trans_str
1376
+ end
1377
+ end
1378
+ end
1379
+ class Finnish
1380
+ def initialize(md,doc_lang,trans_str)
1381
+ @md,@doc_lang,@trans_str=md,doc_lang,trans_str
1382
+ end
1383
+ def filename
1384
+ 'tiedostonimi'
1385
+ end
1386
+ def filetype_description
1387
+ description
1388
+ end
1389
+ def metadata
1390
+ 'metadata'
1391
+ end
1392
+ def file_size
1393
+ 'tiedoston koko'
1394
+ end
1395
+ def full_title #dc
1396
+ 'otsikko'
1397
+ end
1398
+ def title
1399
+ 'Otsikko'
1400
+ end
1401
+ def subtitle
1402
+ 'Alaotsikko'
1403
+ end
1404
+ def author #dc
1405
+ 'tekijä'
1406
+ end
1407
+ def contributor #dc
1408
+ 'osallistuja'
1409
+ end
1410
+ def translator
1411
+ 'Kääntäjä'
1412
+ end
1413
+ def illustrator
1414
+ 'Kuvittaja'
1415
+ end
1416
+ def publisher #dc
1417
+ 'julkaisija'
1418
+ end
1419
+ def prepared_by
1420
+ 'Valmistaja'
1421
+ end
1422
+ def digitized_by
1423
+ 'Digitalisoinut'
1424
+ end
1425
+ def contents
1426
+ 'Contents' #translate
1427
+ end
1428
+ def subject #dc
1429
+ 'aihe'
1430
+ end
1431
+ def description #dc (watch)
1432
+ 'kuvaus'
1433
+ end
1434
+ def abstract #dc
1435
+ 'tiivistelmä'
1436
+ end
1437
+ def type #dc
1438
+ 'tyyppi'
1439
+ end
1440
+ def rights #dc
1441
+ 'oikeudet'
1442
+ end
1443
+ def date #dc
1444
+ 'päiväys'
1445
+ end
1446
+ def date_created #dc
1447
+ 'luontipäivä'
1448
+ end
1449
+ def date_issued #dc
1450
+ 'julkaisupäivä'
1451
+ end
1452
+ def date_available #dc
1453
+ 'saantipäivä'
1454
+ end
1455
+ def date_modified #dc
1456
+ 'muokkauspäivä'
1457
+ end
1458
+ def date_valid #dc
1459
+ 'kelpoisuuspäivä'
1460
+ end
1461
+ def language #dc
1462
+ 'kieli'
1463
+ end
1464
+ def language_original
1465
+ 'Alkuperäiskieli'
1466
+ end
1467
+ def format #dc
1468
+ 'muoto'
1469
+ end
1470
+ def identifier #dc
1471
+ 'tunnus'
1472
+ end
1473
+ def source #dc
1474
+ 'lähde'
1475
+ end
1476
+ def relation #dc
1477
+ 'suhde'
1478
+ end
1479
+ def coverage #dc
1480
+ 'kattavuus'
1481
+ end
1482
+ def keywords
1483
+ 'Avainsanat'
1484
+ end
1485
+ def comments
1486
+ 'Kommentit'
1487
+ end
1488
+ def cls_loc
1489
+ 'Classify Library of Congress'
1490
+ end
1491
+ def cls_dewey
1492
+ 'Classify Dewey'
1493
+ end
1494
+ def cls_oclc # fix
1495
+ 'Classify OCLC number'
1496
+ end
1497
+ def cls_gutenberg
1498
+ 'Classify Project Gutenberg'
1499
+ end
1500
+ def cls_isbn
1501
+ 'Classify ISBN'
1502
+ end
1503
+ def prefix_a
1504
+ 'Prefix (a)'
1505
+ end
1506
+ def prefix_b
1507
+ 'Prefix (b)'
1508
+ end
1509
+ def topic_register
1510
+ 'Topics Registered'
1511
+ end
1512
+ def sourcefile
1513
+ 'Lähdetiedosto'
1514
+ end
1515
+ def word_count
1516
+ 'Arvioitu sanamäärä'
1517
+ end
1518
+ def sourcefile_digest
1519
+ 'Lähdetiedoston tiiviste'
1520
+ end
1521
+ def digest_md5
1522
+ 'Lähdetiedoston tiiviste (md5)'
1523
+ end
1524
+ def digest_sha256
1525
+ 'Lähdetiedoston tiiviste (sha256)'
1526
+ end
1527
+ def sc_number
1528
+ 'Dokumentin RCS/CVS-numero'
1529
+ end
1530
+ def sc_date
1531
+ 'Dokumentin RCS/CVS-päiväys'
1532
+ end
1533
+ def last_generated
1534
+ 'Viimeksi tuotettu dokumentti (metaverse)'
1535
+ end
1536
+ def sisu_version
1537
+ 'Generoinut'
1538
+ end
1539
+ def ruby_version
1540
+ 'Ruby-versio'
1541
+ end
1542
+ def suggested_links
1543
+ 'metadatan ehdottamat linkit'
1544
+ end
1545
+ def language_version_list
1546
+ 'Dokumentin kieliversiot, manifestit'
1547
+ end
1548
+ def manifest_description
1549
+ 'SiSU manifest of document filetypes and metadata'
1550
+ end
1551
+ def manifest_description_output
1552
+ 'Tuotetun tuloksen SISU-manifesti'
1553
+ end
1554
+ def manifest_description_metadata
1555
+ 'Dokumenttimetadatan SISU-manifesti'
1556
+ end
1557
+ def language_list_translated
1558
+ case @trans_str
1559
+ when /American/i then 'Amerikanenglanti' # tag depreciated, see iso 639-2
1560
+ when /English/i then 'Englanti'
1561
+ when /French/i then 'Ranska'
1562
+ when /German/i then 'Saksa'
1563
+ when /Italian/i then 'Italia'
1564
+ when /Spanish/i then 'Espanja'
1565
+ when /Portuguese Brazil|Brazilian(?: Portuguese)?/i
1566
+ 'Brasilian portugali' # tag depreciated, see iso 639-2
1567
+ when /Portuguese/i then 'Portugali'
1568
+ when /Swedish/i then 'Ruotsi'
1569
+ when /Danish/i then 'Tanska'
1570
+ when /Finnish/i then 'Suomi'
1571
+ when /Norwegian/i then 'Norja'
1572
+ when /Icelandic/i then 'Islanti'
1573
+ when /Dutch/i then 'Hollanti'
1574
+ when /Estonian/i then 'Viro'
1575
+ when /Hungarian/i then 'Unkari'
1576
+ when /Polish/i then 'Puola'
1577
+ when /Romanian/i then 'Romania'
1578
+ when /Russian/i then 'Venäjä'
1579
+ when /Greek/i then 'Kreikka'
1580
+ when /Ukranian/i then 'Ukraina'
1581
+ when /Turkish/i then 'Turkki'
1582
+ when /Slovenian/i then 'Slovenia'
1583
+ when /Croatian/i then 'Kroatia'
1584
+ when /Slovak(?:ian)?/i then 'Slovakki'
1585
+ when /Czech/i then 'Tsekki'
1586
+ when /Bulgarian/i then 'Bulgaria'
1587
+ else @trans_str
1588
+ end
1589
+ end
1590
+ end
1591
+ class Portuguese < English
1592
+ end
1593
+ class Swedish < English
1594
+ def contents
1595
+ 'Innehåll'
1596
+ end
1597
+ end
1598
+ class Danish < English
1599
+ end
1600
+ class Norwegian < English
1601
+ end
1602
+ class Icelandic < English
1603
+ end
1604
+ class Dutch < English
1605
+ end
1606
+ class Estonian < English
1607
+ end
1608
+ class Hungarian < English
1609
+ end
1610
+ class Polish < English
1611
+ end
1612
+ class Romanian < English
1613
+ end
1614
+ class Russian < English
1615
+ end
1616
+ class Greek < English
1617
+ end
1618
+ class Ukranian < English
1619
+ end
1620
+ class Turkish < English
1621
+ end
1622
+ class Croatian < English
1623
+ end
1624
+ class Slovakian < English
1625
+ end
1626
+ class Czech < English
1627
+ end
1628
+ class Bulgarian < English
1629
+ end
1630
+ end
1631
+ __END__
1632
+ http://www.debian.org/international/l10n/po/
1633
+ http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
1634
+ http://www.loc.gov/standards/iso639-2/php/code_list.php
1635
+ albanian sq
1636
+ amharic am
1637
+ arabic ar
1638
+ armenian hy
1639
+ asturian
1640
+ bahasai
1641
+ bahasam
1642
+ basque eu
1643
+ bengali bn
1644
+ brazil[ian] pt_BR
1645
+ breton br
1646
+ bulgarian bg
1647
+ catalan ca
1648
+ coptic
1649
+ croatian hr
1650
+ czech cs
1651
+ danish da
1652
+ divehi
1653
+ dutch nl
1654
+ english en
1655
+ esperanto eo
1656
+ estonian et
1657
+ galician gl
1658
+ german de
1659
+ greek el
1660
+ hebrew he
1661
+ hindi hi
1662
+ icelandic is
1663
+ interlingua ia
1664
+ irish ga
1665
+ italian it
1666
+ farsi
1667
+ finnish fi
1668
+ french fr
1669
+ lao lo
1670
+ latin la
1671
+ latvian lv
1672
+ lithuanian lt
1673
+ lsorbian
1674
+ magyar
1675
+ malayalam ml
1676
+ marathi mr
1677
+ norsk no
1678
+ nynorsk nn
1679
+ occitan oc
1680
+ polish pl
1681
+ portuges pt
1682
+ romanian ro
1683
+ russian ru
1684
+ samin se (check sami?)
1685
+ sanskrit sa
1686
+ scottish # (gd (Gaelic (Scots)))
1687
+ serbian sr
1688
+ slovak sk
1689
+ slovenian sl
1690
+ spanish es
1691
+ swedish sv
1692
+ syriac # (ar_SY (Arabic, as spoken in Syrian Arab Republic))
1693
+ tamil ta
1694
+ telugu te
1695
+ thai th
1696
+ turkish tr
1697
+ turkmen tk
1698
+ ukrainian uk
1699
+ urdu ur
1700
+ usorbian
1701
+ vietnamese vi
1702
+ welsh cy