gettext 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (356) hide show
  1. data/ChangeLog +139 -0
  2. data/NEWS +31 -0
  3. data/README +31 -15
  4. data/Rakefile +3 -30
  5. data/bin/rgettext +1 -1
  6. data/bin/rmsgfmt +1 -1
  7. data/bin/rmsgmerge +1 -1
  8. data/data/locale/cs/LC_MESSAGES/rails.mo +0 -0
  9. data/data/locale/cs/LC_MESSAGES/rgettext.mo +0 -0
  10. data/data/locale/de/LC_MESSAGES/rails.mo +0 -0
  11. data/data/locale/de/LC_MESSAGES/rgettext.mo +0 -0
  12. data/data/locale/el/LC_MESSAGES/rails.mo +0 -0
  13. data/data/locale/el/LC_MESSAGES/rgettext.mo +0 -0
  14. data/data/locale/es/LC_MESSAGES/rails.mo +0 -0
  15. data/data/locale/es/LC_MESSAGES/rgettext.mo +0 -0
  16. data/data/locale/et/LC_MESSAGES/rails.mo +0 -0
  17. data/data/locale/fr/LC_MESSAGES/rails.mo +0 -0
  18. data/data/locale/fr/LC_MESSAGES/rgettext.mo +0 -0
  19. data/data/locale/it/LC_MESSAGES/rails.mo +0 -0
  20. data/data/locale/it/LC_MESSAGES/rgettext.mo +0 -0
  21. data/data/locale/ja/LC_MESSAGES/rails.mo +0 -0
  22. data/data/locale/ja/LC_MESSAGES/rgettext.mo +0 -0
  23. data/data/locale/ko/LC_MESSAGES/rails.mo +0 -0
  24. data/data/locale/ko/LC_MESSAGES/rgettext.mo +0 -0
  25. data/data/locale/nl/LC_MESSAGES/rails.mo +0 -0
  26. data/data/locale/nl/LC_MESSAGES/rgettext.mo +0 -0
  27. data/data/locale/pt_BR/LC_MESSAGES/rails.mo +0 -0
  28. data/data/locale/pt_BR/LC_MESSAGES/rgettext.mo +0 -0
  29. data/data/locale/ru/LC_MESSAGES/rails.mo +0 -0
  30. data/data/locale/ru/LC_MESSAGES/rgettext.mo +0 -0
  31. data/data/locale/sv/LC_MESSAGES/rgettext.mo +0 -0
  32. data/data/locale/zh/LC_MESSAGES/rails.mo +0 -0
  33. data/data/locale/zh/LC_MESSAGES/rgettext.mo +0 -0
  34. data/data/locale/zh_TW/LC_MESSAGES/rails.mo +0 -0
  35. data/data/locale/zh_TW/LC_MESSAGES/rgettext.mo +0 -0
  36. data/lib/gettext.rb +50 -23
  37. data/lib/gettext/active_record.rb +275 -0
  38. data/lib/gettext/container.rb +0 -4
  39. data/lib/gettext/locale.rb +9 -2
  40. data/lib/gettext/locale_cgi.rb +5 -4
  41. data/lib/gettext/locale_object.rb +5 -4
  42. data/lib/gettext/parser/{activerecord.rb → active_record.rb} +31 -14
  43. data/lib/gettext/parser/ruby.rb +48 -44
  44. data/lib/gettext/poparser.rb +3 -3
  45. data/lib/gettext/rails.rb +111 -253
  46. data/lib/gettext/rgettext.rb +34 -6
  47. data/lib/gettext/string.rb +3 -2
  48. data/lib/gettext/textdomain.rb +3 -3
  49. data/lib/gettext/version.rb +1 -1
  50. data/pkg/ruby-gettext-package-1.8.0/ext/gettext/extconf.rb +20 -0
  51. data/po/cs/rails.po +61 -61
  52. data/po/cs/rgettext.po +37 -55
  53. data/po/de/rails.po +73 -72
  54. data/po/de/rgettext.po +39 -56
  55. data/po/el/rails.po +60 -60
  56. data/po/el/rgettext.po +26 -44
  57. data/po/es/rails.po +60 -60
  58. data/po/es/rgettext.po +28 -52
  59. data/po/et/rails.po +118 -0
  60. data/po/fr/rails.po +60 -60
  61. data/po/fr/rgettext.po +26 -46
  62. data/po/it/rails.po +68 -68
  63. data/po/it/rgettext.po +35 -53
  64. data/po/ja/rails.po +62 -61
  65. data/po/ja/rgettext.po +27 -45
  66. data/po/ko/rails.po +61 -60
  67. data/po/ko/rgettext.po +34 -54
  68. data/po/nl/rails.po +59 -60
  69. data/po/nl/rgettext.po +35 -55
  70. data/po/pt_BR/rails.po +74 -73
  71. data/po/pt_BR/rgettext.po +36 -52
  72. data/po/rails.pot +61 -61
  73. data/po/rgettext.pot +25 -43
  74. data/po/ru/rails.po +61 -62
  75. data/po/ru/rgettext.po +26 -51
  76. data/po/sv/rgettext.po +27 -44
  77. data/po/zh/rails.po +62 -60
  78. data/po/zh/rgettext.po +28 -47
  79. data/po/zh_TW/rails.po +114 -0
  80. data/po/zh_TW/rgettext.po +121 -0
  81. data/samples/cgi/locale/zh_TW/LC_MESSAGES/helloerb1.mo +0 -0
  82. data/samples/cgi/locale/zh_TW/LC_MESSAGES/helloerb2.mo +0 -0
  83. data/samples/cgi/locale/zh_TW/LC_MESSAGES/hellolib.mo +0 -0
  84. data/samples/cgi/locale/zh_TW/LC_MESSAGES/main.mo +0 -0
  85. data/samples/cgi/po/zh_TW/helloerb1.po +67 -0
  86. data/samples/cgi/po/zh_TW/helloerb2.po +54 -0
  87. data/samples/cgi/po/zh_TW/hellolib.po +26 -0
  88. data/samples/cgi/po/zh_TW/main.po +79 -0
  89. data/samples/locale/zh_TW/LC_MESSAGES/hello.mo +0 -0
  90. data/samples/locale/zh_TW/LC_MESSAGES/hello2.mo +0 -0
  91. data/samples/locale/zh_TW/LC_MESSAGES/hello_noop.mo +0 -0
  92. data/samples/locale/zh_TW/LC_MESSAGES/hello_plural.mo +0 -0
  93. data/samples/locale/zh_TW/LC_MESSAGES/helloglade2.mo +0 -0
  94. data/samples/locale/zh_TW/LC_MESSAGES/hellogtk.mo +0 -0
  95. data/samples/locale/zh_TW/LC_MESSAGES/hellotk.mo +0 -0
  96. data/samples/po/hellogtk.pot +1 -1
  97. data/samples/po/zh_TW/hello.po +26 -0
  98. data/samples/po/zh_TW/hello2.po +34 -0
  99. data/samples/po/zh_TW/hello_noop.po +30 -0
  100. data/samples/po/zh_TW/hello_plural.po +28 -0
  101. data/samples/po/zh_TW/helloglade2.po +40 -0
  102. data/samples/po/zh_TW/hellogtk.po +25 -0
  103. data/samples/po/zh_TW/hellotk.po +26 -0
  104. data/samples/rails/README +8 -11
  105. data/samples/rails/app/controllers/application.rb +6 -9
  106. data/samples/rails/app/views/layouts/blog.rhtml +1 -1
  107. data/samples/rails/config/database.yml +1 -1
  108. data/samples/rails/config/environment.rb +1 -0
  109. data/samples/rails/db/schema.rb +90 -0
  110. data/samples/rails/lib/tasks/gettext.rake +1 -1
  111. data/samples/rails/locale/cs/LC_MESSAGES/blog.mo +0 -0
  112. data/samples/rails/locale/de/LC_MESSAGES/blog.mo +0 -0
  113. data/samples/rails/locale/el/LC_MESSAGES/blog.mo +0 -0
  114. data/samples/rails/locale/en/LC_MESSAGES/blog.mo +0 -0
  115. data/samples/rails/locale/es/LC_MESSAGES/blog.mo +0 -0
  116. data/samples/rails/locale/fr/LC_MESSAGES/blog.mo +0 -0
  117. data/samples/rails/locale/it/LC_MESSAGES/blog.mo +0 -0
  118. data/samples/rails/locale/ja/LC_MESSAGES/blog.mo +0 -0
  119. data/samples/rails/locale/ko/LC_MESSAGES/blog.mo +0 -0
  120. data/samples/rails/locale/nl/LC_MESSAGES/blog.mo +0 -0
  121. data/samples/rails/locale/pt_BR/LC_MESSAGES/blog.mo +0 -0
  122. data/samples/rails/locale/ru/LC_MESSAGES/blog.mo +0 -0
  123. data/samples/rails/locale/zh/LC_MESSAGES/blog.mo +0 -0
  124. data/samples/rails/locale/zh_TW/LC_MESSAGES/blog.mo +0 -0
  125. data/samples/rails/po/blog.pot +106 -110
  126. data/samples/rails/po/cs/blog.po +110 -115
  127. data/samples/rails/po/de/blog.po +107 -112
  128. data/samples/rails/po/el/blog.po +105 -109
  129. data/samples/rails/po/en/blog.po +107 -111
  130. data/samples/rails/po/es/blog.po +105 -110
  131. data/samples/rails/po/fr/blog.po +105 -109
  132. data/samples/rails/po/it/blog.po +105 -109
  133. data/samples/rails/po/ja/blog.po +105 -109
  134. data/samples/rails/po/ko/blog.po +105 -109
  135. data/samples/rails/po/nl/blog.po +105 -110
  136. data/samples/rails/po/pt_BR/blog.po +105 -109
  137. data/samples/rails/po/ru/blog.po +105 -107
  138. data/samples/rails/po/zh/blog.po +105 -109
  139. data/samples/rails/po/zh_TW/blog.po +107 -0
  140. data/samples/rails/vendor/plugins/gettext/locale/zh_TW/LC_MESSAGES/gettext_plugin.mo +0 -0
  141. data/samples/rails/vendor/plugins/gettext/po/zh_TW/gettext_plugin.po +30 -0
  142. data/test/Rakefile +44 -0
  143. data/test/fixtures/developer.rb +5 -0
  144. data/test/fixtures/developers.yml +21 -0
  145. data/test/fixtures/reply.rb +40 -0
  146. data/test/fixtures/topic.rb +23 -0
  147. data/test/fixtures/topics.yml +22 -0
  148. data/test/gettext_test.rb +2 -2
  149. data/test/gettext_test_active_record.rb +1479 -0
  150. data/test/gettext_test_rails.rb +2 -0
  151. data/test/locale/ja/LC_MESSAGES/active_record.mo +0 -0
  152. data/test/po/active_record.pot +295 -0
  153. data/test/po/ja/active_record.po +294 -0
  154. data/test/test.sh +1 -0
  155. data/test/test_rubyparser.rb +10 -2
  156. metadata +68 -236
  157. data/doc/classes/ActionController/Base.html +0 -169
  158. data/doc/classes/ActionController/Base.src/M000014.html +0 -37
  159. data/doc/classes/ActionController/Base.src/M000015.html +0 -30
  160. data/doc/classes/ActiveRecord/Base.html +0 -210
  161. data/doc/classes/ActiveRecord/Base.src/M000114.html +0 -30
  162. data/doc/classes/ActiveRecord/Base.src/M000115.html +0 -30
  163. data/doc/classes/ActiveRecord/Base.src/M000116.html +0 -30
  164. data/doc/classes/ActiveRecord/Base.src/M000117.html +0 -30
  165. data/doc/classes/ActiveRecord/Base.src/M000118.html +0 -37
  166. data/doc/classes/ActiveRecord/Base.src/M000119.html +0 -30
  167. data/doc/classes/ActiveRecord/Base.src/M000120.html +0 -30
  168. data/doc/classes/ActiveRecord/ConnectionAdapters/Column.html +0 -117
  169. data/doc/classes/ActiveRecord/ConnectionAdapters/Column.src/M000113.html +0 -30
  170. data/doc/classes/ActiveRecord/Migration.html +0 -96
  171. data/doc/classes/GetText.html +0 -863
  172. data/doc/classes/GetText.src/M000017.html +0 -30
  173. data/doc/classes/GetText.src/M000018.html +0 -31
  174. data/doc/classes/GetText.src/M000019.html +0 -46
  175. data/doc/classes/GetText.src/M000020.html +0 -42
  176. data/doc/classes/GetText.src/M000021.html +0 -32
  177. data/doc/classes/GetText.src/M000022.html +0 -30
  178. data/doc/classes/GetText.src/M000023.html +0 -30
  179. data/doc/classes/GetText.src/M000024.html +0 -31
  180. data/doc/classes/GetText.src/M000025.html +0 -30
  181. data/doc/classes/GetText.src/M000026.html +0 -49
  182. data/doc/classes/GetText.src/M000027.html +0 -38
  183. data/doc/classes/GetText.src/M000028.html +0 -35
  184. data/doc/classes/GetText.src/M000029.html +0 -44
  185. data/doc/classes/GetText.src/M000030.html +0 -30
  186. data/doc/classes/GetText.src/M000031.html +0 -30
  187. data/doc/classes/GetText.src/M000032.html +0 -36
  188. data/doc/classes/GetText.src/M000033.html +0 -53
  189. data/doc/classes/GetText.src/M000034.html +0 -46
  190. data/doc/classes/GetText.src/M000035.html +0 -31
  191. data/doc/classes/GetText.src/M000036.html +0 -31
  192. data/doc/classes/GetText.src/M000037.html +0 -30
  193. data/doc/classes/GetText.src/M000038.html +0 -30
  194. data/doc/classes/GetText.src/M000039.html +0 -30
  195. data/doc/classes/GetText.src/M000040.html +0 -30
  196. data/doc/classes/GetText.src/M000041.html +0 -48
  197. data/doc/classes/GetText.src/M000042.html +0 -18
  198. data/doc/classes/GetText.src/M000043.html +0 -34
  199. data/doc/classes/GetText.src/M000044.html +0 -30
  200. data/doc/classes/GetText.src/M000045.html +0 -20
  201. data/doc/classes/GetText/ActiveRecordParser.html +0 -148
  202. data/doc/classes/GetText/ActiveRecordParser.src/M000048.html +0 -35
  203. data/doc/classes/GetText/ActiveRecordParser.src/M000049.html +0 -30
  204. data/doc/classes/GetText/ErbContainer.html +0 -161
  205. data/doc/classes/GetText/ErbContainer.src/M000046.html +0 -31
  206. data/doc/classes/GetText/ErbContainer.src/M000047.html +0 -30
  207. data/doc/classes/GetText/ErbParser.html +0 -113
  208. data/doc/classes/GetText/ErbParser.src/M000051.html +0 -32
  209. data/doc/classes/GetText/GetText.html +0 -89
  210. data/doc/classes/GetText/GetText/Container.html +0 -95
  211. data/doc/classes/GetText/GladeParser.html +0 -109
  212. data/doc/classes/GetText/NoboundTextDomainError.html +0 -98
  213. data/doc/classes/GetText/PoParser.html +0 -121
  214. data/doc/classes/GetText/PoParser.src/M000068.html +0 -30
  215. data/doc/classes/GetText/Rails.html +0 -172
  216. data/doc/classes/GetText/Rails.src/M000050.html +0 -43
  217. data/doc/classes/GetText/RubyParser.html +0 -99
  218. data/doc/classes/GetText/TextDomain.html +0 -345
  219. data/doc/classes/GetText/TextDomain.src/M000052.html +0 -30
  220. data/doc/classes/GetText/TextDomain.src/M000053.html +0 -30
  221. data/doc/classes/GetText/TextDomain.src/M000054.html +0 -30
  222. data/doc/classes/GetText/TextDomain.src/M000055.html +0 -58
  223. data/doc/classes/GetText/TextDomain.src/M000056.html +0 -32
  224. data/doc/classes/GetText/TextDomain.src/M000057.html +0 -35
  225. data/doc/classes/GetText/TextDomain.src/M000058.html +0 -49
  226. data/doc/classes/GetText/TextDomain.src/M000059.html +0 -30
  227. data/doc/classes/GetText/TextDomain.src/M000060.html +0 -18
  228. data/doc/classes/GetText/TextDomain.src/M000061.html +0 -18
  229. data/doc/classes/GetText/TextDomain.src/M000062.html +0 -18
  230. data/doc/classes/GetText/TextDomain.src/M000063.html +0 -46
  231. data/doc/classes/GetText/TextDomain.src/M000064.html +0 -20
  232. data/doc/classes/GetText/TextDomain.src/M000065.html +0 -23
  233. data/doc/classes/GetText/TextDomain.src/M000066.html +0 -37
  234. data/doc/classes/GetText/TextDomain.src/M000067.html +0 -18
  235. data/doc/classes/GetText/TextDomainManager.html +0 -253
  236. data/doc/classes/GetText/TextDomainManager.src/M000052.html +0 -18
  237. data/doc/classes/GetText/TextDomainManager.src/M000053.html +0 -18
  238. data/doc/classes/GetText/TextDomainManager.src/M000054.html +0 -20
  239. data/doc/classes/GetText/TextDomainManager.src/M000055.html +0 -18
  240. data/doc/classes/GetText/TextDomainManager.src/M000056.html +0 -20
  241. data/doc/classes/GetText/TextDomainManager.src/M000057.html +0 -31
  242. data/doc/classes/GetText/TextDomainManager.src/M000058.html +0 -21
  243. data/doc/classes/GetText/TextDomainManager.src/M000059.html +0 -24
  244. data/doc/classes/GetText/TextDomainManager.src/M000060.html +0 -30
  245. data/doc/classes/GetText/TextDomainManager.src/M000061.html +0 -30
  246. data/doc/classes/GetText/TextDomainManager.src/M000062.html +0 -32
  247. data/doc/classes/GetText/TextDomainManager.src/M000063.html +0 -30
  248. data/doc/classes/GetText/TextDomainManager.src/M000064.html +0 -32
  249. data/doc/classes/GetText/TextDomainManager.src/M000065.html +0 -43
  250. data/doc/classes/GetText/TextDomainManager.src/M000066.html +0 -33
  251. data/doc/classes/GetText/TextDomainManager.src/M000067.html +0 -36
  252. data/doc/classes/Iconv.html +0 -140
  253. data/doc/classes/Iconv.src/M000016.html +0 -41
  254. data/doc/classes/Iconv/Failure.html +0 -86
  255. data/doc/classes/Iconv/IllegalSequence.html +0 -96
  256. data/doc/classes/Iconv/InvalidCharacter.html +0 -96
  257. data/doc/classes/Iconv/InvalidEncoding.html +0 -96
  258. data/doc/classes/Locale.html +0 -648
  259. data/doc/classes/Locale.src/M000069.html +0 -32
  260. data/doc/classes/Locale.src/M000070.html +0 -31
  261. data/doc/classes/Locale.src/M000071.html +0 -30
  262. data/doc/classes/Locale.src/M000072.html +0 -34
  263. data/doc/classes/Locale.src/M000073.html +0 -31
  264. data/doc/classes/Locale.src/M000074.html +0 -30
  265. data/doc/classes/Locale.src/M000075.html +0 -30
  266. data/doc/classes/Locale.src/M000076.html +0 -31
  267. data/doc/classes/Locale.src/M000077.html +0 -40
  268. data/doc/classes/Locale.src/M000078.html +0 -31
  269. data/doc/classes/Locale.src/M000079.html +0 -46
  270. data/doc/classes/Locale.src/M000080.html +0 -32
  271. data/doc/classes/Locale.src/M000081.html +0 -31
  272. data/doc/classes/Locale.src/M000082.html +0 -30
  273. data/doc/classes/Locale.src/M000083.html +0 -30
  274. data/doc/classes/Locale.src/M000084.html +0 -30
  275. data/doc/classes/Locale.src/M000085.html +0 -32
  276. data/doc/classes/Locale.src/M000086.html +0 -31
  277. data/doc/classes/Locale.src/M000087.html +0 -31
  278. data/doc/classes/Locale.src/M000088.html +0 -30
  279. data/doc/classes/Locale/Object.html +0 -420
  280. data/doc/classes/Locale/Object.src/M000104.html +0 -53
  281. data/doc/classes/Locale/Object.src/M000105.html +0 -34
  282. data/doc/classes/Locale/Object.src/M000106.html +0 -32
  283. data/doc/classes/Locale/Object.src/M000107.html +0 -32
  284. data/doc/classes/Locale/Object.src/M000108.html +0 -33
  285. data/doc/classes/Locale/Object.src/M000109.html +0 -33
  286. data/doc/classes/Locale/Object.src/M000110.html +0 -30
  287. data/doc/classes/Locale/SystemCGI.html +0 -247
  288. data/doc/classes/Locale/SystemCGI.src/M000094.html +0 -48
  289. data/doc/classes/Locale/SystemCGI.src/M000095.html +0 -30
  290. data/doc/classes/Locale/SystemCGI.src/M000096.html +0 -31
  291. data/doc/classes/Locale/SystemCGI.src/M000097.html +0 -31
  292. data/doc/classes/Locale/SystemCGI.src/M000098.html +0 -31
  293. data/doc/classes/Locale/SystemCGI.src/M000099.html +0 -32
  294. data/doc/classes/Locale/SystemCGI.src/M000100.html +0 -31
  295. data/doc/classes/Locale/SystemCGI.src/M000101.html +0 -30
  296. data/doc/classes/Locale/SystemPosix.html +0 -133
  297. data/doc/classes/Locale/SystemPosix.src/M000102.html +0 -39
  298. data/doc/classes/Locale/SystemPosix.src/M000103.html +0 -34
  299. data/doc/classes/Locale/SystemWin32.html +0 -206
  300. data/doc/classes/Locale/SystemWin32.src/M000089.html +0 -31
  301. data/doc/classes/Locale/SystemWin32.src/M000090.html +0 -48
  302. data/doc/classes/Locale/SystemWin32.src/M000091.html +0 -32
  303. data/doc/classes/Locale/SystemWin32.src/M000092.html +0 -31
  304. data/doc/classes/Locale/SystemWin32.src/M000093.html +0 -30
  305. data/doc/classes/MOFile.html +0 -279
  306. data/doc/classes/MOFile.src/M000001.html +0 -31
  307. data/doc/classes/MOFile.src/M000002.html +0 -34
  308. data/doc/classes/MOFile.src/M000003.html +0 -37
  309. data/doc/classes/MOFile.src/M000004.html +0 -42
  310. data/doc/classes/MOFile.src/M000005.html +0 -93
  311. data/doc/classes/MOFile.src/M000006.html +0 -38
  312. data/doc/classes/MOFile.src/M000007.html +0 -34
  313. data/doc/classes/MOFile.src/M000008.html +0 -42
  314. data/doc/classes/MOFile.src/M000009.html +0 -93
  315. data/doc/classes/MOFile.src/M000010.html +0 -31
  316. data/doc/classes/MOFile.src/M000011.html +0 -30
  317. data/doc/classes/MOFile.src/M000012.html +0 -30
  318. data/doc/classes/MOFile/InvalidFormat.html +0 -92
  319. data/doc/classes/String.html +0 -150
  320. data/doc/classes/String.src/M000013.html +0 -44
  321. data/doc/created.rid +0 -1
  322. data/doc/files/lib/gettext/cgi_rb.html +0 -98
  323. data/doc/files/lib/gettext/container_rb.html +0 -96
  324. data/doc/files/lib/gettext/erb_rb.html +0 -97
  325. data/doc/files/lib/gettext/iconv_rb.html +0 -97
  326. data/doc/files/lib/gettext/locale_cgi_rb.html +0 -92
  327. data/doc/files/lib/gettext/locale_object_rb.html +0 -92
  328. data/doc/files/lib/gettext/locale_posix_rb.html +0 -92
  329. data/doc/files/lib/gettext/locale_rb.html +0 -99
  330. data/doc/files/lib/gettext/locale_table_win32_rb.html +0 -92
  331. data/doc/files/lib/gettext/locale_win32_rb.html +0 -96
  332. data/doc/files/lib/gettext/mo_rb.html +0 -96
  333. data/doc/files/lib/gettext/parser/activerecord_rb.html +0 -103
  334. data/doc/files/lib/gettext/parser/erb_rb.html +0 -97
  335. data/doc/files/lib/gettext/parser/glade_rb.html +0 -97
  336. data/doc/files/lib/gettext/parser/ruby_rb.html +0 -98
  337. data/doc/files/lib/gettext/poparser_rb.html +0 -96
  338. data/doc/files/lib/gettext/rails_rb.html +0 -99
  339. data/doc/files/lib/gettext/rgettext_rb.html +0 -98
  340. data/doc/files/lib/gettext/rmsgfmt_rb.html +0 -100
  341. data/doc/files/lib/gettext/rmsgmerge_rb.html +0 -100
  342. data/doc/files/lib/gettext/string_rb.html +0 -92
  343. data/doc/files/lib/gettext/textdomain_rb.html +0 -97
  344. data/doc/files/lib/gettext/textdomainmanager_rb.html +0 -97
  345. data/doc/files/lib/gettext/utils_rb.html +0 -98
  346. data/doc/files/lib/gettext/version_rb.html +0 -92
  347. data/doc/files/lib/gettext_rb.html +0 -101
  348. data/doc/fr_class_index.html +0 -45
  349. data/doc/fr_file_index.html +0 -41
  350. data/doc/fr_method_index.html +0 -135
  351. data/doc/frame-style.css +0 -33
  352. data/doc/index.html +0 -26
  353. data/doc/rdoc-style.css +0 -180
  354. data/jamis.rb +0 -590
  355. data/samples/rails/db/mysql.sql +0 -8
  356. data/samples/rails/db/postgresql.sql +0 -7
