gettext 1.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 (384) hide show
  1. data/COPYING +55 -0
  2. data/COPYING.ja +51 -0
  3. data/ChangeLog +492 -0
  4. data/NEWS +99 -0
  5. data/README +112 -0
  6. data/README.ja +115 -0
  7. data/Rakefile +170 -0
  8. data/bin/rgettext +22 -0
  9. data/bin/rmsgfmt +22 -0
  10. data/data/locale/de/LC_MESSAGES/rgettext.mo +0 -0
  11. data/data/locale/de/LC_MESSAGES/rmsgfmt.mo +0 -0
  12. data/data/locale/es/LC_MESSAGES/rgettext.mo +0 -0
  13. data/data/locale/es/LC_MESSAGES/rmsgfmt.mo +0 -0
  14. data/data/locale/fr/LC_MESSAGES/rgettext.mo +0 -0
  15. data/data/locale/fr/LC_MESSAGES/rmsgfmt.mo +0 -0
  16. data/data/locale/it/LC_MESSAGES/rgettext.mo +0 -0
  17. data/data/locale/it/LC_MESSAGES/rmsgfmt.mo +0 -0
  18. data/data/locale/ja/LC_MESSAGES/rgettext.mo +0 -0
  19. data/data/locale/ja/LC_MESSAGES/rmsgfmt.mo +0 -0
  20. data/data/locale/ko/LC_MESSAGES/rgettext.mo +0 -0
  21. data/data/locale/ko/LC_MESSAGES/rmsgfmt.mo +0 -0
  22. data/data/locale/pt_BR/LC_MESSAGES/rgettext.mo +0 -0
  23. data/data/locale/pt_BR/LC_MESSAGES/rmsgfmt.mo +0 -0
  24. data/data/locale/sv/LC_MESSAGES/rgettext.mo +0 -0
  25. data/data/locale/sv/LC_MESSAGES/rmsgfmt.mo +0 -0
  26. data/ext/gettext/gettext/MANIFEST +3 -0
  27. data/ext/gettext/gettext/_locale.c +86 -0
  28. data/ext/gettext/gettext/extconf.rb +20 -0
  29. data/lib/gettext.rb +127 -0
  30. data/lib/gettext/cgi.rb +83 -0
  31. data/lib/gettext/container.rb +30 -0
  32. data/lib/gettext/erb.rb +28 -0
  33. data/lib/gettext/iconv.rb +80 -0
  34. data/lib/gettext/locale.rb +71 -0
  35. data/lib/gettext/locale_default.rb +35 -0
  36. data/lib/gettext/locale_table_win32.rb +192 -0
  37. data/lib/gettext/locale_win32.rb +35 -0
  38. data/lib/gettext/mo.rb +262 -0
  39. data/lib/gettext/parser/erb.rb +34 -0
  40. data/lib/gettext/parser/glade.rb +98 -0
  41. data/lib/gettext/parser/ruby.rb +211 -0
  42. data/lib/gettext/rails.rb +40 -0
  43. data/lib/gettext/rgettext.rb +181 -0
  44. data/lib/gettext/rmsgfmt.rb +363 -0
  45. data/lib/gettext/textdomain.rb +168 -0
  46. data/lib/gettext/version.rb +12 -0
  47. data/po/de/rgettext.po +49 -0
  48. data/po/de/rmsgfmt.po +45 -0
  49. data/po/es/rgettext.po +47 -0
  50. data/po/es/rmsgfmt.po +43 -0
  51. data/po/fr/rgettext.po +47 -0
  52. data/po/fr/rmsgfmt.po +43 -0
  53. data/po/it/rgettext.po +47 -0
  54. data/po/it/rmsgfmt.po +44 -0
  55. data/po/ja/rgettext.po +49 -0
  56. data/po/ja/rmsgfmt.po +43 -0
  57. data/po/ko/rgettext.po +46 -0
  58. data/po/ko/rmsgfmt.po +40 -0
  59. data/po/pt_BR/rgettext.po +47 -0
  60. data/po/pt_BR/rmsgfmt.po +42 -0
  61. data/po/rgettext.pot +45 -0
  62. data/po/rmsgfmt.pot +40 -0
  63. data/po/sv/rgettext.po +48 -0
  64. data/po/sv/rmsgfmt.po +43 -0
  65. data/post-setup.rb +12 -0
  66. data/pre-setup.rb +12 -0
  67. data/samples/README +20 -0
  68. data/samples/cgi/README +43 -0
  69. data/samples/cgi/Rakefile +9 -0
  70. data/samples/cgi/cookie.cgi +57 -0
  71. data/samples/cgi/gettext.css +116 -0
  72. data/samples/cgi/helloerb.rhtml +27 -0
  73. data/samples/cgi/helloerb1.cgi +47 -0
  74. data/samples/cgi/helloerb2.cgi +41 -0
  75. data/samples/cgi/hellolib.rb +21 -0
  76. data/samples/cgi/http.rb +54 -0
  77. data/samples/cgi/index.cgi +104 -0
  78. data/samples/cgi/locale/de/LC_MESSAGES/helloerb1.mo +0 -0
  79. data/samples/cgi/locale/de/LC_MESSAGES/helloerb2.mo +0 -0
  80. data/samples/cgi/locale/de/LC_MESSAGES/hellolib.mo +0 -0
  81. data/samples/cgi/locale/de/LC_MESSAGES/main.mo +0 -0
  82. data/samples/cgi/locale/es/LC_MESSAGES/helloerb1.mo +0 -0
  83. data/samples/cgi/locale/es/LC_MESSAGES/helloerb2.mo +0 -0
  84. data/samples/cgi/locale/es/LC_MESSAGES/hellolib.mo +0 -0
  85. data/samples/cgi/locale/es/LC_MESSAGES/main.mo +0 -0
  86. data/samples/cgi/locale/fr/LC_MESSAGES/helloerb1.mo +0 -0
  87. data/samples/cgi/locale/fr/LC_MESSAGES/helloerb2.mo +0 -0
  88. data/samples/cgi/locale/fr/LC_MESSAGES/hellolib.mo +0 -0
  89. data/samples/cgi/locale/fr/LC_MESSAGES/main.mo +0 -0
  90. data/samples/cgi/locale/it/LC_MESSAGES/helloerb1.mo +0 -0
  91. data/samples/cgi/locale/it/LC_MESSAGES/helloerb2.mo +0 -0
  92. data/samples/cgi/locale/it/LC_MESSAGES/hellolib.mo +0 -0
  93. data/samples/cgi/locale/it/LC_MESSAGES/main.mo +0 -0
  94. data/samples/cgi/locale/ja/LC_MESSAGES/helloerb1.mo +0 -0
  95. data/samples/cgi/locale/ja/LC_MESSAGES/helloerb2.mo +0 -0
  96. data/samples/cgi/locale/ja/LC_MESSAGES/hellolib.mo +0 -0
  97. data/samples/cgi/locale/ja/LC_MESSAGES/main.mo +0 -0
  98. data/samples/cgi/locale/ko/LC_MESSAGES/helloerb1.mo +0 -0
  99. data/samples/cgi/locale/ko/LC_MESSAGES/helloerb2.mo +0 -0
  100. data/samples/cgi/locale/ko/LC_MESSAGES/hellolib.mo +0 -0
  101. data/samples/cgi/locale/ko/LC_MESSAGES/main.mo +0 -0
  102. data/samples/cgi/other.rhtml +20 -0
  103. data/samples/cgi/po/de/helloerb1.po +60 -0
  104. data/samples/cgi/po/de/helloerb2.po +52 -0
  105. data/samples/cgi/po/de/hellolib.po +23 -0
  106. data/samples/cgi/po/de/main.po +76 -0
  107. data/samples/cgi/po/es/helloerb1.po +59 -0
  108. data/samples/cgi/po/es/helloerb2.po +50 -0
  109. data/samples/cgi/po/es/hellolib.po +22 -0
  110. data/samples/cgi/po/es/main.po +74 -0
  111. data/samples/cgi/po/fr/helloerb1.po +59 -0
  112. data/samples/cgi/po/fr/helloerb2.po +51 -0
  113. data/samples/cgi/po/fr/hellolib.po +22 -0
  114. data/samples/cgi/po/fr/main.po +75 -0
  115. data/samples/cgi/po/helloerb1.pot +60 -0
  116. data/samples/cgi/po/helloerb2.pot +52 -0
  117. data/samples/cgi/po/hellolib.pot +23 -0
  118. data/samples/cgi/po/it/helloerb1.po +61 -0
  119. data/samples/cgi/po/it/helloerb2.po +52 -0
  120. data/samples/cgi/po/it/hellolib.po +24 -0
  121. data/samples/cgi/po/it/main.po +76 -0
  122. data/samples/cgi/po/ja/helloerb1.po +59 -0
  123. data/samples/cgi/po/ja/helloerb2.po +52 -0
  124. data/samples/cgi/po/ja/hellolib.po +23 -0
  125. data/samples/cgi/po/ja/main.po +76 -0
  126. data/samples/cgi/po/ko/helloerb1.po +58 -0
  127. data/samples/cgi/po/ko/helloerb2.po +52 -0
  128. data/samples/cgi/po/ko/hellolib.po +22 -0
  129. data/samples/cgi/po/ko/main.po +74 -0
  130. data/samples/cgi/po/main.pot +76 -0
  131. data/samples/cgi/ruby.bat +4 -0
  132. data/samples/hello.rb +12 -0
  133. data/samples/hello2.rb +15 -0
  134. data/samples/hello_noop.rb +18 -0
  135. data/samples/hello_plural.rb +15 -0
  136. data/samples/hello_textdomain.rb +12 -0
  137. data/samples/helloglade2.glade +70 -0
  138. data/samples/helloglade2.rb +24 -0
  139. data/samples/hellogtk.rb +26 -0
  140. data/samples/hellogtk2.rb +28 -0
  141. data/samples/hellotk.rb +18 -0
  142. data/samples/locale/de/LC_MESSAGES/hello.mo +0 -0
  143. data/samples/locale/de/LC_MESSAGES/hello2.mo +0 -0
  144. data/samples/locale/de/LC_MESSAGES/hello_noop.mo +0 -0
  145. data/samples/locale/de/LC_MESSAGES/hello_plural.mo +0 -0
  146. data/samples/locale/de/LC_MESSAGES/helloglade2.mo +0 -0
  147. data/samples/locale/de/LC_MESSAGES/hellogtk.mo +0 -0
  148. data/samples/locale/de/LC_MESSAGES/hellotk.mo +0 -0
  149. data/samples/locale/es/LC_MESSAGES/hello.mo +0 -0
  150. data/samples/locale/es/LC_MESSAGES/hello2.mo +0 -0
  151. data/samples/locale/es/LC_MESSAGES/hello_noop.mo +0 -0
  152. data/samples/locale/es/LC_MESSAGES/hello_plural.mo +0 -0
  153. data/samples/locale/es/LC_MESSAGES/helloglade2.mo +0 -0
  154. data/samples/locale/es/LC_MESSAGES/hellogtk.mo +0 -0
  155. data/samples/locale/es/LC_MESSAGES/hellotk.mo +0 -0
  156. data/samples/locale/fr/LC_MESSAGES/hello.mo +0 -0
  157. data/samples/locale/fr/LC_MESSAGES/hello2.mo +0 -0
  158. data/samples/locale/fr/LC_MESSAGES/hello_noop.mo +0 -0
  159. data/samples/locale/fr/LC_MESSAGES/hello_plural.mo +0 -0
  160. data/samples/locale/fr/LC_MESSAGES/helloglade2.mo +0 -0
  161. data/samples/locale/fr/LC_MESSAGES/hellogtk.mo +0 -0
  162. data/samples/locale/fr/LC_MESSAGES/hellotk.mo +0 -0
  163. data/samples/locale/it/LC_MESSAGES/hello.mo +0 -0
  164. data/samples/locale/it/LC_MESSAGES/hello2.mo +0 -0
  165. data/samples/locale/it/LC_MESSAGES/hello_noop.mo +0 -0
  166. data/samples/locale/it/LC_MESSAGES/hello_plural.mo +0 -0
  167. data/samples/locale/it/LC_MESSAGES/helloglade2.mo +0 -0
  168. data/samples/locale/it/LC_MESSAGES/hellogtk.mo +0 -0
  169. data/samples/locale/it/LC_MESSAGES/hellotk.mo +0 -0
  170. data/samples/locale/ja/LC_MESSAGES/hello.mo +0 -0
  171. data/samples/locale/ja/LC_MESSAGES/hello2.mo +0 -0
  172. data/samples/locale/ja/LC_MESSAGES/hello_noop.mo +0 -0
  173. data/samples/locale/ja/LC_MESSAGES/hello_plural.mo +0 -0
  174. data/samples/locale/ja/LC_MESSAGES/helloglade2.mo +0 -0
  175. data/samples/locale/ja/LC_MESSAGES/hellogtk.mo +0 -0
  176. data/samples/locale/ja/LC_MESSAGES/hellotk.mo +0 -0
  177. data/samples/locale/ko/LC_MESSAGES/hello.mo +0 -0
  178. data/samples/locale/ko/LC_MESSAGES/hello2.mo +0 -0
  179. data/samples/locale/ko/LC_MESSAGES/hello_noop.mo +0 -0
  180. data/samples/locale/ko/LC_MESSAGES/hello_plural.mo +0 -0
  181. data/samples/locale/ko/LC_MESSAGES/helloglade2.mo +0 -0
  182. data/samples/locale/ko/LC_MESSAGES/hellogtk.mo +0 -0
  183. data/samples/locale/ko/LC_MESSAGES/hellotk.mo +0 -0
  184. data/samples/locale/pt_BR/LC_MESSAGES/hello.mo +0 -0
  185. data/samples/locale/pt_BR/LC_MESSAGES/hello2.mo +0 -0
  186. data/samples/locale/pt_BR/LC_MESSAGES/hello_noop.mo +0 -0
  187. data/samples/locale/pt_BR/LC_MESSAGES/hello_plural.mo +0 -0
  188. data/samples/locale/pt_BR/LC_MESSAGES/helloglade2.mo +0 -0
  189. data/samples/locale/pt_BR/LC_MESSAGES/hellogtk.mo +0 -0
  190. data/samples/locale/pt_BR/LC_MESSAGES/hellotk.mo +0 -0
  191. data/samples/locale/sv/LC_MESSAGES/hello.mo +0 -0
  192. data/samples/locale/sv/LC_MESSAGES/hello2.mo +0 -0
  193. data/samples/locale/sv/LC_MESSAGES/hello_noop.mo +0 -0
  194. data/samples/locale/sv/LC_MESSAGES/hello_plural.mo +0 -0
  195. data/samples/locale/sv/LC_MESSAGES/helloglade2.mo +0 -0
  196. data/samples/locale/sv/LC_MESSAGES/hellogtk.mo +0 -0
  197. data/samples/locale/sv/LC_MESSAGES/hellotk.mo +0 -0
  198. data/samples/makemo.rb +3 -0
  199. data/samples/po/de/hello.po +20 -0
  200. data/samples/po/de/hello2.po +28 -0
  201. data/samples/po/de/hello_noop.po +24 -0
  202. data/samples/po/de/hello_plural.po +22 -0
  203. data/samples/po/de/helloglade2.po +27 -0
  204. data/samples/po/de/hellogtk.po +20 -0
  205. data/samples/po/de/hellotk.po +20 -0
  206. data/samples/po/es/hello.po +21 -0
  207. data/samples/po/es/hello2.po +28 -0
  208. data/samples/po/es/hello_noop.po +24 -0
  209. data/samples/po/es/hello_plural.po +23 -0
  210. data/samples/po/es/helloglade2.po +28 -0
  211. data/samples/po/es/hellogtk.po +20 -0
  212. data/samples/po/es/hellotk.po +20 -0
  213. data/samples/po/fr/hello.po +18 -0
  214. data/samples/po/fr/hello2.po +26 -0
  215. data/samples/po/fr/hello_noop.po +22 -0
  216. data/samples/po/fr/hello_plural.po +21 -0
  217. data/samples/po/fr/helloglade2.po +27 -0
  218. data/samples/po/fr/hellogtk.po +18 -0
  219. data/samples/po/fr/hellotk.po +18 -0
  220. data/samples/po/hello.pot +20 -0
  221. data/samples/po/hello2.pot +28 -0
  222. data/samples/po/hello_noop.pot +24 -0
  223. data/samples/po/hello_plural.pot +22 -0
  224. data/samples/po/helloglade2.pot +27 -0
  225. data/samples/po/hellogtk.pot +20 -0
  226. data/samples/po/hellotk.pot +20 -0
  227. data/samples/po/it/hello.po +20 -0
  228. data/samples/po/it/hello2.po +28 -0
  229. data/samples/po/it/hello_noop.po +24 -0
  230. data/samples/po/it/hello_plural.po +24 -0
  231. data/samples/po/it/helloglade2.po +28 -0
  232. data/samples/po/it/hellogtk.po +21 -0
  233. data/samples/po/it/hellotk.po +21 -0
  234. data/samples/po/ja/hello.po +20 -0
  235. data/samples/po/ja/hello2.po +28 -0
  236. data/samples/po/ja/hello_noop.po +23 -0
  237. data/samples/po/ja/hello_plural.po +22 -0
  238. data/samples/po/ja/helloglade2.po +26 -0
  239. data/samples/po/ja/hellogtk.po +19 -0
  240. data/samples/po/ja/hellotk.po +19 -0
  241. data/samples/po/ko/hello.po +19 -0
  242. data/samples/po/ko/hello2.po +27 -0
  243. data/samples/po/ko/hello_noop.po +23 -0
  244. data/samples/po/ko/hello_plural.po +23 -0
  245. data/samples/po/ko/helloglade2.po +29 -0
  246. data/samples/po/ko/hellogtk.po +19 -0
  247. data/samples/po/ko/hellotk.po +20 -0
  248. data/samples/po/pt_BR/hello.po +20 -0
  249. data/samples/po/pt_BR/hello2.po +28 -0
  250. data/samples/po/pt_BR/hello_noop.po +24 -0
  251. data/samples/po/pt_BR/hello_plural.po +23 -0
  252. data/samples/po/pt_BR/helloglade2.po +28 -0
  253. data/samples/po/pt_BR/hellogtk.po +20 -0
  254. data/samples/po/pt_BR/hellotk.po +20 -0
  255. data/samples/po/sv/hello.po +20 -0
  256. data/samples/po/sv/hello2.po +28 -0
  257. data/samples/po/sv/hello_noop.po +24 -0
  258. data/samples/po/sv/hello_plural.po +23 -0
  259. data/samples/po/sv/helloglade2.po +28 -0
  260. data/samples/po/sv/hellogtk.po +20 -0
  261. data/samples/po/sv/hellotk.po +20 -0
  262. data/samples/rails/README +79 -0
  263. data/samples/rails/Rakefile +212 -0
  264. data/samples/rails/app/controllers/application.rb +37 -0
  265. data/samples/rails/app/controllers/blog_controller.rb +62 -0
  266. data/samples/rails/app/helpers/application_helper.rb +3 -0
  267. data/samples/rails/app/helpers/blog_helper.rb +61 -0
  268. data/samples/rails/app/models/article.rb +2 -0
  269. data/samples/rails/app/views/blog/_form.rhtml +25 -0
  270. data/samples/rails/app/views/blog/edit.rhtml +22 -0
  271. data/samples/rails/app/views/blog/list.rhtml +30 -0
  272. data/samples/rails/app/views/blog/new.rhtml +21 -0
  273. data/samples/rails/app/views/blog/show.rhtml +18 -0
  274. data/samples/rails/app/views/layouts/blog.rhtml +36 -0
  275. data/samples/rails/config/database.yml +32 -0
  276. data/samples/rails/config/environment.rb +88 -0
  277. data/samples/rails/config/environments/development.rb +14 -0
  278. data/samples/rails/config/environments/production.rb +8 -0
  279. data/samples/rails/config/environments/test.rb +17 -0
  280. data/samples/rails/config/routes.rb +19 -0
  281. data/samples/rails/db/mysql.sql +8 -0
  282. data/samples/rails/db/postgresql.sql +7 -0
  283. data/samples/rails/locale/de/LC_MESSAGES/blog.mo +0 -0
  284. data/samples/rails/locale/de/LC_MESSAGES/lang_helper.mo +0 -0
  285. data/samples/rails/locale/es/LC_MESSAGES/blog.mo +0 -0
  286. data/samples/rails/locale/es/LC_MESSAGES/lang_helper.mo +0 -0
  287. data/samples/rails/locale/fr/LC_MESSAGES/blog.mo +0 -0
  288. data/samples/rails/locale/fr/LC_MESSAGES/lang_helper.mo +0 -0
  289. data/samples/rails/locale/ja/LC_MESSAGES/blog.mo +0 -0
  290. data/samples/rails/locale/ja/LC_MESSAGES/lang_helper.mo +0 -0
  291. data/samples/rails/locale/ko/LC_MESSAGES/blog.mo +0 -0
  292. data/samples/rails/locale/ko/LC_MESSAGES/lang_helper.mo +0 -0
  293. data/samples/rails/po/blog.pot +90 -0
  294. data/samples/rails/po/de/blog.po +91 -0
  295. data/samples/rails/po/de/lang_helper.po +28 -0
  296. data/samples/rails/po/es/blog.po +90 -0
  297. data/samples/rails/po/es/lang_helper.po +28 -0
  298. data/samples/rails/po/fr/blog.po +89 -0
  299. data/samples/rails/po/fr/lang_helper.po +27 -0
  300. data/samples/rails/po/ja/blog.po +89 -0
  301. data/samples/rails/po/ja/lang_helper.po +28 -0
  302. data/samples/rails/po/ko/blog.po +87 -0
  303. data/samples/rails/po/ko/lang_helper.po +26 -0
  304. data/samples/rails/po/lang_helper.pot +28 -0
  305. data/samples/rails/public/404.html +8 -0
  306. data/samples/rails/public/500.html +8 -0
  307. data/samples/rails/public/dispatch.cgi +10 -0
  308. data/samples/rails/public/dispatch.fcgi +24 -0
  309. data/samples/rails/public/dispatch.rb +10 -0
  310. data/samples/rails/public/favicon.ico +0 -0
  311. data/samples/rails/public/index.html +78 -0
  312. data/samples/rails/public/javascripts/controls.js +446 -0
  313. data/samples/rails/public/javascripts/dragdrop.js +537 -0
  314. data/samples/rails/public/javascripts/effects.js +612 -0
  315. data/samples/rails/public/javascripts/prototype.js +1038 -0
  316. data/samples/rails/public/stylesheets/blog.css +132 -0
  317. data/samples/rails/public/stylesheets/scaffold.css +74 -0
  318. data/samples/rails/script/benchmarker +19 -0
  319. data/samples/rails/script/breakpointer +4 -0
  320. data/samples/rails/script/console +23 -0
  321. data/samples/rails/script/destroy +7 -0
  322. data/samples/rails/script/generate +7 -0
  323. data/samples/rails/script/profiler +34 -0
  324. data/samples/rails/script/runner +29 -0
  325. data/samples/rails/script/server +49 -0
  326. data/samples/rails/test/fixtures/articles.yml +5 -0
  327. data/samples/rails/test/functional/blog_controller_test.rb +88 -0
  328. data/samples/rails/test/test_helper.rb +26 -0
  329. data/samples/rails/test/unit/article_test.rb +14 -0
  330. data/samples/rails/vendor/lang_helper.rb +49 -0
  331. data/setup.rb +1360 -0
  332. data/src/rmsgfmt.ry +233 -0
  333. data/test/README +10 -0
  334. data/test/gettext_runner.rb +18 -0
  335. data/test/gettext_test.rb +202 -0
  336. data/test/gettext_test_parser.rb +80 -0
  337. data/test/locale/cr/LC_MESSAGES/plural.mo +0 -0
  338. data/test/locale/da/LC_MESSAGES/plural.mo +0 -0
  339. data/test/locale/da/LC_MESSAGES/plural_error.mo +0 -0
  340. data/test/locale/fr/LC_MESSAGES/plural.mo +0 -0
  341. data/test/locale/fr/LC_MESSAGES/plural_error.mo +0 -0
  342. data/test/locale/fr/LC_MESSAGES/test1.mo +0 -0
  343. data/test/locale/fr/LC_MESSAGES/test2.mo +0 -0
  344. data/test/locale/ir/LC_MESSAGES/plural.mo +0 -0
  345. data/test/locale/ja/LC_MESSAGES/plural.mo +0 -0
  346. data/test/locale/ja/LC_MESSAGES/plural_error.mo +0 -0
  347. data/test/locale/ja/LC_MESSAGES/test1.mo +0 -0
  348. data/test/locale/ja/LC_MESSAGES/test2.mo +0 -0
  349. data/test/locale/ja/LC_MESSAGES/test_rubyparser.mo +0 -0
  350. data/test/locale/ja/LC_MESSAGES/test_sgettext.mo +0 -0
  351. data/test/locale/la/LC_MESSAGES/plural.mo +0 -0
  352. data/test/locale/li/LC_MESSAGES/plural.mo +0 -0
  353. data/test/locale/po/LC_MESSAGES/plural.mo +0 -0
  354. data/test/locale/sl/LC_MESSAGES/plural.mo +0 -0
  355. data/test/po/cr/plural.po +23 -0
  356. data/test/po/da/plural.po +22 -0
  357. data/test/po/da/plural_error.po +20 -0
  358. data/test/po/fr/plural.po +22 -0
  359. data/test/po/fr/plural_error.po +19 -0
  360. data/test/po/fr/test1.po +23 -0
  361. data/test/po/fr/test2.po +19 -0
  362. data/test/po/ir/plural.po +23 -0
  363. data/test/po/ja/plural.po +22 -0
  364. data/test/po/ja/plural_error.po +20 -0
  365. data/test/po/ja/test1.po +23 -0
  366. data/test/po/ja/test2.po +19 -0
  367. data/test/po/ja/test_rubyparser.po +43 -0
  368. data/test/po/ja/test_sgettext.po +47 -0
  369. data/test/po/la/plural.po +23 -0
  370. data/test/po/li/plural.po +23 -0
  371. data/test/po/po/plural.po +23 -0
  372. data/test/po/sl/plural.po +24 -0
  373. data/test/test.sh +7 -0
  374. data/test/test_erb.rhtml +15 -0
  375. data/test/test_gladeparser.glade +183 -0
  376. data/test/test_rubyparser.rb +77 -0
  377. data/test/test_rubyparser_N.rb +66 -0
  378. data/test/test_rubyparser_n.rb +64 -0
  379. data/test/test_sgettext.rb +48 -0
  380. data/test/testlib1.rb +20 -0
  381. data/test/testlib2.rb +11 -0
  382. data/test/testlib3.rb +12 -0
  383. data/test/testlib4.rb +11 -0
  384. metadata +580 -0
