grosser-gettext 2.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 (406) hide show
  1. data/ChangeLog +2014 -0
  2. data/README.rdoc +172 -0
  3. data/Rakefile +192 -0
  4. data/bin/rgettext +24 -0
  5. data/bin/rmsgfmt +24 -0
  6. data/bin/rmsgmerge +24 -0
  7. data/gettext.gemspec +39 -0
  8. data/lib/gettext.rb +263 -0
  9. data/lib/gettext/cgi.rb +40 -0
  10. data/lib/gettext/class_info.rb +55 -0
  11. data/lib/gettext/core_ext/iconv.rb +109 -0
  12. data/lib/gettext/core_ext/string.rb +63 -0
  13. data/lib/gettext/mofile.rb +320 -0
  14. data/lib/gettext/parser/erb.rb +50 -0
  15. data/lib/gettext/parser/glade.rb +99 -0
  16. data/lib/gettext/parser/ruby.rb +170 -0
  17. data/lib/gettext/poparser.rb +332 -0
  18. data/lib/gettext/textdomain.rb +225 -0
  19. data/lib/gettext/textdomain_manager.rb +218 -0
  20. data/lib/gettext/tools.rb +177 -0
  21. data/lib/gettext/tools/rgettext.rb +275 -0
  22. data/lib/gettext/tools/rmsgfmt.rb +84 -0
  23. data/lib/gettext/tools/rmsgmerge.rb +505 -0
  24. data/lib/gettext/utils.rb +39 -0
  25. data/lib/gettext/version.rb +12 -0
  26. data/po/bg/rgettext.po +150 -0
  27. data/po/bs/rgettext.po +151 -0
  28. data/po/ca/rgettext.po +149 -0
  29. data/po/cs/rgettext.po +152 -0
  30. data/po/de/#rails.po# +175 -0
  31. data/po/de/rgettext.po +157 -0
  32. data/po/el/rgettext.po +148 -0
  33. data/po/eo/rgettext.po +149 -0
  34. data/po/es/rgettext.po +150 -0
  35. data/po/et/rgettext.po +147 -0
  36. data/po/fr/rgettext.po +153 -0
  37. data/po/hr/rgettext.po +151 -0
  38. data/po/hu/rgettext.po +149 -0
  39. data/po/it/rgettext.po +150 -0
  40. data/po/ja/rails.po.old +150 -0
  41. data/po/ja/rgettext.po +149 -0
  42. data/po/ko/rgettext.po +149 -0
  43. data/po/lv/rgettext.po +150 -0
  44. data/po/nb/rgettext.po +151 -0
  45. data/po/nl/rgettext.po +150 -0
  46. data/po/pt_BR/rgettext.po +152 -0
  47. data/po/rgettext.pot +141 -0
  48. data/po/ru/rgettext.po +151 -0
  49. data/po/sr/rgettext.po +150 -0
  50. data/po/sv/rgettext.po +143 -0
  51. data/po/ua/rgettext.po +155 -0
  52. data/po/vi/rgettext.po +148 -0
  53. data/po/zh/rgettext.po +149 -0
  54. data/po/zh_TW/rgettext.po +148 -0
  55. data/samples/README +16 -0
  56. data/samples/cgi/README +43 -0
  57. data/samples/cgi/Rakefile +27 -0
  58. data/samples/cgi/cookie.cgi +64 -0
  59. data/samples/cgi/gettext.css +116 -0
  60. data/samples/cgi/helloerb.rhtml +28 -0
  61. data/samples/cgi/helloerb1.cgi +58 -0
  62. data/samples/cgi/helloerb2.cgi +51 -0
  63. data/samples/cgi/hellolib.rb +20 -0
  64. data/samples/cgi/http.rb +51 -0
  65. data/samples/cgi/index.cgi +111 -0
  66. data/samples/cgi/other.rhtml +20 -0
  67. data/samples/cgi/po/bg/helloerb1.po +59 -0
  68. data/samples/cgi/po/bg/helloerb2.po +51 -0
  69. data/samples/cgi/po/bg/hellolib.po +23 -0
  70. data/samples/cgi/po/bg/main.po +83 -0
  71. data/samples/cgi/po/bs/helloerb1.po +59 -0
  72. data/samples/cgi/po/bs/helloerb2.po +51 -0
  73. data/samples/cgi/po/bs/hellolib.po +23 -0
  74. data/samples/cgi/po/bs/main.po +83 -0
  75. data/samples/cgi/po/ca/helloerb1.po +59 -0
  76. data/samples/cgi/po/ca/helloerb2.po +51 -0
  77. data/samples/cgi/po/ca/hellolib.po +23 -0
  78. data/samples/cgi/po/ca/main.po +83 -0
  79. data/samples/cgi/po/cs/helloerb1.po +61 -0
  80. data/samples/cgi/po/cs/helloerb2.po +52 -0
  81. data/samples/cgi/po/cs/hellolib.po +25 -0
  82. data/samples/cgi/po/cs/main.po +85 -0
  83. data/samples/cgi/po/de/helloerb1.po +61 -0
  84. data/samples/cgi/po/de/helloerb2.po +52 -0
  85. data/samples/cgi/po/de/hellolib.po +24 -0
  86. data/samples/cgi/po/de/main.po +86 -0
  87. data/samples/cgi/po/el/helloerb1.po +60 -0
  88. data/samples/cgi/po/el/helloerb2.po +51 -0
  89. data/samples/cgi/po/el/hellolib.po +23 -0
  90. data/samples/cgi/po/el/main.po +84 -0
  91. data/samples/cgi/po/eo/helloerb1.po +60 -0
  92. data/samples/cgi/po/eo/helloerb2.po +52 -0
  93. data/samples/cgi/po/eo/hellolib.po +24 -0
  94. data/samples/cgi/po/eo/main.po +84 -0
  95. data/samples/cgi/po/es/helloerb1.po +59 -0
  96. data/samples/cgi/po/es/helloerb2.po +50 -0
  97. data/samples/cgi/po/es/hellolib.po +22 -0
  98. data/samples/cgi/po/es/main.po +83 -0
  99. data/samples/cgi/po/fr/helloerb1.po +59 -0
  100. data/samples/cgi/po/fr/helloerb2.po +51 -0
  101. data/samples/cgi/po/fr/hellolib.po +22 -0
  102. data/samples/cgi/po/fr/main.po +85 -0
  103. data/samples/cgi/po/helloerb1.pot +60 -0
  104. data/samples/cgi/po/helloerb2.pot +52 -0
  105. data/samples/cgi/po/hellolib.pot +24 -0
  106. data/samples/cgi/po/hr/helloerb1.po +59 -0
  107. data/samples/cgi/po/hr/helloerb2.po +51 -0
  108. data/samples/cgi/po/hr/hellolib.po +23 -0
  109. data/samples/cgi/po/hr/main.po +83 -0
  110. data/samples/cgi/po/hu/helloerb1.po +59 -0
  111. data/samples/cgi/po/hu/helloerb2.po +51 -0
  112. data/samples/cgi/po/hu/hellolib.po +23 -0
  113. data/samples/cgi/po/hu/main.po +82 -0
  114. data/samples/cgi/po/it/helloerb1.po +60 -0
  115. data/samples/cgi/po/it/helloerb2.po +52 -0
  116. data/samples/cgi/po/it/hellolib.po +24 -0
  117. data/samples/cgi/po/it/main.po +84 -0
  118. data/samples/cgi/po/ja/helloerb1.po +60 -0
  119. data/samples/cgi/po/ja/helloerb2.po +52 -0
  120. data/samples/cgi/po/ja/hellolib.po +24 -0
  121. data/samples/cgi/po/ja/main.po +85 -0
  122. data/samples/cgi/po/ko/helloerb1.po +59 -0
  123. data/samples/cgi/po/ko/helloerb2.po +51 -0
  124. data/samples/cgi/po/ko/hellolib.po +23 -0
  125. data/samples/cgi/po/ko/main.po +84 -0
  126. data/samples/cgi/po/lv/helloerb1.po +65 -0
  127. data/samples/cgi/po/lv/helloerb2.po +52 -0
  128. data/samples/cgi/po/lv/hellolib.po +24 -0
  129. data/samples/cgi/po/lv/main.po +77 -0
  130. data/samples/cgi/po/main.pot +80 -0
  131. data/samples/cgi/po/nb/helloerb1.po +60 -0
  132. data/samples/cgi/po/nb/helloerb2.po +52 -0
  133. data/samples/cgi/po/nb/hellolib.po +24 -0
  134. data/samples/cgi/po/nb/main.po +84 -0
  135. data/samples/cgi/po/nl/helloerb1.po +61 -0
  136. data/samples/cgi/po/nl/helloerb2.po +52 -0
  137. data/samples/cgi/po/nl/hellolib.po +24 -0
  138. data/samples/cgi/po/nl/main.po +86 -0
  139. data/samples/cgi/po/pt_BR/helloerb1.po +59 -0
  140. data/samples/cgi/po/pt_BR/helloerb2.po +51 -0
  141. data/samples/cgi/po/pt_BR/hellolib.po +23 -0
  142. data/samples/cgi/po/pt_BR/main.po +84 -0
  143. data/samples/cgi/po/ru/helloerb1.po +58 -0
  144. data/samples/cgi/po/ru/helloerb2.po +50 -0
  145. data/samples/cgi/po/ru/hellolib.po +22 -0
  146. data/samples/cgi/po/ru/main.po +82 -0
  147. data/samples/cgi/po/sr/helloerb1.po +60 -0
  148. data/samples/cgi/po/sr/helloerb2.po +52 -0
  149. data/samples/cgi/po/sr/hellolib.po +24 -0
  150. data/samples/cgi/po/sr/main.po +80 -0
  151. data/samples/cgi/po/ua/helloerb1.po +62 -0
  152. data/samples/cgi/po/ua/helloerb2.po +54 -0
  153. data/samples/cgi/po/ua/hellolib.po +26 -0
  154. data/samples/cgi/po/ua/main.po +84 -0
  155. data/samples/cgi/po/vi/helloerb1.po +65 -0
  156. data/samples/cgi/po/vi/helloerb2.po +52 -0
  157. data/samples/cgi/po/vi/hellolib.po +24 -0
  158. data/samples/cgi/po/vi/main.po +77 -0
  159. data/samples/cgi/po/zh/helloerb1.po +60 -0
  160. data/samples/cgi/po/zh/helloerb2.po +52 -0
  161. data/samples/cgi/po/zh/hellolib.po +24 -0
  162. data/samples/cgi/po/zh/main.po +80 -0
  163. data/samples/cgi/po/zh_TW/helloerb1.po +67 -0
  164. data/samples/cgi/po/zh_TW/helloerb2.po +54 -0
  165. data/samples/cgi/po/zh_TW/hellolib.po +26 -0
  166. data/samples/cgi/po/zh_TW/main.po +79 -0
  167. data/samples/hello.rb +36 -0
  168. data/samples/hello2.rb +23 -0
  169. data/samples/hello_glade2.glade +70 -0
  170. data/samples/hello_glade2.rb +25 -0
  171. data/samples/hello_gtk2.rb +27 -0
  172. data/samples/hello_noop.rb +31 -0
  173. data/samples/hello_plural.rb +26 -0
  174. data/samples/hello_tk.rb +19 -0
  175. data/samples/makemo.rb +4 -0
  176. data/samples/po/bg/hello.po +24 -0
  177. data/samples/po/bg/hello2.po +31 -0
  178. data/samples/po/bg/hello_glade2.po +31 -0
  179. data/samples/po/bg/hello_gtk.po +23 -0
  180. data/samples/po/bg/hello_noop.po +27 -0
  181. data/samples/po/bg/hello_plural.po +25 -0
  182. data/samples/po/bg/hello_tk.po +23 -0
  183. data/samples/po/bs/hello.po +23 -0
  184. data/samples/po/bs/hello2.po +31 -0
  185. data/samples/po/bs/hello_glade2.po +31 -0
  186. data/samples/po/bs/hello_gtk.po +23 -0
  187. data/samples/po/bs/hello_noop.po +27 -0
  188. data/samples/po/bs/hello_plural.po +26 -0
  189. data/samples/po/bs/hello_tk.po +23 -0
  190. data/samples/po/ca/hello.po +23 -0
  191. data/samples/po/ca/hello2.po +31 -0
  192. data/samples/po/ca/hello_glade2.po +31 -0
  193. data/samples/po/ca/hello_gtk.po +23 -0
  194. data/samples/po/ca/hello_noop.po +27 -0
  195. data/samples/po/ca/hello_plural.po +25 -0
  196. data/samples/po/ca/hello_tk.po +23 -0
  197. data/samples/po/cs/hello.po +23 -0
  198. data/samples/po/cs/hello2.po +31 -0
  199. data/samples/po/cs/hello_glade2.po +37 -0
  200. data/samples/po/cs/hello_gtk.po +23 -0
  201. data/samples/po/cs/hello_noop.po +27 -0
  202. data/samples/po/cs/hello_plural.po +26 -0
  203. data/samples/po/cs/hello_tk.po +23 -0
  204. data/samples/po/de/hello.po +20 -0
  205. data/samples/po/de/hello2.po +28 -0
  206. data/samples/po/de/hello_glade2.po +27 -0
  207. data/samples/po/de/hello_gtk.po +20 -0
  208. data/samples/po/de/hello_noop.po +24 -0
  209. data/samples/po/de/hello_plural.po +25 -0
  210. data/samples/po/de/hello_tk.po +20 -0
  211. data/samples/po/el/hello.po +23 -0
  212. data/samples/po/el/hello2.po +31 -0
  213. data/samples/po/el/hello_glade2.po +31 -0
  214. data/samples/po/el/hello_gtk.po +22 -0
  215. data/samples/po/el/hello_noop.po +27 -0
  216. data/samples/po/el/hello_plural.po +25 -0
  217. data/samples/po/el/hello_tk.po +23 -0
  218. data/samples/po/eo/hello.po +23 -0
  219. data/samples/po/eo/hello2.po +31 -0
  220. data/samples/po/eo/hello_glade2.po +32 -0
  221. data/samples/po/eo/hello_gtk.po +23 -0
  222. data/samples/po/eo/hello_noop.po +27 -0
  223. data/samples/po/eo/hello_plural.po +26 -0
  224. data/samples/po/eo/hello_tk.po +24 -0
  225. data/samples/po/es/hello.po +21 -0
  226. data/samples/po/es/hello2.po +28 -0
  227. data/samples/po/es/hello_glade2.po +28 -0
  228. data/samples/po/es/hello_gtk.po +20 -0
  229. data/samples/po/es/hello_noop.po +24 -0
  230. data/samples/po/es/hello_plural.po +23 -0
  231. data/samples/po/es/hello_tk.po +20 -0
  232. data/samples/po/fr/hello.po +18 -0
  233. data/samples/po/fr/hello2.po +26 -0
  234. data/samples/po/fr/hello_glade2.po +27 -0
  235. data/samples/po/fr/hello_gtk.po +18 -0
  236. data/samples/po/fr/hello_noop.po +22 -0
  237. data/samples/po/fr/hello_plural.po +21 -0
  238. data/samples/po/fr/hello_tk.po +18 -0
  239. data/samples/po/hello.pot +23 -0
  240. data/samples/po/hello2.pot +31 -0
  241. data/samples/po/hello_glade2.pot +32 -0
  242. data/samples/po/hello_gtk.pot +23 -0
  243. data/samples/po/hello_noop.pot +27 -0
  244. data/samples/po/hello_plural.pot +26 -0
  245. data/samples/po/hello_tk.pot +24 -0
  246. data/samples/po/hr/hello.po +23 -0
  247. data/samples/po/hr/hello2.po +31 -0
  248. data/samples/po/hr/hello_glade2.po +31 -0
  249. data/samples/po/hr/hello_gtk.po +23 -0
  250. data/samples/po/hr/hello_noop.po +27 -0
  251. data/samples/po/hr/hello_plural.po +26 -0
  252. data/samples/po/hr/hello_tk.po +23 -0
  253. data/samples/po/hu/hello.po +22 -0
  254. data/samples/po/hu/hello2.po +30 -0
  255. data/samples/po/hu/hello_glade2.po +31 -0
  256. data/samples/po/hu/hello_gtk.po +22 -0
  257. data/samples/po/hu/hello_noop.po +26 -0
  258. data/samples/po/hu/hello_plural.po +25 -0
  259. data/samples/po/hu/hello_tk.po +23 -0
  260. data/samples/po/it/hello.po +20 -0
  261. data/samples/po/it/hello2.po +28 -0
  262. data/samples/po/it/hello_glade2.po +28 -0
  263. data/samples/po/it/hello_gtk.po +21 -0
  264. data/samples/po/it/hello_noop.po +24 -0
  265. data/samples/po/it/hello_plural.po +23 -0
  266. data/samples/po/it/hello_tk.po +21 -0
  267. data/samples/po/ja/hello.po +20 -0
  268. data/samples/po/ja/hello2.po +28 -0
  269. data/samples/po/ja/hello_glade2.po +26 -0
  270. data/samples/po/ja/hello_gtk.po +19 -0
  271. data/samples/po/ja/hello_noop.po +23 -0
  272. data/samples/po/ja/hello_plural.po +21 -0
  273. data/samples/po/ja/hello_tk.po +19 -0
  274. data/samples/po/ko/hello.po +18 -0
  275. data/samples/po/ko/hello2.po +26 -0
  276. data/samples/po/ko/hello_glade2.po +29 -0
  277. data/samples/po/ko/hello_gtk.po +18 -0
  278. data/samples/po/ko/hello_noop.po +22 -0
  279. data/samples/po/ko/hello_plural.po +25 -0
  280. data/samples/po/ko/hello_tk.po +19 -0
  281. data/samples/po/lv/hello.po +24 -0
  282. data/samples/po/lv/hello2.po +32 -0
  283. data/samples/po/lv/hello_glade2.po +38 -0
  284. data/samples/po/lv/hello_gtk.po +24 -0
  285. data/samples/po/lv/hello_noop.po +28 -0
  286. data/samples/po/lv/hello_plural.po +26 -0
  287. data/samples/po/lv/hello_tk.po +24 -0
  288. data/samples/po/nb/hello.po +23 -0
  289. data/samples/po/nb/hello2.po +31 -0
  290. data/samples/po/nb/hello_glade2.po +31 -0
  291. data/samples/po/nb/hello_gtk.po +23 -0
  292. data/samples/po/nb/hello_noop.po +27 -0
  293. data/samples/po/nb/hello_plural.po +26 -0
  294. data/samples/po/nb/hello_tk.po +24 -0
  295. data/samples/po/nl/hello.po +24 -0
  296. data/samples/po/nl/hello2.po +32 -0
  297. data/samples/po/nl/hello_glade2.po +31 -0
  298. data/samples/po/nl/hello_gtk.po +24 -0
  299. data/samples/po/nl/hello_noop.po +28 -0
  300. data/samples/po/nl/hello_plural.po +25 -0
  301. data/samples/po/nl/hello_tk.po +24 -0
  302. data/samples/po/pt_BR/hello.po +21 -0
  303. data/samples/po/pt_BR/hello2.po +29 -0
  304. data/samples/po/pt_BR/hello_glade2.po +29 -0
  305. data/samples/po/pt_BR/hello_gtk.po +21 -0
  306. data/samples/po/pt_BR/hello_noop.po +25 -0
  307. data/samples/po/pt_BR/hello_plural.po +23 -0
  308. data/samples/po/pt_BR/hello_tk.po +21 -0
  309. data/samples/po/ru/hello.po +22 -0
  310. data/samples/po/ru/hello2.po +30 -0
  311. data/samples/po/ru/hello_glade2.po +30 -0
  312. data/samples/po/ru/hello_gtk.po +22 -0
  313. data/samples/po/ru/hello_noop.po +26 -0
  314. data/samples/po/ru/hello_plural.po +28 -0
  315. data/samples/po/ru/hello_tk.po +22 -0
  316. data/samples/po/sr/hello.po +22 -0
  317. data/samples/po/sr/hello2.po +30 -0
  318. data/samples/po/sr/hello_glade2.po +32 -0
  319. data/samples/po/sr/hello_gtk.po +22 -0
  320. data/samples/po/sr/hello_noop.po +26 -0
  321. data/samples/po/sr/hello_plural.po +26 -0
  322. data/samples/po/sr/hello_tk.po +24 -0
  323. data/samples/po/sv/hello.po +20 -0
  324. data/samples/po/sv/hello2.po +28 -0
  325. data/samples/po/sv/hello_glade2.po +28 -0
  326. data/samples/po/sv/hello_gtk.po +20 -0
  327. data/samples/po/sv/hello_noop.po +24 -0
  328. data/samples/po/sv/hello_plural.po +23 -0
  329. data/samples/po/sv/hello_tk.po +20 -0
  330. data/samples/po/test.rb +11 -0
  331. data/samples/po/ua/hello.po +22 -0
  332. data/samples/po/ua/hello2.po +30 -0
  333. data/samples/po/ua/hello_glade2.po +34 -0
  334. data/samples/po/ua/hello_gtk.po +22 -0
  335. data/samples/po/ua/hello_noop.po +26 -0
  336. data/samples/po/ua/hello_plural.po +29 -0
  337. data/samples/po/ua/hello_tk.po +26 -0
  338. data/samples/po/vi/hello.po +23 -0
  339. data/samples/po/vi/hello2.po +31 -0
  340. data/samples/po/vi/hello_glade2.po +38 -0
  341. data/samples/po/vi/hello_gtk.po +23 -0
  342. data/samples/po/vi/hello_noop.po +27 -0
  343. data/samples/po/vi/hello_plural.po +26 -0
  344. data/samples/po/vi/hello_tk.po +24 -0
  345. data/samples/po/zh/hello.po +23 -0
  346. data/samples/po/zh/hello2.po +31 -0
  347. data/samples/po/zh/hello_glade2.po +31 -0
  348. data/samples/po/zh/hello_gtk.po +23 -0
  349. data/samples/po/zh/hello_noop.po +27 -0
  350. data/samples/po/zh/hello_plural.po +25 -0
  351. data/samples/po/zh/hello_tk.po +23 -0
  352. data/samples/po/zh_TW/hello.po +26 -0
  353. data/samples/po/zh_TW/hello2.po +34 -0
  354. data/samples/po/zh_TW/hello_glade2.po +40 -0
  355. data/samples/po/zh_TW/hello_gtk.po +25 -0
  356. data/samples/po/zh_TW/hello_noop.po +30 -0
  357. data/samples/po/zh_TW/hello_plural.po +28 -0
  358. data/samples/po/zh_TW/hello_tk.po +26 -0
  359. data/src/poparser.ry +198 -0
  360. data/test/README +1 -0
  361. data/test/Rakefile +19 -0
  362. data/test/po/cr/plural.po +23 -0
  363. data/test/po/da/plural.po +22 -0
  364. data/test/po/da/plural_error.po +21 -0
  365. data/test/po/fr/plural.po +28 -0
  366. data/test/po/fr/plural_error.po +20 -0
  367. data/test/po/fr/test1.po +23 -0
  368. data/test/po/fr/test2.po +19 -0
  369. data/test/po/fr/test6.po +23 -0
  370. data/test/po/ir/plural.po +23 -0
  371. data/test/po/ja/npgettext.po +46 -0
  372. data/test/po/ja/nsgettext.po +65 -0
  373. data/test/po/ja/pgettext.po +41 -0
  374. data/test/po/ja/plural.po +28 -0
  375. data/test/po/ja/plural_error.po +20 -0
  376. data/test/po/ja/rubyparser.po +43 -0
  377. data/test/po/ja/sgettext.po +47 -0
  378. data/test/po/ja/test1.po +23 -0
  379. data/test/po/ja/test2.po +19 -0
  380. data/test/po/ja/test6.po +23 -0
  381. data/test/po/la/plural.po +23 -0
  382. data/test/po/la/plural_error.po +21 -0
  383. data/test/po/li/plural.po +23 -0
  384. data/test/po/po/plural.po +23 -0
  385. data/test/po/sl/plural.po +24 -0
  386. data/test/test_class_info.rb +80 -0
  387. data/test/test_gettext.rb +274 -0
  388. data/test/test_parser.rb +113 -0
  389. data/test/test_string.rb +14 -0
  390. data/test/test_textdomain.rb +25 -0
  391. data/test/test_textdomain_multi.rb +69 -0
  392. data/test/test_textdomain_toplevel.rb +42 -0
  393. data/test/testlib/N_.rb +66 -0
  394. data/test/testlib/erb.rhtml +15 -0
  395. data/test/testlib/erb.rxml +16 -0
  396. data/test/testlib/gettext.rb +96 -0
  397. data/test/testlib/gladeparser.glade +183 -0
  398. data/test/testlib/helper.rb +11 -0
  399. data/test/testlib/multi_textdomain.rb +119 -0
  400. data/test/testlib/ngettext.rb +74 -0
  401. data/test/testlib/npgettext.rb +31 -0
  402. data/test/testlib/nsgettext.rb +42 -0
  403. data/test/testlib/pgettext.rb +31 -0
  404. data/test/testlib/sgettext.rb +46 -0
  405. data/test/testlib/simple.rb +14 -0
  406. metadata +509 -0