@@ -0,0 +1,275 @@
1
+ =begin
2
+ gettext/active_record.rb - GetText for ActiveRecord
3
+
4
+ Copyright (C) 2006 Masao Mutoh
5
+
6
+ You may redistribute it and/or modify it under the same
7
+ license terms as Ruby.
8
+
9
+ $Id: active_record.rb,v 1.9 2006/09/10 15:08:32 mutoh Exp $
10
+ =end
11
+ require 'gettext'
12
+ require 'active_record'
13
+
14
+ module ActiveRecord #:nodoc:
15
+ class Migration
16
+ extend GetText
17
+ include GetText
18
+ end
19
+
20
+ module ConnectionAdapters #:nodoc:
21
+ # An abstract definition of a column in a table.
22
+ class Column
23
+ attr_accessor :table_class
24
+ alias :human_name_witout_localized :human_name
25
+
26
+ def human_name
27
+ table_class.human_attribute_name(@name)
28
+ end
29
+ end
30
+ end
31
+
32
+ module Validations # :nodoc:
33
+ def self.real_included(base)
34
+ base.extend ClassMethods
35
+ base.class_eval{
36
+ include GetText
37
+ def gettext(str) #:nodoc:
38
+ _(str)
39
+ end
40
+ def self.human_attribute_name(attribute_key_name) #:nodoc:
41
+ s_("#{self}|#{attribute_key_name.humanize}")
42
+ end
43
+
44
+ def self.human_attribute_table_name_for_error(table_name) #:nodoc:
45
+ _(table_name.gsub(/_/, " "))
46
+ end
47
+ }
48
+ end
49
+ if ActiveRecord::VERSION::STRING >= "1.14.5"
50
+ def self.included(base) # :nodoc:
51
+ super
52
+ real_included(base)
53
+ end
54
+ else
55
+ def self.append_features(base) # :nodoc:
56
+ super
57
+ real_included(base)
58
+ end
59
+ end
60
+
61
+ module ClassMethods #:nodoc:
62
+ @@custom_error_messages_d = {}
63
+ # Very ugly but...
64
+ def validates_length_of(*attrs) #:nodoc:
65
+ if attrs.last.is_a?(Hash)
66
+ msg = attrs.last[:message] || attrs.last[:too_long] || attrs.last[:too_short] || attrs.last[:wrong_length]
67
+ if msg
68
+ @@custom_error_messages_d[msg] = /\A#{Regexp.escape(msg).sub(/%d/, '(\d+)')}\Z/
69
+ end
70
+ end
71
+ validates_size_of(*attrs)
72
+ end
73
+ def custom_error_messages_d #:nodoc:
74
+ @@custom_error_messages_d
75
+ end
76
+ end
77
+ def custom_error_messages_d #:nodoc:
78
+ self.class.custom_error_messages_d
79
+ end
80
+ end
81
+
82
+ class Base
83
+ include GetText
84
+ include Validations
85
+
86
+ @@gettext_untranslate = Hash.new(false)
87
+ @@gettext_untranslate_columns = {}
88
+
89
+ # Untranslate all of the tablename/fieldnames in this model class.
90
+ def self.untranslate_all
91
+ @@gettext_untranslate[self] = true
92
+ end
93
+
94
+ # Returns true if "untranslate_all" is called. Otherwise false.
95
+ def self.untranslate_all?
96
+ @@gettext_untranslate[self]
97
+ end
98
+
99
+ # Sets the untranslate columns.
100
+ # (e.g.) untranslate :foo, :bar, :baz
101
+ def self.untranslate(*w)
102
+ ary = @@gettext_untranslate_columns[self] || []
103
+ ary += w.collect{|v| v.to_s}
104
+ @@gettext_untranslate_columns[self] = ary
105
+ end
106
+
107
+ # Returns true if the column is set "untranslate".
108
+ # (e.g.) untranslate? :foo
109
+ def self.untranslate?(columnname)
110
+ ary = @@gettext_untranslate_columns[self] || []
111
+ ary.include?(columnname)
112
+ end
113
+
114
+ def self.untranslate_data #:nodoc:
115
+ [@@gettext_untranslate[self], @@gettext_untranslate_columns[self] || []]
116
+ end
117
+
118
+ def self.columns
119
+ unless defined? @columns
120
+ @columns = nil
121
+ end
122
+ unless @columns
123
+ @columns = connection.columns(table_name, "#{name} Columns")
124
+ @columns.each {|column|
125
+ column.table_class = self
126
+ column.primary = column.name == primary_key
127
+ }
128
+ end
129
+ @columns
130
+ end
131
+
132
+ # call-seq:
133
+ # set_error_message_title(msg)
134
+ #
135
+ # ((*Deprecated*))
136
+ # Use ActionView::Helpers::ActiveRecordHelper::L10n.set_error_message_title
137
+ # instead.
138
+ #
139
+ # Sets a your own title of error message dialog.
140
+ # * msg: [single_msg, plural_msg]. Usually you need to call this with Nn_().
141
+ # * Returns: [single_msg, plural_msg]
142
+ def self.set_error_message_title(msg, plural_msg = nil)
143
+ ActionView::Helpers::ActiveRecordHelper::L10n.set_error_message_title(msg, plural_msg)
144
+ end
145
+
146
+ # call-seq:
147
+ # set_error_message_explanation(msg)
148
+ #
149
+ # ((*Deprecated*))
150
+ # Use ActionView::Helpers::ActiveRecordHelper::L10n.set_error_message_explanation
151
+ # instead.
152
+ #
153
+ # Sets a your own explanation of the error message dialog.
154
+ # * msg: [single_msg, plural_msg]. Usually you need to call this with Nn_().
155
+ # * Returns: [single_msg, plural_msg]
156
+ def self.set_error_message_explanation(msg, plural_msg = nil)
157
+ ActionView::Helpers::ActiveRecordHelper::L10n.set_error_message_explanation(msg, plural_msg)
158
+ end
159
+ end
160
+
161
+ # activerecord-1.14.3/lib/active_record/validations.rb
162
+ class Errors #:nodoc:
163
+ include GetText
164
+ alias initialize_without_locale initialize #:nodoc:
165
+ alias full_messages_without_localized full_messages #:nodoc:
166
+
167
+ def initialize(base) # :nodoc:
168
+ initialize_without_locale(base)
169
+ bindtextdomain("rails")
170
+ end
171
+
172
+ def @@default_error_messages.[]=(id, msg) #:nodoc:
173
+ @@default_error_messages.update({id => msg})
174
+ if [:message, :too_long, :too_short, :wrong_length].include?(id)
175
+ @@default_error_messages_d[msg] = /\A#{Regexp.escape(msg).sub(/%d/, '(\d+)')}\Z/
176
+ end
177
+ end
178
+
179
+ # You need to define this here, because this values will be updated by application.
180
+ default_error_messages.update(
181
+ :inclusion => N_("%{fn} is not included in the list"),
182
+ :exclusion => N_("%{fn} is reserved"),
183
+ :invalid => N_("%{fn} is invalid"),
184
+ :confirmation => N_("%{fn} doesn't match confirmation"),
185
+ :accepted => N_("%{fn} must be accepted"),
186
+ :empty => N_("%{fn} can't be empty"),
187
+ :blank => N_("%{fn} can't be blank"),
188
+ :too_long => N_("%{fn} is too long (maximum is %d characters)"),
189
+ :too_short => N_("%{fn} is too short (minimum is %d characters)"),
190
+ :wrong_length => N_("%{fn} is the wrong length (should be %d characters)"),
191
+ :taken => N_("%{fn} has already been taken"),
192
+ :not_a_number => N_("%{fn} is not a number")
193
+ )
194
+ @@default_error_messages_d = {
195
+ default_error_messages[:too_long] => /#{Regexp.escape(default_error_messages[:too_long]).sub(/%d/, '(\d+)')}/,
196
+ default_error_messages[:too_short] => /#{Regexp.escape(default_error_messages[:too_short]).sub(/%d/, '(\d+)')}/,
197
+ default_error_messages[:wrong_length] => /#{Regexp.escape(default_error_messages[:wrong_length]).sub(/%d/, '(\d+)')}/,
198
+ }
199
+ cattr_accessor :default_error_messages_d
200
+
201
+ def localize_error_messages(append_field = true) # :nodoc:
202
+ # e.g.) foo field: "%{fn} foo" => "Foo foo", "foo" => "Foo foo".
203
+ errors = {}
204
+ @errors.each_key do |attr|
205
+ @errors[attr].each do |msg|
206
+ next if msg.nil?
207
+ custom_msg = nil
208
+ #Ugly but... :-<
209
+ @@default_error_messages_d.dup.merge(@base.custom_error_messages_d).each do |key, regexp|
210
+ if regexp =~ msg
211
+ custom_msg = @base.gettext(key)
212
+ custom_msg = _(msg) if custom_msg == msg
213
+ custom_msg = _(custom_msg) % $1.to_i
214
+ break
215
+ end
216
+ end
217
+
218
+ unless custom_msg
219
+ custom_msg = @base.gettext(msg)
220
+ custom_msg = _(msg) if custom_msg == msg
221
+ end
222
+ if attr == "base"
223
+ full_message = custom_msg
224
+ elsif /%\{fn\}/ =~ custom_msg
225
+ full_message = custom_msg % {:fn => @base.class.human_attribute_name(attr)}
226
+ elsif append_field
227
+ full_message = @base.class.human_attribute_name(attr) + " " + custom_msg
228
+ else
229
+ full_message = custom_msg
230
+ end
231
+ errors[attr] ||= []
232
+ errors[attr] << full_message
233
+ end
234
+ end
235
+ errors
236
+ end
237
+
238
+ # Returns error messages.
239
+ # * Returns nil, if no errors are associated with the specified attribute.
240
+ # * Returns the error message, if one error is associated with the specified attribute.
241
+ # * Returns an array of error messages, if more than one error is associated with the specified attribute.
242
+ # And for GetText,
243
+ # * If the error messages include %{fn}, it returns formatted text such as "foo %{fn}" => "foo Field"
244
+ # * else, the error messages are prepended the field name such as "foo" => "foo" (Same as default behavior).
245
+ # Note that this behaviour is different from full_messages.
246
+ def on(attribute)
247
+ # e.g.) foo field: "%{fn} foo" => "Foo foo", "foo" => "foo".
248
+ errors = localize_error_messages(false)
249
+ if errors[attribute.to_s].nil?
250
+ nil
251
+ elsif errors[attribute.to_s].length == 1
252
+ errors[attribute.to_s].first
253
+ else
254
+ errors[attribute.to_s]
255
+ end
256
+ end
257
+
258
+ # Returns all the full error messages in an array.
259
+ # * If the error messages include %{fn}, it returns formatted text such as "foo %{fn}" => "foo Field"
260
+ # * else, the error messages are prepended the field name such as "foo" => "Field foo" (Same as default behavior).
261
+ # As L10n, first one is recommanded because the order of subject,verb and others are not same in languages.
262
+ def full_messages
263
+ full_messages = []
264
+ errors = localize_error_messages
265
+ errors.each_key do |attr|
266
+ errors[attr].each do |msg|
267
+ next if msg.nil?
268
+ full_messages << msg
269
+ end
270
+ end
271
+ full_messages
272
+ end
273
+ end
274
+ end
275
+
@@ -11,11 +11,7 @@
11
11
 