data/NEWS ADDED
@@ -0,0 +1,99 @@
1
+ = Ruby-GetText-Package-1.0.0 (2005-09-03)
2
+
3
+ * Ruby on Rails is supported.
4
+ Includes sample in samples/rails/
5
+ * gem is supported. ($ gem install gettext)
6
+ * rake is supported.
7
+ * Not required racc anymore on installing time.
8
+ * New/Updated translations:
9
+ French - Laurent Sansonetti
10
+ German - Sven Herzberg
11
+ Japanese - Masao Mutoh
12
+ Korean - Gyoung-Yoon Noh (NEW)
13
+ Spanish - David Espada
14
+ * bugfixes.
15
+
16
+ * Moved to http://rubyforge.org/projects/gettext/
17
+ * Mailinglists started.
18
+
19
+
20
+ = Ruby-GetText-Package-0.9.0 (2005-05-01)
21
+
22
+ * CGI support: gettext/cgi
23
+ * ERB support: gettext/erb, rgettext.
24
+ * Added samples for CGI/ERB to samples/cgi/.
25
+ * bugfixes.
26
+
27
+
28
+ = Ruby-GetText-Package-0.8.1 (2005-03-30)
29
+
30
+ * bugfixes.
31
+ * New Translations: pt_BR by Joao Pedrosa.
32
+
33
+
34
+ = Ruby-GetText-Package-0.8.0 (2004-11-06)
35
+
36
+ * rgettext: Improved to parse ruby script.
37
+ * New Translations:
38
+ French - Laurent Sansonetti
39
+ Spanish - David Espada
40
+ Swedish - Nikolai Weibull
41
+ * Fixed bugs.
42
+
43
+
44
+ = Ruby-GetText-Package-0.7.0 (2004-10-25)
45
+
46
+ * Support GetText.sgettext.
47
+ See: http://www.gnu.org/software/gettext/manual/html_mono/gettext.html#SEC151
48
+ * Added gettext/iconv.rb.
49
+ If your ruby distribution doesn't have iconv.so but Ruby-GNOME2(Ruby/GTK2),
50
+ gettext/iconv.rb provides pseudo Iconv.iconv using Ruby/GLib module.
51
+ * GETTEXT_PATH as new environment variables. Define GETTEXT_PATH as locale
52
+ diretories. You can debug/test your application unless installing catalog
53
+ files.
54
+ * Update setup.rb(by Minero Aoki).
55
+ * Fix misc bugs
56
+
57
+
58
+ = Ruby-GetText-Package-0.6.1 (2004-07-23)
59
+
60
+ * rgettext: Fixed a bug of glade XML mode.
61
+ * Fixed an installation problem.
62
+ * Changed the installer from install.rb to setup.rb.
63
+
64
+
65
+ = Ruby-GetText-Package-0.6.0 (2004-07-05)
66
+
67
+ * rgettext: Support glade-2 XML file format.
68
+ * rgettext: Improved to parse ruby sources.
69
+ * rmsgfmt: Fix a bug that it generated wrong mo format.
70
+ * Fix bugs
71
+
72
+ = Ruby-GetText-Package-0.5.5 (2004-03-26)
73
+
74
+ * Fix a bug.
75
+
76
+ = Ruby-GetText-Package-0.5.4 (2004-02-14)
77
+
78
+ * Improved to support ruby-1.9.x.
79
+
80
+ = Ruby-GetText-Package-0.5.3 (2004-02-14)
81
+
82
+ * Improve the initial speed.
83
+
84
+ = Ruby-GetText-Package-0.5.2 (2003-11-12)
85
+
86
+ * Fix bugs for Win32.
87
+
88
+ = Ruby-GetText-Package-0.5.1 (2003-07-05)
89
+
90
+ * Fix bugs. Code cleanup.
91
+
92
+ = Ruby-GetText-Package-0.5.0 (2003-01-08)
93
+
94
+ * rmsgfmt: Added.
95
+ rmsgfmt is a ruby implementation of msgfmt in GNU gettext.
96
+ It creates a mo-file from a po-file.
97
+ * Fix bugs.
98
+
99
+
data/README ADDED
@@ -0,0 +1,112 @@
1
+ Ruby-Gettext-Package
2
+ ====================
3
+
4
+ Ruby-GetText-Package is Native Language Support Library and Tools
5
+ which modeled after GNU gettext package.
6
+
7
+ Features:
8
+
9
+ * Simple APIs(similar GNU gettext)
10
+
11
+ * rgettext creates po-files from
12
+ * ruby scripts
13
+ * glade-2 XML file(.glade)
14
+ * ERB file(.rhtml)
15
+ The po-file is compatible to GNU gettext.
16
+
17
+ * rmsgfmt creates a mo-file from a po-file.
18
+ The mo-file is compatible to GNU gettext(msgfmt).
19
+
20
+ * 2 kind of textdomain's scope
21
+ * A file base (default: recommanded)
22
+ * A Class/Module base
23
+ (GetText::Container, GetText::ErbContainer, GetText::Rails)
24
+
25
+ * CGI support (gettext/cgi)
26
+
27
+ * ERB support (gettext/erb)
28
+
29
+ * Ruby on Rails support (gettext/rails)
30
+
31
+
32
+ Requirements
33
+ ------------
34
+
35
+ * Ruby 1.8.2 or later <http://www.ruby-lang.org/ja/>
36
+ * GNU gettext 0.10.35 or later
37
+ <http://www.gnu.org/software/gettext/gettext.html>
38
+ (for Development only)
39
+ * Racc-1.4.3 or later
40
+ <http://www.ruby-lang.org/raa/list.rhtml?name=racc>
41
+ (for compiling src/rmsgfmt.ry only)
42
+
43
+ Install
44
+ -------
45
+
46
+ De-Compress archive and enter its top directory.
47
+ Then type:
48
+
49
+ ($ su)
50
+ # ruby setup.rb
51
+
52
+ You can also install files in your favor directory by
53
+ supplying setup.rb some options. Try "ruby setup.rb --help".
54
+
55
+ Usage
56
+ -----
57
+
58
+ If you are end-user of an application which depends on this library,
59
+ you don't need do nothing (See applications documents).
60
+
61
+ If you are developer of the application which depends on this library,
62
+ see:
63
+ http://gettext.rubyforge.org/ (English)
64
+ http://gettext.rubyforge.org/ja/ (Japanese)
65
+
66
+
67
+ License
68
+ -------
69
+ This program is licenced under the same licence as Ruby.
70
+ (See the file 'COPYING'.)
71
+
72
+ * Ruby-GetText-Package
73
+ Copyright (C) 2001-2005 Masao Mutoh <mutoh@highwhay.ne.jp>
74
+
75
+ * mo.rb
76
+ Copyright (C) 2001-2004 Masao Mutoh <mutoh@highwhay.ne.jp>
77
+ Copyright (C) 2001,2002 Masahiro Sakai <s01397ms@sfc.keio.ac.jp>
78
+
79
+ * gettext.rb
80
+ Copyright (C) 2001-2005 Masao Mutoh <mutoh@highwhay.ne.jp>
81
+ Copyright (C) 2001,2002 Masahiro Sakai <s01397ms@sfc.keio.ac.jp>
82
+
83
+ * rgettext
84
+ Copyright (C) 2001-2005 Masao Mutoh <mutoh@highwhay.ne.jp>
85
+ Copyright (C) 2001,2002 Yasushi Shoji <yashi@yashi.com>
86
+
87
+ * rmsgfmt
88
+ Copyright (C) 2003,2005 Masao Mutoh <mutoh@highwhay.ne.jp>
89
+
90
+ * setup.rb
91
+ Copyright (C) 2000-2004 Minero Aoki <aamine@loveruby.net>
92
+ This file is released under LGPL. See the top of the install.rb.
93
+
94
+ * Others
95
+ Copyright (C) 2001-2005 Masao Mutoh <mutoh@highwhay.ne.jp>
96
+
97
+
98
+ Translators
99
+ -----------
100
+ French - Laurent Sansonetti
101
+ German - Detlef Reichl, Sven Herzberg
102
+ Italian - Gabriele Renzi
103
+ Japanese - Masao Mutoh
104
+ Korean - Gyoung-Yoon Noh
105
+ Portuguese(Brazil) - Joao Pedrosa
106
+ Spanish - David Espada, David Moreno Garza
107
+ Swedish - Nikolai Weibull
108
+
109
+
110
+ Maintainer
111
+ ----------
112
+ Masao Mutoh<mutoh@highway.ne.jp>
data/README.ja ADDED
@@ -0,0 +1,115 @@
1
+ Ruby-Gettext-Package
2
+ ====================
3
+
4
+ Ruby-Gettext-Package �� GNU gettext package�ˤ褯�����饤�֥��Ǥ�������
5
+ �饤�֥���Ȥ����ȤǤ��ʤ���Ruby������ץ����ʸ������ñ�˥������饤��
6
+ �Ǥ�����ݲ����줿���ץꥱ���������뤳�Ȥ��Ǥ��ޤ���
7
+
8
+ Ruby-Gettext-Package����ħ
9
+ ---------------------------
10
+ * GNU gettext�ˤ褯����API
11
+ Ruby�����֥������Ȼظ��ʥ�����ץȸ���Ǥ��뤳�Ȥ��顢GNU gettext���
12
+ ����ץ��API�ȤʤäƤ��ޤ���
13
+
14
+ * rgettext���Ѥ��ơ�Ruby������ץȡ�glade-2 XML�ե�����(.glade)��
15
+ ERB�ե�����(.rhtml)���������������ե�����(po[t]�ե�����)�������Ǥ��ޤ���
16
+
17
+ * ������������ե�����(po[t]�ե�����)��GNU gettext �ߴ��Ǥ�������ˡ�
18
+ ruby-gettext-package �� ź�դ�rmsgfmt(���뤤��GNU gettext �λ��� msgfmt)
19
+ ���Ѥ���GNU gettext�ߴ���mo�ե�������������ޤ���
20
+ �ޤ���GNU gettext�˴ޤޤ��msgmerge ���Υġ���� GNU gettext ����������
21
+ po�ե������Ʊ�ͤ˻��ѤǤ��ޤ���
22
+
23
+ * 2����Υƥ����ȥɥᥤ�󥹥�����
24
+ * �ե�����ñ�� (�ǥե����: �侩)
25
+ * ���饹/�⥸�塼��ñ��
26
+ (GetText::Container, GetText::ErbContainer, GetText::Rails)
27
+
28
+ * CGI���ݡ��� (gettext/cgi)
29
+
30
+ * ERB���ݡ��� (gettext/erb)
31
+
32
+ * Ruby on Rails���ݡ��� (gettext/rails)
33
+
34
+
35
+ ɬ�״Ķ�
36
+ --------
37
+ * Ruby 1.8.2 <http://www.ruby-lang.org/ja/>
38
+ * GNU gettext 0.10.35
39
+ <http://www.gnu.org/software/gettext/gettext.html>
40
+ msgmerge����GNU gettext�Υġ����Ȥ����Ȥ��Ǥ��ޤ���
41
+ ��ȯ���ˤϤ��ä����������Ǥ���
42
+ * Racc-1.4.3
43
+ <http://www.ruby-lang.org/raa/list.rhtml?name=racc>
44
+ ���󥹥ȡ������ɬ�פǤ���gem�ǥ��󥹥ȡ��뤹��������פǤ���
45
+
46
+ ���󥹥ȡ�����ˡ
47
+ ----------------
48
+ ���ޥ�ɥ饤��ǰʲ��Τ褦�ˤ�������Ǥ���������
49
+ UNIX �� OS �ǤϤ����餯 root ���¤�ɬ�פˤʤ�ޤ���
50
+
51
+ ($ su)
52
+ # ruby setup.rb
53
+
54
+ ���󥹥ȡ�������ѹ������ꤹ�뤳�Ȥ�Ǥ��ޤ���
55
+ ���ξ��� ruby setup.rb --help ��¹Ԥ��ƤߤƤ���������
56
+
57
+ �Ȥ���
58
+ ------
59
+ ���ʤ����ܥ饤�֥��˰�¸�������ץꥱ�����������Ѥ���桼���Ǥ������
60
+ ñ����ܥ饤�֥��򥤥󥹥ȡ��뤹������Ǥ���
61
+ ɬ�פ˱����ƥ��ץꥱ�������Υɥ�����Ȥ򻲾Ȥ��Ƥ���������
62
+
63
+ ���ʤ����ܥ饤�֥��˰�¸�������ץꥱ�������ȯ�ԤǤ�����ϰʲ���URL
64
+ �򻲾Ȥ��Ƥ���������
65
+
66
+ http://gettext.rubyforge.org/ (English)
67
+ http://gettext.rubyforge.org/ja/ (Japanese)
68
+
69
+ �饤����
70
+ ----------
71
+ ���Υ饤�֥���Ruby��Ʊ���饤���󥹤˴�Ť������ۤ����ե꡼���եȥ�����
72
+ �Ǥ����ܤ�����COPYING.ja�򻲾Ȥ��Ƥ���������
73
+
74
+ * Ruby-GetText-Package
75
+ Copyright (C) 2001-2005 Masao Mutoh <mutoh@highwhay.ne.jp>
76
+
77
+ * mo.rb
78
+ Copyright (C) 2001-2004 Masao Mutoh <mutoh@highwhay.ne.jp>
79
+ Copyright (C) 2001,2002 Masahiro Sakai <s01397ms@sfc.keio.ac.jp>
80
+
81
+ * gettext.rb
82
+ Copyright (C) 2001-2005 Masao Mutoh <mutoh@highwhay.ne.jp>
83
+ Copyright (C) 2001,2002 Masahiro Sakai <s01397ms@sfc.keio.ac.jp>
84
+
85
+ * rgettext
86
+ Copyright (C) 2001-2005 Masao Mutoh <mutoh@highwhay.ne.jp>
87
+ Copyright (C) 2001,2002 Yasushi Shoji <yashi@yashi.com>
88
+
89
+ * rmsgfmt
90
+ Copyright (C) 2003,2005 Masao Mutoh <mutoh@highwhay.ne.jp>
91
+
92
+ * setup.rb
93
+ Copyright (C) 2000-2004 Minero Aoki <aamine@loveruby.net>
94
+ This file is released under LGPL. See the top of the install.rb.
95
+
96
+ * rmsgfmt and others
97
+ Copyright (C) 2001-2005 Masao Mutoh <mutoh@highwhay.ne.jp>
98
+
99
+
100
+ ������
101
+ ------
102
+ French - Laurent Sansonetti
103
+ German - Detlef Reichl, Sven Herzberg
104
+ Italian - Gabriele Renzi
105
+ Korean - Gyoung-Yoon Noh
106
+ Japanese - Masao Mutoh
107
+ Portuguese(Brazil) - Joao Pedrosa
108
+ Spanish - David Espada, David Moreno Garza
109
+ Swedish - Nikolai Weibull
110
+
111
+
112
+ ���ƥ�
113
+ --------
114
+ �ܥ饤�֥��ˤĤ��ƤΤ��ո����Х���ݡ��Ȥ���ƣ�ޤǡ�
115
+ Masao Mutoh <mutoh@highway.ne.jp>
data/Rakefile ADDED
@@ -0,0 +1,170 @@
1
+ #
2
+ # Rakefile for Ruby-GetText-Package
3
+ #
4
+ # This file maintains Ruby-GetText-Package.
5
+ #
6
+ # Use setup.rb or gem for installation.
7
+ # You don't need to use this file directly.
8
+ #
9
+ # Copyright(c) 2005 Masao Mutoh
10
+ # This program is licenced under the same licence as Ruby.
11
+ #
12
+
13
+ $:.unshift "./lib"
14
+
15
+ require 'rubygems'
16
+ require 'rake'
17
+ require 'rake/packagetask'
18
+ require 'rake/gempackagetask'
19
+
20
+ RUBYBIN = File.join(Config::CONFIG['bindir'], Config::CONFIG['ruby_install_name']) + " "
21
+
22
+ task :default => [:makemo]
23
+
24
+ ############################################################
25
+ # GetText tasks
26
+ ############################################################
27
+ desc "Create lib/gettext/rmsgfmt.rb"
28
+ task :rmsgfmt do
29
+ racc = File.join(Config::CONFIG['bindir'], "racc")
30
+ if FileTest.exist?(racc)
31
+ cmd = "#{RUBYBIN} #{racc} -g src/rmsgfmt.ry -o src/rmsgfmt.tmp.rb"
32
+ system(cmd)
33
+ $stderr.puts cmd
34
+
35
+ file = open("lib/gettext/rmsgfmt.rb", "w")
36
+
37
+ file.print "=begin\n"
38
+ file.print <<-EOS
39
+ rmsgfmt.rb - Generate a .mo
40
+
41
+ Copyright (C) 2003-2005 Masao Mutoh <mutoh@highway.ne.jp>
42
+
43
+ You may redistribute it and/or modify it under the same
44
+ license terms as Ruby.
45
+ EOS
46
+ file.print "=end\n\n"
47
+
48
+ tmpfile = open("src/rmsgfmt.tmp.rb")
49
+ file.print tmpfile.read
50
+ file.close
51
+ tmpfile.close
52
+ File.delete("src/rmsgfmt.tmp.rb")
53
+ end
54
+ end
55
+
56
+ task :makemo_test do
57
+ require 'gettext/rmsgfmt'
58
+ $stderr.puts "Create test mo files."
59
+ GetText.create_mofiles(false, "test/po", "test/locale")
60
+ end
61
+
62
+ desc "Create *.mo from *.po"
63
+ task :makemo => [:rmsgfmt, :makemo_test] do
64
+ require 'gettext/rmsgfmt'
65
+
66
+ $stderr.puts "Create rgettext/rmsgfmt mo files."
67
+ GetText.create_mofiles(false)
68
+
69
+ $stderr.puts "Create samples mo files."
70
+ GetText.create_mofiles(false, "samples/po", "samples/locale")
71
+
72
+ $stderr.puts "Create samples/cgi mo files."
73
+ GetText.create_mofiles(false, "samples/cgi/po", "samples/cgi/locale")
74
+
75
+ $stderr.puts "Create samples/rails mo files."
76
+ GetText.create_mofiles(false, "samples/rails/po", "samples/rails/locale")
77
+
78
+ end
79
+
80
+ def msgmerge(name, po_root, tmp_file = "tmp.pot")
81
+ system("msgmerge #{po_root}/#{name}.pot #{tmp_file} -o #{po_root}/#{name}.pot")
82
+
83
+ Dir.glob("#{po_root}/*/#{name}.po"){ |f|
84
+ lang = /#{po_root}\/(.*)\//.match(f).to_a[1]
85
+ system("msgmerge #{po_root}/#{lang}/#{name}.po #{tmp_file} -o #{po_root}/#{lang}/#{name}.po")
86
+ cont =IO.read(f)
87
+ cont.sub!(/(Project-Id-Version\:.*)(\d\.\d\.\d)/, "\\1#{GetText::VERSION}")
88
+ File.open(f, "w") do |out|
89
+ out.write(cont)
90
+ end
91
+ }
92
+ end
93
+
94
+ desc "Update *po files to match new version.(for me)"
95
+ task :updatepo do
96
+ require 'gettext/rgettext'
97
+ # Update rgettext po files.
98
+ GetText.rgettext("lib/gettext/rgettext.rb", "tmp.pot")
99
+ msgmerge("rgettext", "po")
100
+
101
+ # Update rmsgfmt po files.
102
+ GetText.rgettext("lib/gettext/rmsgfmt.rb", "tmp.pot")
103
+ msgmerge("rmsgfmt", "po")
104
+ File.delete("tmp.pot")
105
+ end
106
+
107
+ desc "Setup Ruby-GetText-Package. (for setup.rb)"
108
+ task :setup => [:makemo]
109
+
110
+ ############################################################
111
+ # Package tasks
112
+ ############################################################
113
+ require 'gettext/version'
114
+
115
+ PKG_VERSION = GetText::VERSION
116
+ desc "Create gem and tar.gz"
117
+ spec = Gem::Specification.new do |s|
118
+ s.name = 'gettext'
119
+ s.version = PKG_VERSION
120
+ if /mswin32/ =~ RUBY_PLATFORM
121
+ s.platform = Gem::Platform::WIN32
122
+ FileUtils.cd 'ext/gettext/gettext/' do
123
+ system "#{RUBYBIN} extconf.rb"
124
+ system "nmake"
125
+ FileUtils.cp '_locale.so', '../../../lib/'
126
+ end
127
+ else
128
+ s.extensions << "ext/gettext/gettext/extconf.rb"
129
+ s.extensions.concat Dir.glob('**/extconf.rb')
130
+ end
131
+ s.summary = 'Ruby-GetText-Package is Native Language Support Library and Tools which modeled after GNU gettext package.'
132
+ s.author = 'Masao Mutoh'
133
+ s.email = 'mutoh@highway.ne.jp'
134
+ s.homepage = 'http://ponx.s5.xrea.com/hiki/ruby-gettext.html'
135
+ s.rubyforge_project = "gettext"
136
+ s.files = FileList['**/*'].to_a.select{|v| v !~ /pkg|CVS/}
137
+ s.require_path = 'lib'
138
+ s.executables = Dir.entries('bin').delete_if {|item| /^\.|CVS|~$/ =~ item }
139
+ s.bindir = 'bin'
140
+ s.description = <<-EOF
141
+ Ruby-GetText-Package is a GNU GetText-like program for Ruby.
142
+ The catalog file(po-file) is same format with GNU GetText.
143
+ So you can use GNU GetText tools for maintaining.
144
+ EOF
145
+ end
146
+
147
+ unless /mswin32/ =~ RUBY_PLATFORM
148
+ Rake::PackageTask.new("ruby-gettext-package", PKG_VERSION) do |p|
149
+ p.package_files = FileList['**/*'].to_a.select{|v| v !~ /pkg|CVS/}
150
+ p.need_tar_gz = true
151
+ p.need_zip = false
152
+ end
153
+ end
154
+
155
+ Rake::GemPackageTask.new(spec) do |p|
156
+ p.gem_spec = spec
157
+ p.need_tar_gz = false
158
+ p.need_zip = false
159
+ end
160
+
161
+
162
+ ############################################################
163
+ # Misc tasks
164
+ ############################################################
165
+ desc "Test task (for shell environment only)"
166
+ task :test => [:makemo_test] do
167
+ unless /mswin32/ =~ RUBY_PLATFORM
168
+ sh 'cd test; sh test.sh'
169
+ end
170
+ end