data/po/ko/rgettext.po ADDED
@@ -0,0 +1,149 @@
1
+ #
2
+ # po-file for Ruby-GetText-Package
3
+ #
4
+ # Copyright (C) 2002-2006 Masao Mutoh
5
+ #
6
+ # This file is distributed under the same license as the Ruby-GetText-Package.
7
+ #
8
+ # Gyoung-Yoon Noh <nohmad at gmail.com>, 2006.
9
+ #
10
+ msgid ""
11
+ msgstr ""
12
+ "Project-Id-Version: ruby-gettext 1.93.0\n"
13
+ "POT-Creation-Date: 2008-10-07 00:13+0900\n"
14
+ "PO-Revision-Date: 2006-07-11 02:46+0900\n"
15
+ "Last-Translator: Gyoung-Yoon Noh <nohmad at gmail.com>\n"
16
+ "Language-Team: Korean\n"
17
+ "MIME-Version: 1.0\n"
18
+ "Content-Type: text/plain; charset=UTF-8\n"
19
+ "Content-Transfer-Encoding: 8bit\n"
20
+ "Plural-Forms: nplurals=1; plural=0;\n"
21
+
22
+ #: lib/gettext/utils.rb:68
23
+ msgid ""
24
+ "`%{cmd}' may not be found. \n"
25
+ "Install GNU Gettext then set PATH or MSGMERGE_PATH correctly."
26
+ msgstr ""
27
+
28
+ #: lib/gettext/utils.rb:80
29
+ #, fuzzy
30
+ msgid "Failed to merge with %{defpo}"
31
+ msgstr "%{defpo} 파일을 병합하는 데 실패했습니다 - 그냥 넘어갑니다!"
32
+
33
+ #: lib/gettext/utils.rb:81
34
+ #, fuzzy
35
+ msgid "New .pot was copied to %{failed_filename}"
36
+ msgstr "%{failed_filename}에서 새로운 .pot 파일을 확인하십시요"
37
+
38
+ #: lib/gettext/utils.rb:82
39
+ msgid "Check these po/pot-files. It may have syntax errors or something wrong."
40
+ msgstr ""
41
+
42
+ #: lib/gettext/rgettext.rb:43
43
+ msgid "'%{klass}' is ignored."
44
+ msgstr "'%{klass}'이(가) 무시되었습니다."
45
+
46
+ #: lib/gettext/rgettext.rb:189
47
+ msgid "Usage: %s input.rb [-r parser.rb] [-o output.pot]"
48
+ msgstr "사용법: %s input.rb [-r parser.rb] [-o output.pot]"
49
+
50
+ #: lib/gettext/rgettext.rb:191
51
+ msgid "Extract translatable strings from given input files."
52
+ msgstr "주어진 입력 파일들로부터 번역할 수 있는 문자열을 추출합니다."
53
+
54
+ #: lib/gettext/rgettext.rb:193 lib/gettext/rmsgfmt.rb:51
55
+ #: lib/gettext/rmsgmerge.rb:408
56
+ msgid "Specific options:"
57
+ msgstr "특별한 옵션들:"
58
+
59
+ #: lib/gettext/rgettext.rb:195 lib/gettext/rmsgfmt.rb:53
60
+ #: lib/gettext/rmsgmerge.rb:410
61
+ msgid "write output to specified file"
62
+ msgstr "지정한 파일에 출력 내용을 저장합니다"
63
+
64
+ #: lib/gettext/rgettext.rb:199
65
+ msgid "File '%s' already exists."
66
+ msgstr "'%s' 파일이 이미 존재합니다."
67
+
68
+ #: lib/gettext/rgettext.rb:204
69
+ msgid "require the library before executing rgettext"
70
+ msgstr "rgettext를 실행하려면 라이브러리가 필요합니다"
71
+
72
+ #: lib/gettext/rgettext.rb:208
73
+ msgid "run in debugging mode"
74
+ msgstr "디버깅 모드에서 실행합니다"
75
+
76
+ #: lib/gettext/rgettext.rb:212 lib/gettext/rmsgfmt.rb:57
77
+ #: lib/gettext/rmsgmerge.rb:421
78
+ msgid "display version information and exit"
79
+ msgstr "버전 정보를 표시하고 빠져나갑니다"
80
+
81
+ #: lib/gettext/rgettext.rb:236 lib/gettext/rmsgfmt.rb:31
82
+ msgid "no input files"
83
+ msgstr "입력 파일이 없습니다"
84
+
85
+ #: lib/gettext/rmsgfmt.rb:47
86
+ msgid "Usage: %s input.po [-o output.mo]"
87
+ msgstr "사용법: %s input.po [-o output.mo]"
88
+
89
+ #: lib/gettext/rmsgfmt.rb:49
90
+ msgid "Generate binary message catalog from textual translation description."
91
+ msgstr "텍스트로 된 번역 설명으로부터 이진 메시지 목록을 생성합니다."
92
+
93
+ #: lib/gettext/rmsgmerge.rb:403
94
+ msgid "Usage: %s def.po ref.pot [-o output.pot]"
95
+ msgstr "사용법: %s def.po ref.pot [-o output.pot]"
96
+
97
+ #: lib/gettext/rmsgmerge.rb:406
98
+ msgid ""
99
+ "Merges two Uniforum style .po files together. The def.po file is an existing "
100
+ "PO file with translations. The ref.pot file is the last created PO file with "
101
+ "up-to-date source references. ref.pot is generally created by rgettext."
102
+ msgstr ""
103
+ "2개의 유니포럼 스타일의 .po 파일들을 서로 병합합니다. def.po 파일은 번역을 가"
104
+ "진 PO 파일입니다. ref.pot 파일은 최신 소스를 참조하는 가장 최근에 생성된 PO "
105
+ "파일입니다. ref.pot는 일반적으로 rgettext에 의해 생성됩니다."
106
+
107
+ #: lib/gettext/rmsgmerge.rb:447
108
+ msgid "definition po is not given."
109
+ msgstr "po 정의가 주어지지 않았습니다."
110
+
111
+ #: lib/gettext/rmsgmerge.rb:449
112
+ msgid "reference pot is not given."
113
+ msgstr "참조할 pot 파일이 주어지지 않았습니다."
114
+
115
+ #: lib/gettext/parser/glade.rb:74
116
+ msgid "`%{file}' is not glade-2.0 format."
117
+ msgstr "`%{file}'이(가) glade-2.0 형식에 맞지 않습니다."
118
+
119
+ #: lib/gettext/parser/active_record.rb:39
120
+ msgid "'%{file}' is not found."
121
+ msgstr "'%{file}'이(가) 발견되지 않았습니다."
122
+
123
+ #: lib/gettext/parser/active_record.rb:80
124
+ msgid "Ignored '%{file}'. Solve dependencies first."
125
+ msgstr "'%{file}'을(를) 무시했습니다. 먼저 의존성을 해결하십시요."
126
+
127
+ #: lib/gettext/parser/active_record.rb:104
128
+ msgid "No database is available."
129
+ msgstr "사용할 수 있는 데이터베이스가 없습니다."
130
+
131
+ #: lib/gettext/parser/active_record.rb:140
132
+ msgid "rubygems are not found."
133
+ msgstr "rubygems가 발견되지 않았습니다."
134
+
135
+ #: lib/gettext.rb:417
136
+ msgid "3rd parmeter is wrong: value = %{number}"
137
+ msgstr ""
138
+
139
+ #: lib/gettext.rb:607
140
+ msgid "XX"
141
+ msgstr ""
142
+
143
+ #: src/poparser.ry:38 src/poparser.ry:55
144
+ msgid "Warning: fuzzy message was ignored.\n"
145
+ msgstr "경고: 퍼지 메시지가 무시되었습니다.\n"
146
+
147
+ #: src/poparser.ry:148
148
+ msgid "Warning: obsolete msgid exists.\n"
149
+ msgstr "경고: 사용되지 않은 msgid가 존재합니다.\n"
data/po/lv/rgettext.po ADDED
@@ -0,0 +1,150 @@
1
+ #
2
+ # a po-file for Ruby-GetText-Package
3
+ #
4
+ # Copyright (C) 2004-2006 Masao Mutoh
5
+ #
6
+ # This file is distributed under the same license as the Ruby-GetText-Package.
7
+ #
8
+ # Aivars Akots, 2008.
9
+ #
10
+ msgid ""
11
+ msgstr ""
12
+ "Project-Id-Version: ruby-gettext 1.93.0\n"
13
+ "POT-Creation-Date: 2008-10-07 00:13+0900\n"
14
+ "PO-Revision-Date: 2008-07-22 12:26+0200\n"
15
+ "Last-Translator: Aivars Akots <aivars.akots@gmail.com>\n"
16
+ "Language-Team: Latvian\n"
17
+ "MIME-Version: 1.0\n"
18
+ "Content-Type: text/plain; charset=UTF-8\n"
19
+ "Content-Transfer-Encoding: 8bit\n"
20
+ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : "
21
+ "2);\n"
22
+
23
+ #: lib/gettext/utils.rb:68
24
+ msgid ""
25
+ "`%{cmd}' may not be found. \n"
26
+ "Install GNU Gettext then set PATH or MSGMERGE_PATH correctly."
27
+ msgstr ""
28
+
29
+ #: lib/gettext/utils.rb:80
30
+ msgid "Failed to merge with %{defpo}"
31
+ msgstr "Nesanāca apvienot ar %{defpo}"
32
+
33
+ #: lib/gettext/utils.rb:81
34
+ msgid "New .pot was copied to %{failed_filename}"
35
+ msgstr "Jaunais .pot tika pārkopēts kā %{failed_filename}"
36
+
37
+ #: lib/gettext/utils.rb:82
38
+ msgid "Check these po/pot-files. It may have syntax errors or something wrong."
39
+ msgstr ""
40
+ "Pārbaudi šīs po/pot datnes. Tajās varētu būt sintakses kļūdas vai kas cits "
41
+ "nogājis greizi."
42
+
43
+ #: lib/gettext/rgettext.rb:43
44
+ msgid "'%{klass}' is ignored."
45
+ msgstr "'%{klass}' ir ignorēta."
46
+
47
+ #: lib/gettext/rgettext.rb:189
48
+ msgid "Usage: %s input.rb [-r parser.rb] [-o output.pot]"
49
+ msgstr "Lietošana: %s input.rb [-r parser.rb] [-o output.pot]"
50
+
51
+ #: lib/gettext/rgettext.rb:191
52
+ msgid "Extract translatable strings from given input files."
53
+ msgstr "Iegūt tulkojamos tekstus no norādītajām ievades datnēm."
54
+
55
+ #: lib/gettext/rgettext.rb:193 lib/gettext/rmsgfmt.rb:51
56
+ #: lib/gettext/rmsgmerge.rb:408
57
+ msgid "Specific options:"
58
+ msgstr "Īpaši uzstādījumi:"
59
+
60
+ #: lib/gettext/rgettext.rb:195 lib/gettext/rmsgfmt.rb:53
61
+ #: lib/gettext/rmsgmerge.rb:410
62
+ msgid "write output to specified file"
63
+ msgstr "ierakstīt izvadi norādītajā datnē"
64
+
65
+ #: lib/gettext/rgettext.rb:199
66
+ msgid "File '%s' already exists."
67
+ msgstr "Datne '%s' jau eksistē."
68
+
69
+ #: lib/gettext/rgettext.rb:204
70
+ msgid "require the library before executing rgettext"
71
+ msgstr "izmanto \"require bibliotēka\" pirms izsauc rgettext"
72
+
73
+ #: lib/gettext/rgettext.rb:208
74
+ msgid "run in debugging mode"
75
+ msgstr "izpildīt atkļūdošanas veidā"
76
+
77
+ #: lib/gettext/rgettext.rb:212 lib/gettext/rmsgfmt.rb:57
78
+ #: lib/gettext/rmsgmerge.rb:421
79
+ msgid "display version information and exit"
80
+ msgstr "parādīt versiju un iziet"
81
+
82
+ #: lib/gettext/rgettext.rb:236 lib/gettext/rmsgfmt.rb:31
83
+ msgid "no input files"
84
+ msgstr "nav ievades datņu"
85
+
86
+ #: lib/gettext/rmsgfmt.rb:47
87
+ msgid "Usage: %s input.po [-o output.mo]"
88
+ msgstr "Lietošana: %s ievades.po [-o izvades.mo]"
89
+
90
+ #: lib/gettext/rmsgfmt.rb:49
91
+ msgid "Generate binary message catalog from textual translation description."
92
+ msgstr "Ģenerēt bināro katalogu no tekstuālo tulkojumu apraksta."
93
+
94
+ #: lib/gettext/rmsgmerge.rb:403
95
+ msgid "Usage: %s def.po ref.pot [-o output.pot]"
96
+ msgstr "Lietošana: %s def.po ref.pot [-o output.pot]"
97
+
98
+ #: lib/gettext/rmsgmerge.rb:406
99
+ msgid ""
100
+ "Merges two Uniforum style .po files together. The def.po file is an existing "
101
+ "PO file with translations. The ref.pot file is the last created PO file with "
102
+ "up-to-date source references. ref.pot is generally created by rgettext."
103
+ msgstr ""
104
+ "Apvieno divas \"Uniforum\" stila .po datnes. Def.po datne ir eksistējoša PO "
105
+ "datne ar tulkojumiem. Ref.pot datne ir pēdējā izveidotā PO datne ar "
106
+ "atjauninātām izejas faila atsaucēm. Ref.pot ir datni veido rgettext."
107
+
108
+ #: lib/gettext/rmsgmerge.rb:447
109
+ msgid "definition po is not given."
110
+ msgstr "po definīcija nav padota."
111
+
112
+ #: lib/gettext/rmsgmerge.rb:449
113
+ msgid "reference pot is not given."
114
+ msgstr "pot atsauce nav padota."
115
+
116
+ #: lib/gettext/parser/glade.rb:74
117
+ msgid "`%{file}' is not glade-2.0 format."
118
+ msgstr "`%{file}' nav glade-2.0 formātā."
119
+
120
+ #: lib/gettext/parser/active_record.rb:39
121
+ msgid "'%{file}' is not found."
122
+ msgstr "'%{file}' nav atrasts."
123
+
124
+ #: lib/gettext/parser/active_record.rb:80
125
+ msgid "Ignored '%{file}'. Solve dependencies first."
126
+ msgstr "Ignorēts '%{file}'. Vispirms atrisini/novērs saistītās datnes."
127
+
128
+ #: lib/gettext/parser/active_record.rb:104
129
+ msgid "No database is available."
130
+ msgstr "Datubāze nav pieejama."
131
+
132
+ #: lib/gettext/parser/active_record.rb:140
133
+ msgid "rubygems are not found."
134
+ msgstr "rubygemi nav atrasti."
135
+
136
+ #: lib/gettext.rb:417
137
+ msgid "3rd parmeter is wrong: value = %{number}"
138
+ msgstr "trešais parametrs ir kļūdains: vērtība = %{number}"
139
+
140
+ #: lib/gettext.rb:607
141
+ msgid "XX"
142
+ msgstr ""
143
+
144
+ #: src/poparser.ry:38 src/poparser.ry:55
145
+ msgid "Warning: fuzzy message was ignored.\n"
146
+ msgstr "Brīdinājums: ziņa tika ignorēta.\n"
147
+
148
+ #: src/poparser.ry:148
149
+ msgid "Warning: obsolete msgid exists.\n"
150
+ msgstr "Brīdinājums: msgid eksistē.\n"
data/po/nb/rgettext.po ADDED
@@ -0,0 +1,151 @@
1
+ # a po-file for Ruby-GetText-Package
2
+ #
3
+ # Copyright (C) 2004-2006 Masao Mutoh
4
+ #
5
+ # This file is distributed under the same license as the Ruby-GetText-Package.
6
+ #
7
+ # Runar Ingebrigtsen <runar@mopo.no>, 2007, 2008.
8
+ #
9
+ #
10
+ msgid ""
11
+ msgstr ""
12
+ "Project-Id-Version: ruby-gettext 1.93.0\n"
13
+ "Report-Msgid-Bugs-To: \n"
14
+ "POT-Creation-Date: 2008-10-07 00:13+0900\n"
15
+ "PO-Revision-Date: 2008-07-14 16:42+0200\n"
16
+ "Last-Translator: Runar Ingebrigtsen <runar@mopo.no>\n"
17
+ "Language-Team: Norwegian/Bokmaal <i18n-nb@lister.ping.uio.no>\n"
18
+ "MIME-Version: 1.0\n"
19
+ "Content-Type: text/plain; charset=UTF-8\n"
20
+ "Content-Transfer-Encoding: 8bit\n"
21
+ "Plural-Forms: nplurals=2; plural=(n != 1);\n"
22
+
23
+ #: lib/gettext/utils.rb:68
24
+ msgid ""
25
+ "`%{cmd}' may not be found. \n"
26
+ "Install GNU Gettext then set PATH or MSGMERGE_PATH correctly."
27
+ msgstr ""
28
+
29
+ #: lib/gettext/utils.rb:80
30
+ msgid "Failed to merge with %{defpo}"
31
+ msgstr "Klarte ikke slå sammen med %{defpo}·-·hopper over!"
32
+
33
+ #: lib/gettext/utils.rb:81
34
+ msgid "New .pot was copied to %{failed_filename}"
35
+ msgstr "Kontroller ny .pot i %{failed_filename}"
36
+
37
+ #: lib/gettext/utils.rb:82
38
+ msgid "Check these po/pot-files. It may have syntax errors or something wrong."
39
+ msgstr ""
40
+ "Kontroller disse po/pot-filene. Det kan være syntaks-feil eller noe annet "
41
+ "galt."
42
+
43
+ #: lib/gettext/rgettext.rb:43
44
+ msgid "'%{klass}' is ignored."
45
+ msgstr "'%{klass}' blir ignorert."
46
+
47
+ #: lib/gettext/rgettext.rb:189
48
+ msgid "Usage: %s input.rb [-r parser.rb] [-o output.pot]"
49
+ msgstr "Bruk: %s input.rb [-r parser.rb] [-o output.pot]"
50
+
51
+ #: lib/gettext/rgettext.rb:191
52
+ msgid "Extract translatable strings from given input files."
53
+ msgstr "Trekk ut oversettbare tekststrenger fra angitte filer"
54
+
55
+ #: lib/gettext/rgettext.rb:193 lib/gettext/rmsgfmt.rb:51
56
+ #: lib/gettext/rmsgmerge.rb:408
57
+ msgid "Specific options:"
58
+ msgstr "Spesifikke alternativer:"
59
+
60
+ #: lib/gettext/rgettext.rb:195 lib/gettext/rmsgfmt.rb:53
61
+ #: lib/gettext/rmsgmerge.rb:410
62
+ msgid "write output to specified file"
63
+ msgstr "skriv ut til spesifisert fil"
64
+
65
+ #: lib/gettext/rgettext.rb:199
66
+ msgid "File '%s' already exists."
67
+ msgstr "Filen '%s' eksisterer fra før"
68
+
69
+ #: lib/gettext/rgettext.rb:204
70
+ msgid "require the library before executing rgettext"
71
+ msgstr "krev biblioteket før du kjører rgettext"
72
+
73
+ #: lib/gettext/rgettext.rb:208
74
+ msgid "run in debugging mode"
75
+ msgstr "kjør i feilsøkingsmodus"
76
+
77
+ #: lib/gettext/rgettext.rb:212 lib/gettext/rmsgfmt.rb:57
78
+ #: lib/gettext/rmsgmerge.rb:421
79
+ msgid "display version information and exit"
80
+ msgstr "vis versjonsinformasjon og avslutt"
81
+
82
+ #: lib/gettext/rgettext.rb:236 lib/gettext/rmsgfmt.rb:31
83
+ msgid "no input files"
84
+ msgstr "ingen angitte filer"
85
+
86
+ #: lib/gettext/rmsgfmt.rb:47
87
+ msgid "Usage: %s input.po [-o output.mo]"
88
+ msgstr "Bruk: %s input.po [-p output.mo]"
89
+
90
+ #: lib/gettext/rmsgfmt.rb:49
91
+ msgid "Generate binary message catalog from textual translation description."
92
+ msgstr ""
93
+ "Opprett mappe for binære meldinger ut fra beskrivelse av oversettelsen."
94
+
95
+ #: lib/gettext/rmsgmerge.rb:403
96
+ msgid "Usage: %s def.po ref.pot [-o output.pot]"
97
+ msgstr "Bruk: %s def.po ref.pot [-o output.pot]"
98
+
99
+ #: lib/gettext/rmsgmerge.rb:406
100
+ msgid ""
101
+ "Merges two Uniforum style .po files together. The def.po file is an existing "
102
+ "PO file with translations. The ref.pot file is the last created PO file with "
103
+ "up-to-date source references. ref.pot is generally created by rgettext."
104
+ msgstr ""
105
+ "Slår sammen to po-filer av Uniforum-typen. def.po-filen er en eksisterendePO-"
106
+ "fil med oversettelser. ref.po-filen er den sist opprettede PO-filen "
107
+ "medoppdaterte kildereferanser. ref.pot er generelt opprettet av rgettext."
108
+
109
+ #: lib/gettext/rmsgmerge.rb:447
110
+ msgid "definition po is not given."
111
+ msgstr "definisjons-po ikke angitt"
112
+
113
+ #: lib/gettext/rmsgmerge.rb:449
114
+ msgid "reference pot is not given."
115
+ msgstr "referanse-po ikke angitt"
116
+
117
+ #: lib/gettext/parser/glade.rb:74
118
+ msgid "`%{file}' is not glade-2.0 format."
119
+ msgstr "`%{file}' er ikke glade-2.0-formattert."
120
+
121
+ #: lib/gettext/parser/active_record.rb:39
122
+ msgid "'%{file}' is not found."
123
+ msgstr "'%{file}' ble ikke funnet."
124
+
125
+ #: lib/gettext/parser/active_record.rb:80
126
+ msgid "Ignored '%{file}'. Solve dependencies first."
127
+ msgstr "Ignorerte '%{file}'. Løs avhengigheter først."
128
+
129
+ #: lib/gettext/parser/active_record.rb:104
130
+ msgid "No database is available."
131
+ msgstr "Ingen database er tilgjengelig."
132
+
133
+ #: lib/gettext/parser/active_record.rb:140
134
+ msgid "rubygems are not found."
135
+ msgstr "rubygems ble ikke funnet."
136
+
137
+ #: lib/gettext.rb:417
138
+ msgid "3rd parmeter is wrong: value = %{number}"
139
+ msgstr "Tredje parameter er feil: verdi = %{number}"
140
+
141
+ #: lib/gettext.rb:607
142
+ msgid "XX"
143
+ msgstr ""
144
+
145
+ #: src/poparser.ry:38 src/poparser.ry:55
146
+ msgid "Warning: fuzzy message was ignored.\n"
147
+ msgstr "Advarsel: uferdig melding ble ignorert.\n"
148
+
149
+ #: src/poparser.ry:148
150
+ msgid "Warning: obsolete msgid exists.\n"
151
+ msgstr "Advarsel: det fins utdaterte msgid.\n"