12
12
  require 'gettext'
13
13
 
14
- <<<<<<< container.rb
15
- module GetText
16
- =======
17
14
  module GetText
18
- >>>>>>> 1.6
19
15
  # Deprecated. You don't need this. Use GetText instead.
20
16
  module Container
21
17
  include GetText
@@ -6,7 +6,7 @@
6
6
  You may redistribute it and/or modify it under the same
7
7
  license terms as Ruby.
8
8
 
9
- $Id: locale.rb,v 1.11 2006/03/15 16:34:05 mutoh Exp $
9
+ $Id: locale.rb,v 1.12 2006/08/17 17:24:18 mutoh Exp $
10
10
  =end
11
11
 
12
12
  require 'gettext/locale_object'
@@ -147,7 +147,8 @@ module Locale
147
147
  # * charset: charset as String or nil
148
148
  # * Returns: a Locale::Object.
149
149
  #
150
- # Sets a default locale. This function is an alias of Locale.set_default.
150
+ # Sets a default locale. This function is an alias of Locale.set_default with
151
+ # calling set_current(nil).
151
152
  #
152
153
  # *Notice*: Locale.set(lctype, locale) is deprecated.
153
154
  def set(lang, country = nil, charset = nil)
@@ -214,4 +215,10 @@ module Locale
214
215
  set_current(nil)
215
216
  self
216
217
  end
218
+
219
+ # Gets the current system module. This is used for debugging.
220
+ # * Returns: the system module.
221
+ def system_module
222
+ @@locale_system_module
223
+ end
217
224
  end
@@ -6,7 +6,7 @@
6
6
  You may redistribute it and/or modify it under the same
7
7
  license terms as Ruby.
8
8
 
9
- $Id: locale_cgi.rb,v 1.4 2006/06/11 15:36:20 mutoh Exp $
9
+ $Id: locale_cgi.rb,v 1.6 2006/09/10 15:08:32 mutoh Exp $
10
10
  =end
11
11
 
12
12
 
@@ -26,15 +26,16 @@ module Locale
26
26
  if ret = cgi_["lang"] and ret.size > 0
27
27
  elsif ret = cgi_.cookies["lang"][0]
28
28
  elsif lang = cgi_.accept_language and lang.size > 0
29
- ret = lang.split(/,|;/).first
29
+ num = lang.index(/;|,/)
30
+ ret = num ? lang[0, num] : lang
30
31
  else
31
32
  ret = @@default_locale.to_str
32
33
  end
33
34
 
34
35
  codesets = cgi_.accept_charset
35
36
  if codesets and codesets.size > 0
36
- ary = codesets.split(',')
37
- codeset = ary[0]
37
+ num = codesets.index(',')
38
+ codeset = num ? codesets[0, num] : codesets
38
39
  codeset = @@default_locale.charset if codeset == "*"
39
40
  else
40
41
  codeset = @@default_locale.charset
@@ -6,7 +6,7 @@
6
6
  You may redistribute it and/or modify it under the same
7
7
  license terms as Ruby.
8
8
 
9
- $Id: locale_object.rb,v 1.8 2006/06/11 15:36:20 mutoh Exp $
9
+ $Id: locale_object.rb,v 1.10 2006/09/10 15:08:32 mutoh Exp $
10
10
  =end
11
11
 
12
12
 
@@ -53,6 +53,7 @@ module Locale
53
53
  # "zh_Hant" => ["zh", nil, nil, "Hant", nil]
54
54
  # "zh_Hant_HK" => ["zh", "HK", nil, "Hant", nil]
55
55
  # "de_DE@collation=phonebook,currency=DDM" => ["de", "DE", nil, nil, "collation=phonebook,currency=DDM"]
56
+
56
57
  def self.parse(locale_name)
57
58
  lang_charset, modifier = locale_name.split(/@/)
58
59
  lang, charset = lang_charset.split(/\./)
@@ -60,10 +61,10 @@ module Locale
60
61
  language = language ? language.downcase : nil
61
62
  language = "en" if language == "c" || language == "posix"
62
63
  if country
63
- if country =~ /[A-Z][a-z]+/ #Latn => script
64
+ if country =~ /\A[A-Z][a-z]+\Z/ #Latn => script
64
65
  tmp = script
65
66
  script = country
66
- if tmp =~ /[A-Z]+/ # US => country
67
+ if tmp =~ /\A[A-Z]+\Z/ #US => country
67
68
  country = tmp
68
69
  else
69
70
  country = nil
@@ -71,7 +72,7 @@ module Locale
71
72
  end
72
73
  else
73
74
  country = country.upcase
74
- if script !~ /[A-Z][a-z]+/ #Latn => script
75
+ if script !~ /\A[A-Z][a-z]+\Z/ #Latn => script
75
76
  variant = script
76
77
  script = nil
77
78
  end
@@ -1,13 +1,13 @@
1
1
  #!/usr/bin/ruby
2
2
  =begin
3
- parser/activerecord.rb - parser for ActiveRecord
3
+ parser/active_record.rb - parser for ActiveRecord
4
4
 
5
5
  Copyright (C) 2005, 2006 Masao Mutoh
6
6
 
7
7
  You may redistribute it and/or modify it under the same
8
8
  license terms as Ruby.
9
9
 
10
- $Id: activerecord.rb,v 1.11 2006/07/13 18:22:09 mutoh Exp $
10
+ $Id: active_record.rb,v 1.2 2006/08/28 23:54:53 mutoh Exp $
11
11
  =end
12
12
 
13
13
  require 'gettext'
@@ -48,6 +48,13 @@ module GetText
48
48
  # * :db_mode - the mode of the database. Default is "development"
49
49
  # * :activerecord_classes - an Array of the superclass of the models. The classes should be String value. Default is ["ActiveRecord::Base"]
50
50
  # * :untranslate_columns - an Array of the column names which is ignored as the msgid.
51
+ # * :adapter - the options for ActiveRecord::Base.establish_connection. If this value is set, :db_yml option is ignored.
52
+ # * :host - ditto
53
+ # * :username - ditto
54
+ # * :password - ditto
55
+ # * :database - ditto
56
+ # * :socket - ditto
57
+ # * :encoding - ditto
51
58
  #
52
59
  # "ClassName|FieldName" uses GetText.sgettext. So you don't need to translate the left-side of "|".
53
60
  # See <Documents for Translators for more details(http://www.yotabanana.com/hiki/ruby-gettext-translate.html)>.
@@ -75,15 +82,17 @@ module GetText
75
82
  loaded_constants = constants - old_constants
76
83
  loaded_constants.each do |classname|
77
84
  klass = eval(classname)
78
- if klass < ActiveRecord::Base
85
+ if klass.is_a?(Class) && klass < ActiveRecord::Base
79
86
  unless klass.untranslate_all?
80
87
  add_target(targets, file, ::Inflector.singularize(klass.table_name.gsub(/_/, " ")))
81
- tablename = klass.class_name
88
+ unless klass.class_name == classname
89
+ add_target(targets, file, ::Inflector.singularize(classname.gsub(/_/, " ").downcase))
90
+ end
82
91
  begin
83
92
  klass.columns.each do |column|
84
93
  unless untranslate_column?(klass, column.name)
85
94
  if @config[:use_classname]
86
- msgid = tablename + "|" + klass.human_attribute_name(column.name)
95
+ msgid = classname + "|" + klass.human_attribute_name(column.name)
87
96
  else
88
97
  msgid = klass.human_attribute_name(column.name)
89
98
  end
@@ -114,28 +123,36 @@ module GetText
114
123
  targets
115
124
  end
116
125
 
126
+ @@db_loaded = nil
117
127
  def target?(file) # :nodoc:
118
128
  init(nil) unless @ar_re
119
129
  data = IO.readlines(file)
120
130
  data.each do |v|
121
131
  if @ar_re =~ v
122
- unless @db
132
+ unless @@db_loaded
123
133
  begin
124
134
  require 'rubygems'
135
+ require_gem 'activerecord'
125
136
  rescue LoadError
126
137
  $stderr.puts _("rubygems are not found.") if $DEBUG
127
138
  end
128
139
  require 'active_record'
129
- begin
130
- yml = YAML.load(ERB.new(IO.read(@config[:db_yml])).result)
131
- rescue
132
- return false
140
+ require 'gettext/active_record'
141
+ if @config[:adapter]
142
+ ActiveRecord::Base.establish_connection(@config)
143
+ else
144
+ begin
145
+ yml = YAML.load(ERB.new(IO.read(@config[:db_yml])).result)
146
+ rescue
147
+ return false
148
+ end
149
+ ENV["RAILS_ENV"] = @config[:db_mode]
150
+ require_rails 'config/boot.rb'
151
+ require_rails 'config/environment.rb'
152
+ require_rails 'app/controllers/application.rb'
133
153
  end
134
- ENV["RAILS_ENV"] = @config[:db_mode]
135
- require_rails 'config/boot.rb'
136
- require_rails 'config/environment.rb'
137
- require_rails 'app/controllers/application.rb'
138
154
  end
155
+ @@db_loaded = true
139
156
  return true
140
157
  end
141
158
  end