gettext 1.10.0 → 1.90.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 (327) hide show
  1. data/ChangeLog +156 -2
  2. data/NEWS +28 -0
  3. data/README +128 -138
  4. data/Rakefile +83 -43
  5. data/data/locale/es/LC_MESSAGES/rails.mo +0 -0
  6. data/data/locale/hu/LC_MESSAGES/rails.mo +0 -0
  7. data/data/locale/hu/LC_MESSAGES/rgettext.mo +0 -0
  8. data/data/locale/ua/LC_MESSAGES/rails.mo +0 -0
  9. data/data/locale/ua/LC_MESSAGES/rgettext.mo +0 -0
  10. data/doc/classes/ActiveRecord/Base.html +360 -0
  11. data/doc/classes/ActiveRecord/ConnectionAdapters/Column.html +182 -0
  12. data/doc/classes/ActiveRecord/Migration.html +118 -0
  13. data/doc/classes/GetText.html +1790 -0
  14. data/doc/classes/GetText/ActiveRecordParser.html +236 -0
  15. data/doc/classes/GetText/Container.html +119 -0
  16. data/doc/classes/GetText/ErbContainer.html +223 -0
  17. data/doc/classes/GetText/ErbParser.html +156 -0
  18. data/doc/classes/GetText/GladeParser.html +133 -0
  19. data/doc/classes/GetText/NoboundTextDomainError.html +119 -0
  20. data/doc/classes/GetText/PoParser.html +169 -0
  21. data/doc/classes/GetText/Rails.html +293 -0
  22. data/doc/classes/GetText/RubyParser.html +123 -0
  23. data/doc/classes/GetText/TextDomain.html +572 -0
  24. data/doc/classes/GetText/TextDomainManager.html +443 -0
  25. data/doc/classes/Iconv.html +257 -0
  26. data/doc/classes/Iconv/Failure.html +105 -0
  27. data/doc/classes/Iconv/IllegalSequence.html +118 -0
  28. data/doc/classes/Iconv/InvalidCharacter.html +118 -0
  29. data/doc/classes/Iconv/InvalidEncoding.html +118 -0
  30. data/doc/classes/Locale.html +839 -0
  31. data/doc/classes/Locale/Object.html +799 -0
  32. data/doc/classes/Locale/SystemBase.html +271 -0
  33. data/doc/classes/Locale/SystemCGI.html +312 -0
  34. data/doc/classes/Locale/SystemJRuby.html +112 -0
  35. data/doc/classes/Locale/SystemPosix.html +113 -0
  36. data/doc/classes/Locale/SystemWin32.html +182 -0
  37. data/doc/classes/MOFile.html +678 -0
  38. data/doc/classes/MOFile/InvalidFormat.html +111 -0
  39. data/doc/classes/Module.html +158 -0
  40. data/doc/classes/String.html +225 -0
  41. data/doc/created.rid +1 -0
  42. data/doc/files/ChangeLog.html +2355 -0
  43. data/doc/files/README.html +510 -0
  44. data/doc/files/lib/gettext/active_record_rb.html +110 -0
  45. data/doc/files/lib/gettext/cgi_rb.html +110 -0
  46. data/doc/files/lib/gettext/container_rb.html +108 -0
  47. data/doc/files/lib/gettext/erb_rb.html +109 -0
  48. data/doc/files/lib/gettext/iconv_rb.html +109 -0
  49. data/doc/files/lib/gettext/mo_rb.html +108 -0
  50. data/doc/files/lib/gettext/parser/active_record_rb.html +119 -0
  51. data/doc/files/lib/gettext/parser/erb_rb.html +109 -0
  52. data/doc/files/lib/gettext/parser/glade_rb.html +109 -0
  53. data/doc/files/lib/gettext/parser/ruby_rb.html +110 -0
  54. data/doc/files/lib/gettext/poparser_rb.html +108 -0
  55. data/doc/files/lib/gettext/rails_compat_rb.html +108 -0
  56. data/doc/files/lib/gettext/rails_rb.html +112 -0
  57. data/doc/files/lib/gettext/rgettext_rb.html +110 -0
  58. data/doc/files/lib/gettext/rmsgfmt_rb.html +112 -0
  59. data/doc/files/lib/gettext/rmsgmerge_rb.html +112 -0
  60. data/doc/files/lib/gettext/string_rb.html +101 -0
  61. data/doc/files/lib/gettext/textdomain_rb.html +109 -0
  62. data/doc/files/lib/gettext/textdomainmanager_rb.html +109 -0
  63. data/doc/files/lib/gettext/utils_rb.html +111 -0
  64. data/doc/files/lib/gettext/version_rb.html +101 -0
  65. data/doc/files/lib/gettext_rb.html +113 -0
  66. data/doc/files/lib/locale/base_rb.html +101 -0
  67. data/doc/files/lib/locale/cgi_rb.html +108 -0
  68. data/doc/files/lib/locale/jruby_rb.html +110 -0
  69. data/doc/files/lib/locale/object_rb.html +101 -0
  70. data/doc/files/lib/locale/posix_rb.html +108 -0
  71. data/doc/files/lib/locale/win32_rb.html +110 -0
  72. data/doc/files/lib/locale/win32_table_rb.html +101 -0
  73. data/doc/files/lib/locale_rb.html +111 -0
  74. data/doc/fr_class_index.html +57 -0
  75. data/doc/fr_file_index.html +58 -0
  76. data/doc/fr_method_index.html +155 -0
  77. data/doc/index.html +24 -0
  78. data/doc/rdoc-style.css +208 -0
  79. data/lib/gettext.rb +102 -50
  80. data/lib/gettext/cgi.rb +2 -27
  81. data/lib/gettext/iconv.rb +76 -62
  82. data/lib/gettext/mo.rb +3 -3
  83. data/lib/gettext/parser/erb.rb +2 -2
  84. data/lib/gettext/rails.rb +69 -48
  85. data/lib/gettext/rgettext.rb +2 -2
  86. data/lib/gettext/rmsgmerge.rb +2 -2
  87. data/lib/gettext/string.rb +9 -5
  88. data/lib/gettext/textdomain.rb +3 -3
  89. data/lib/gettext/textdomainmanager.rb +5 -5
  90. data/lib/gettext/utils.rb +4 -3
  91. data/lib/gettext/version.rb +1 -1
  92. data/lib/{gettext/locale.rb → locale.rb} +11 -58
  93. data/lib/locale/base.rb +60 -0
  94. data/lib/{gettext/locale_cgi.rb → locale/cgi.rb} +30 -28
  95. data/lib/locale/jruby.rb +36 -0
  96. data/lib/{gettext/locale_object.rb → locale/object.rb} +78 -24
  97. data/lib/locale/posix.rb +22 -0
  98. data/lib/locale/win32.rb +48 -0
  99. data/lib/{gettext/locale_table_win32.rb → locale/win32_table.rb} +3 -2
  100. data/po/es/rails.po +1 -2
  101. data/po/hu/rails.po +139 -0
  102. data/po/hu/rgettext.po +126 -0
  103. data/po/ja/rails.po +5 -5
  104. data/po/ua/rails.po +150 -0
  105. data/po/ua/rgettext.po +132 -0
  106. data/pre-setup.rb +2 -4
  107. data/samples/cgi/cookie.cgi +1 -0
  108. data/samples/cgi/helloerb1.cgi +6 -3
  109. data/samples/cgi/helloerb2.cgi +6 -3
  110. data/samples/cgi/http.rb +3 -7
  111. data/samples/cgi/index.cgi +2 -1
  112. data/samples/cgi/locale/hu/LC_MESSAGES/helloerb1.mo +0 -0
  113. data/samples/cgi/locale/hu/LC_MESSAGES/helloerb2.mo +0 -0
  114. data/samples/cgi/locale/hu/LC_MESSAGES/hellolib.mo +0 -0
  115. data/samples/cgi/locale/hu/LC_MESSAGES/main.mo +0 -0
  116. data/samples/cgi/locale/ua/LC_MESSAGES/helloerb1.mo +0 -0
  117. data/samples/cgi/locale/ua/LC_MESSAGES/helloerb2.mo +0 -0
  118. data/samples/cgi/locale/ua/LC_MESSAGES/hellolib.mo +0 -0
  119. data/samples/cgi/locale/ua/LC_MESSAGES/main.mo +0 -0
  120. data/samples/cgi/po/hu/helloerb1.po +59 -0
  121. data/samples/cgi/po/hu/helloerb2.po +51 -0
  122. data/samples/cgi/po/hu/hellolib.po +23 -0
  123. data/samples/cgi/po/hu/main.po +82 -0
  124. data/samples/cgi/po/ua/helloerb1.po +62 -0
  125. data/samples/cgi/po/ua/helloerb2.po +54 -0
  126. data/samples/cgi/po/ua/hellolib.po +26 -0
  127. data/samples/cgi/po/ua/main.po +84 -0
  128. data/samples/locale/hu/LC_MESSAGES/hello.mo +0 -0
  129. data/samples/locale/hu/LC_MESSAGES/hello2.mo +0 -0
  130. data/samples/locale/hu/LC_MESSAGES/hello_noop.mo +0 -0
  131. data/samples/locale/hu/LC_MESSAGES/hello_plural.mo +0 -0
  132. data/samples/locale/hu/LC_MESSAGES/helloglade2.mo +0 -0
  133. data/samples/locale/hu/LC_MESSAGES/hellogtk.mo +0 -0
  134. data/samples/locale/hu/LC_MESSAGES/hellotk.mo +0 -0
  135. data/samples/locale/ua/LC_MESSAGES/hello.mo +0 -0
  136. data/samples/locale/ua/LC_MESSAGES/hello2.mo +0 -0
  137. data/samples/locale/ua/LC_MESSAGES/hello_noop.mo +0 -0
  138. data/samples/locale/ua/LC_MESSAGES/hello_plural.mo +0 -0
  139. data/samples/locale/ua/LC_MESSAGES/helloglade2.mo +0 -0
  140. data/samples/locale/ua/LC_MESSAGES/hellogtk.mo +0 -0
  141. data/samples/locale/ua/LC_MESSAGES/hellotk.mo +0 -0
  142. data/samples/po/hu/hello.po +22 -0
  143. data/samples/po/hu/hello2.po +30 -0
  144. data/samples/po/hu/hello_noop.po +26 -0
  145. data/samples/po/hu/hello_plural.po +25 -0
  146. data/samples/po/hu/helloglade2.po +31 -0
  147. data/samples/po/hu/hellogtk.po +22 -0
  148. data/samples/po/hu/hellotk.po +23 -0
  149. data/samples/po/ua/hello.po +22 -0
  150. data/samples/po/ua/hello2.po +30 -0
  151. data/samples/po/ua/hello_noop.po +26 -0
  152. data/samples/po/ua/hello_plural.po +29 -0
  153. data/samples/po/ua/helloglade2.po +34 -0
  154. data/samples/po/ua/hellogtk.po +22 -0
  155. data/samples/po/ua/hellotk.po +26 -0
  156. data/samples/rails/README +15 -31
  157. data/samples/rails/Rakefile +1 -1
  158. data/samples/rails/app/controllers/application.rb +11 -4
  159. data/samples/rails/app/controllers/articles_controller.rb +96 -0
  160. data/samples/rails/app/helpers/application_helper.rb +1 -1
  161. data/samples/rails/app/helpers/{blog_helper.rb → articles_helper.rb} +6 -7
  162. data/samples/rails/app/views/articles/edit.html.erb +18 -0
  163. data/samples/rails/app/views/articles/index.html.erb +17 -0
  164. data/samples/rails/app/views/articles/new.html.erb +16 -0
  165. data/samples/rails/app/views/articles/show.html.erb +6 -0
  166. data/samples/rails/app/views/layouts/articles.html.erb +26 -0
  167. data/samples/rails/config/boot.rb +104 -13
  168. data/samples/rails/config/database.yml +24 -21
  169. data/samples/rails/config/environment.rb +35 -30
  170. data/samples/rails/config/environments/development.rb +5 -6
  171. data/samples/rails/config/environments/production.rb +2 -3
  172. data/samples/rails/config/environments/test.rb +5 -2
  173. data/samples/rails/config/initializers/inflections.rb +10 -0
  174. data/samples/rails/config/initializers/mime_types.rb +5 -0
  175. data/samples/rails/config/routes.rb +30 -11
  176. data/samples/rails/db/migrate/001_create_articles.rb +14 -0
  177. data/samples/rails/db/schema.rb +16 -5
  178. data/samples/rails/lib/tasks/gettext.rake +2 -2
  179. data/samples/rails/locale/bs/LC_MESSAGES/blog.mo +0 -0
  180. data/samples/rails/locale/ca/LC_MESSAGES/blog.mo +0 -0
  181. data/samples/rails/locale/cs/LC_MESSAGES/blog.mo +0 -0
  182. data/samples/rails/locale/de/LC_MESSAGES/blog.mo +0 -0
  183. data/samples/rails/locale/el/LC_MESSAGES/blog.mo +0 -0
  184. data/samples/rails/locale/en/LC_MESSAGES/blog.mo +0 -0
  185. data/samples/rails/locale/eo/LC_MESSAGES/blog.mo +0 -0
  186. data/samples/rails/locale/es/LC_MESSAGES/blog.mo +0 -0
  187. data/samples/rails/locale/fr/LC_MESSAGES/blog.mo +0 -0
  188. data/samples/rails/locale/hr/LC_MESSAGES/blog.mo +0 -0
  189. data/samples/rails/locale/hu/LC_MESSAGES/blog.mo +0 -0
  190. data/samples/rails/locale/it/LC_MESSAGES/blog.mo +0 -0
  191. data/samples/rails/locale/ja/LC_MESSAGES/blog.mo +0 -0
  192. data/samples/rails/locale/ko/LC_MESSAGES/blog.mo +0 -0
  193. data/samples/rails/locale/nb/LC_MESSAGES/blog.mo +0 -0
  194. data/samples/rails/locale/nl/LC_MESSAGES/blog.mo +0 -0
  195. data/samples/rails/locale/pt_BR/LC_MESSAGES/blog.mo +0 -0
  196. data/samples/rails/locale/ru/LC_MESSAGES/blog.mo +0 -0
  197. data/samples/rails/locale/ua/LC_MESSAGES/blog.mo +0 -0
  198. data/samples/rails/locale/vi/LC_MESSAGES/blog.mo +0 -0
  199. data/samples/rails/locale/zh/LC_MESSAGES/blog.mo +0 -0
  200. data/samples/rails/locale/zh_TW/LC_MESSAGES/blog.mo +0 -0
  201. data/samples/rails/po/blog.pot +24 -24
  202. data/samples/rails/po/bs/blog.po +29 -29
  203. data/samples/rails/po/ca/blog.po +27 -27
  204. data/samples/rails/po/cs/blog.po +27 -27
  205. data/samples/rails/po/de/blog.po +27 -27
  206. data/samples/rails/po/el/blog.po +27 -27
  207. data/samples/rails/po/en/blog.po +24 -24
  208. data/samples/rails/po/eo/blog.po +27 -27
  209. data/samples/rails/po/es/blog.po +27 -27
  210. data/samples/rails/po/fr/blog.po +27 -27
  211. data/samples/rails/po/hr/blog.po +29 -29
  212. data/samples/rails/po/hu/blog.po +105 -0
  213. data/samples/rails/po/it/blog.po +27 -27
  214. data/samples/rails/po/ja/blog.po +27 -27
  215. data/samples/rails/po/ko/blog.po +27 -27
  216. data/samples/rails/po/nb/blog.po +26 -27
  217. data/samples/rails/po/nl/blog.po +27 -27
  218. data/samples/rails/po/pt_BR/blog.po +27 -27
  219. data/samples/rails/po/ru/blog.po +27 -27
  220. data/samples/rails/po/ua/blog.po +108 -0
  221. data/samples/rails/po/vi/blog.po +26 -31
  222. data/samples/rails/po/zh/blog.po +27 -27
  223. data/samples/rails/po/zh_TW/blog.po +27 -27
  224. data/samples/rails/public/404.html +27 -5
  225. data/samples/rails/public/422.html +30 -0
  226. data/samples/rails/public/500.html +27 -5
  227. data/samples/rails/public/index.html +6 -6
  228. data/samples/rails/public/javascripts/application.js +2 -0
  229. data/samples/rails/public/javascripts/controls.js +532 -319
  230. data/samples/rails/public/javascripts/dragdrop.js +521 -133
  231. data/samples/rails/public/javascripts/effects.js +708 -442
  232. data/samples/rails/public/javascripts/prototype.js +3393 -953
  233. data/samples/rails/public/stylesheets/blog.css +4 -0
  234. data/samples/rails/public/stylesheets/scaffold.css +5 -5
  235. data/samples/rails/test/functional/articles_controller_test.rb +51 -0
  236. data/samples/rails/test/test_helper.rb +31 -19
  237. data/samples/rails/test/unit/article_test.rb +2 -9
  238. data/samples/rails/vendor/plugins/gettext/init.rb +5 -3
  239. data/samples/rails/vendor/plugins/gettext/lib/gettext_plugin.rb +9 -10
  240. data/samples/rails/vendor/plugins/gettext/locale/eo/LC_MESSAGES/gettext_plugin.mo +0 -0
  241. data/samples/rails/vendor/plugins/gettext/locale/hu/LC_MESSAGES/gettext_plugin.mo +0 -0
  242. data/samples/rails/vendor/plugins/gettext/locale/ua/LC_MESSAGES/gettext_plugin.mo +0 -0
  243. data/samples/rails/vendor/plugins/gettext/po/eo/gettext_plugin.po +28 -0
  244. data/samples/rails/vendor/plugins/gettext/po/hu/gettext_plugin.po +27 -0
  245. data/samples/rails/vendor/plugins/gettext/po/ua/gettext_plugin.po +30 -0
  246. data/test/Rakefile +2 -1
  247. data/test/benchmark.rb +28 -0
  248. data/test/fixtures/topic.rb +15 -0
  249. data/test/rails/Rakefile +2 -1
  250. data/test/rails/app/controllers/articles_controller.rb +1 -1
  251. data/test/rails/app/controllers/users_controller.rb +10 -0
  252. data/test/rails/app/models/user.rb +2 -1
  253. data/test/rails/app/views/articles/{_form.rhtml → _form.html.erb} +0 -0
  254. data/test/rails/app/views/articles/active_form_error.html.erb +1 -0
  255. data/test/rails/app/views/articles/change_title_error_messages_for.html.erb +21 -0
  256. data/test/rails/app/views/articles/{edit.rhtml → edit.html.erb} +0 -0
  257. data/test/rails/app/views/articles/{list.rhtml → list.html.erb} +0 -3
  258. data/test/rails/app/views/articles/{list_fr.rhtml → list_fr.html.erb} +0 -0
  259. data/test/rails/app/views/articles/{multi_error_messages_for.rhtml → multi_error_messages_for.html.erb} +0 -0
  260. data/test/rails/app/views/articles/{new.rhtml → new.html.erb} +0 -0
  261. data/test/rails/app/views/articles/{show.rhtml → show.html.erb} +0 -0
  262. data/test/rails/app/views/layouts/{application.rhtml → application.html.erb} +0 -0
  263. data/test/rails/app/views/layouts/{mailer.rhtml → mailer.html.erb} +0 -0
  264. data/test/rails/app/views/layouts/users.html.erb +13 -0
  265. data/test/rails/app/views/users/custom_error_message.html.erb +13 -0
  266. data/test/rails/app/views/users/custom_error_message_fr.html.erb +13 -0
  267. data/test/rails/config/environment.rb +6 -1
  268. data/test/rails/config/environments/development.rb +0 -3
  269. data/test/rails/db/schema.rb +17 -10
  270. data/test/rails/locale/ja/LC_MESSAGES/rails_test.mo +0 -0
  271. data/test/rails/log/development.log +136 -29
  272. data/test/rails/log/test.log +2002 -128
  273. data/test/rails/po/ja/rails_test.po +68 -61
  274. data/test/rails/po/rails_test.pot +57 -55
  275. data/test/rails/test/fixtures/users.yml +5 -0
  276. data/test/rails/test/functional/articles_controller_test.rb +6 -1
  277. data/test/rails/test/functional/users_controller_test.rb +65 -0
  278. data/test/rails/test/result/en/custom_error_message.html +83 -0
  279. data/test/rails/test/result/en/custom_error_message_with_plural.html +83 -0
  280. data/test/rails/test/result/en/list.html +0 -3
  281. data/test/rails/test/result/en/multi_error_messages_for.html +1 -1
  282. data/test/rails/test/result/fr/custom_error_message.html +83 -0
  283. data/test/rails/test/result/fr/custom_error_message_with_plural.html +83 -0
  284. data/test/rails/test/result/ja/custom_error_message.html +83 -0
  285. data/test/rails/test/result/ja/custom_error_message_with_plural.html +83 -0
  286. data/test/rails/test/result/ja/list.html +0 -3
  287. data/test/rails/test/result/ja/multi_error_messages_for.html +1 -1
  288. data/test/test.sh +5 -7
  289. data/test/{gettext_test_active_record.rb → test_active_record.rb} +20 -10
  290. data/test/{gettext_test_cgi.rb → test_cgi.rb} +0 -0
  291. data/test/{gettext_test.rb → test_gettext.rb} +91 -9
  292. data/test/test_java.sh +12 -0
  293. data/test/{gettext_test_locale.rb → test_locale.rb} +3 -8
  294. data/test/{gettext_test_multi_textdomain.rb → test_multi_textdomain.rb} +2 -2
  295. data/test/{gettext_test_parser.rb → test_parser.rb} +77 -77
  296. data/test/{gettext_test_rails.rb → test_rails.rb} +0 -0
  297. data/test/{gettext_test_rails_caching.rb → test_rails_caching.rb} +16 -2
  298. data/test/{gettext_test_string.rb → test_string.rb} +1 -0
  299. data/test/{test_rubyparser_N.rb → testlib/N_.rb} +0 -0
  300. data/test/testlib/erb.rhtml +15 -0
  301. data/test/testlib/erb.rxml +16 -0
  302. data/test/{test_rubyparser.rb → testlib/gettext.rb} +0 -0
  303. data/test/testlib/gladeparser.glade +183 -0
  304. data/test/{test_rubyparser_n_.rb → testlib/ngettext.rb} +0 -0
  305. data/test/{test_nsgettext.rb → testlib/nsgettext.rb} +0 -0
  306. data/test/{test_sgettext.rb → testlib/sgettext.rb} +0 -0
  307. data/test/{testlib1.rb → testlib/testlib1.rb} +0 -0
  308. data/test/{testlib2.rb → testlib/testlib2.rb} +1 -1
  309. data/test/{testlib3.rb → testlib/testlib3.rb} +0 -0
  310. data/test/{testlib4.rb → testlib/testlib4.rb} +1 -1
  311. data/test/{testlib5.rb → testlib/testlib5.rb} +0 -0
  312. data/test/{testlib6.rb → testlib/testlib6.rb} +0 -0
  313. metadata +1374 -1171
  314. data/ext/gettext/extconf.rb +0 -20
  315. data/ext/gettext/locale_system.c +0 -83
  316. data/lib/gettext/locale_posix.rb +0 -82
  317. data/lib/gettext/locale_win32.rb +0 -82
  318. data/samples/cgi/ruby.bat +0 -4
  319. data/samples/rails/app/controllers/blog_controller.rb +0 -58
  320. data/samples/rails/app/views/blog/_form.rhtml +0 -25
  321. data/samples/rails/app/views/blog/edit.rhtml +0 -22
  322. data/samples/rails/app/views/blog/list.rhtml +0 -29
  323. data/samples/rails/app/views/blog/new.rhtml +0 -21
  324. data/samples/rails/app/views/blog/show.rhtml +0 -18
  325. data/samples/rails/app/views/layouts/blog.rhtml +0 -36
  326. data/samples/rails/test/functional/blog_controller_test.rb +0 -98
  327. data/test/gettext_runner.rb +0 -22
@@ -0,0 +1,182 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Class: ActiveRecord::ConnectionAdapters::Column</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Class</strong></td>
53
+ <td class="class-name-in-header">ActiveRecord::ConnectionAdapters::Column</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../../files/lib/gettext/active_record_rb.html">
59
+ lib/gettext/active_record.rb
60
+ </a>
61
+ <br />
62
+ </td>
63
+ </tr>
64
+
65
+ <tr class="top-aligned-row">
66
+ <td><strong>Parent:</strong></td>
67
+ <td>
68
+ Object
69
+ </td>
70
+ </tr>
71
+ </table>
72
+ </div>
73
+ <!-- banner header -->
74
+
75
+ <div id="bodyContent">
76
+
77
+
78
+
79
+ <div id="contextContent">
80
+
81
+ <div id="description">
82
+ <p>
83
+ An abstract definition of a column in a table.
84
+ </p>
85
+
86
+ </div>
87
+
88
+
89
+ </div>
90
+
91
+ <div id="method-list">
92
+ <h3 class="section-bar">Methods</h3>
93
+
94
+ <div class="name-list">
95
+ <a href="#M000122">human_name_with_gettext</a>&nbsp;&nbsp;
96
+ </div>
97
+ </div>
98
+
99
+ </div>
100
+
101
+
102
+ <!-- if includes -->
103
+
104
+ <div id="section">
105
+
106
+
107
+
108
+ <div id="aliases-list">
109
+ <h3 class="section-bar">External Aliases</h3>
110
+
111
+ <div class="name-list">
112
+ <table summary="aliases">
113
+ <tr class="top-aligned-row context-row">
114
+ <td class="context-item-name">human_name</td>
115
+ <td>-&gt;</td>
116
+ <td class="context-item-value">human_name_witout_localized</td>
117
+ </tr>
118
+ </table>
119
+ </div>
120
+ </div>
121
+
122
+
123
+ <div id="attribute-list">
124
+ <h3 class="section-bar">Attributes</h3>
125
+
126
+ <div class="name-list">
127
+ <table>
128
+ <tr class="top-aligned-row context-row">
129
+ <td class="context-item-name">table_class</td>
130
+ <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
131
+ <td class="context-item-desc"></td>
132
+ </tr>
133
+ </table>
134
+ </div>
135
+ </div>
136
+
137
+
138
+
139
+ <!-- if method_list -->
140
+ <div id="methods">
141
+ <h3 class="section-bar">Public Instance methods</h3>
142
+
143
+ <div id="method-M000122" class="method-detail">
144
+ <a name="M000122"></a>
145
+
146
+ <div class="method-heading">
147
+ <a href="#M000122" class="method-signature">
148
+ <span class="method-name">human_name_with_gettext</span><span class="method-args">()</span>
149
+ </a>
150
+ </div>
151
+
152
+ <div class="method-description">
153
+ <p><a class="source-toggle" href="#"
154
+ onclick="toggleCode('M000122-source');return false;">[Source]</a></p>
155
+ <div class="method-source-code" id="M000122-source">
156
+ <pre>
157
+ <span class="ruby-comment cmt"># File lib/gettext/active_record.rb, line 40</span>
158
+ 40: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">human_name_with_gettext</span>
159
+ 41: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">table_class</span>
160
+ 42: <span class="ruby-identifier">table_class</span>.<span class="ruby-identifier">human_attribute_name</span>(<span class="ruby-ivar">@name</span>)
161
+ 43: <span class="ruby-keyword kw">else</span>
162
+ 44: <span class="ruby-ivar">@name</span>.<span class="ruby-identifier">humanize</span>
163
+ 45: <span class="ruby-keyword kw">end</span>
164
+ 46: <span class="ruby-keyword kw">end</span>
165
+ </pre>
166
+ </div>
167
+ </div>
168
+ </div>
169
+
170
+
171
+ </div>
172
+
173
+
174
+ </div>
175
+
176
+
177
+ <div id="validator-badges">
178
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
179
+ </div>
180
+
181
+ </body>
182
+ </html>
@@ -0,0 +1,118 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Class: ActiveRecord::Migration</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Class</strong></td>
53
+ <td class="class-name-in-header">ActiveRecord::Migration</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../../files/lib/gettext/active_record_rb.html">
59
+ lib/gettext/active_record.rb
60
+ </a>
61
+ <br />
62
+ </td>
63
+ </tr>
64
+
65
+ <tr class="top-aligned-row">
66
+ <td><strong>Parent:</strong></td>
67
+ <td>
68
+ Object
69
+ </td>
70
+ </tr>
71
+ </table>
72
+ </div>
73
+ <!-- banner header -->
74
+
75
+ <div id="bodyContent">
76
+
77
+
78
+
79
+ <div id="contextContent">
80
+
81
+
82
+
83
+ </div>
84
+
85
+
86
+ </div>
87
+
88
+
89
+ <!-- if includes -->
90
+ <div id="includes">
91
+ <h3 class="section-bar">Included Modules</h3>
92
+
93
+ <div id="includes-list">
94
+ <span class="include-name"><a href="../GetText.html">GetText</a></span>
95
+ </div>
96
+ </div>
97
+
98
+ <div id="section">
99
+
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+ <!-- if method_list -->
108
+
109
+
110
+ </div>
111
+
112
+
113
+ <div id="validator-badges">
114
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
115
+ </div>
116
+
117
+ </body>
118
+ </html>
@@ -0,0 +1,1790 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
+ <head>
8
+ <title>Module: GetText</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
+ <script type="text/javascript">
13
+ // <![CDATA[
14
+
15
+ function popupCode( url ) {
16
+ window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
+ }
18
+
19
+ function toggleCode( id ) {
20
+ if ( document.getElementById )
21
+ elem = document.getElementById( id );
22
+ else if ( document.all )
23
+ elem = eval( "document.all." + id );
24
+ else
25
+ return false;
26
+
27
+ elemStyle = elem.style;
28
+
29
+ if ( elemStyle.display != "block" ) {
30
+ elemStyle.display = "block"
31
+ } else {
32
+ elemStyle.display = "none"
33
+ }
34
+
35
+ return true;
36
+ }
37
+
38
+ // Make codeblocks hidden by default
39
+ document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
+
41
+ // ]]>
42
+ </script>
43
+
44
+ </head>
45
+ <body>
46
+
47
+
48
+
49
+ <div id="classHeader">
50
+ <table class="header-table">
51
+ <tr class="top-aligned-row">
52
+ <td><strong>Module</strong></td>
53
+ <td class="class-name-in-header">GetText</td>
54
+ </tr>
55
+ <tr class="top-aligned-row">
56
+ <td><strong>In:</strong></td>
57
+ <td>
58
+ <a href="../files/lib/gettext/poparser_rb.html">
59
+ lib/gettext/poparser.rb
60
+ </a>
61
+ <br />
62
+ <a href="../files/lib/gettext/textdomain_rb.html">
63
+ lib/gettext/textdomain.rb
64
+ </a>
65
+ <br />
66
+ <a href="../files/lib/gettext/utils_rb.html">
67
+ lib/gettext/utils.rb
68
+ </a>
69
+ <br />
70
+ <a href="../files/lib/gettext/rails_rb.html">
71
+ lib/gettext/rails.rb
72
+ </a>
73
+ <br />
74
+ <a href="../files/lib/gettext/version_rb.html">
75
+ lib/gettext/version.rb
76
+ </a>
77
+ <br />
78
+ <a href="../files/lib/gettext/rgettext_rb.html">
79
+ lib/gettext/rgettext.rb
80
+ </a>
81
+ <br />
82
+ <a href="../files/lib/gettext/rmsgfmt_rb.html">
83
+ lib/gettext/rmsgfmt.rb
84
+ </a>
85
+ <br />
86
+ <a href="../files/lib/gettext/container_rb.html">
87
+ lib/gettext/container.rb
88
+ </a>
89
+ <br />
90
+ <a href="../files/lib/gettext/textdomainmanager_rb.html">
91
+ lib/gettext/textdomainmanager.rb
92
+ </a>
93
+ <br />
94
+ <a href="../files/lib/gettext/cgi_rb.html">
95
+ lib/gettext/cgi.rb
96
+ </a>
97
+ <br />
98
+ <a href="../files/lib/gettext/rmsgmerge_rb.html">
99
+ lib/gettext/rmsgmerge.rb
100
+ </a>
101
+ <br />
102
+ <a href="../files/lib/gettext/parser/glade_rb.html">
103
+ lib/gettext/parser/glade.rb
104
+ </a>
105
+ <br />
106
+ <a href="../files/lib/gettext/parser/ruby_rb.html">
107
+ lib/gettext/parser/ruby.rb
108
+ </a>
109
+ <br />
110
+ <a href="../files/lib/gettext/parser/active_record_rb.html">
111
+ lib/gettext/parser/active_record.rb
112
+ </a>
113
+ <br />
114
+ <a href="../files/lib/gettext/parser/erb_rb.html">
115
+ lib/gettext/parser/erb.rb
116
+ </a>
117
+ <br />
118
+ <a href="../files/lib/gettext/erb_rb.html">
119
+ lib/gettext/erb.rb
120
+ </a>
121
+ <br />
122
+ <a href="../files/lib/gettext_rb.html">
123
+ lib/gettext.rb
124
+ </a>
125
+ <br />
126
+ </td>
127
+ </tr>
128
+
129
+ </table>
130
+ </div>
131
+ <!-- banner header -->
132
+
133
+ <div id="bodyContent">
134
+
135
+
136
+
137
+ <div id="contextContent">
138
+
139
+
140
+
141
+ </div>
142
+
143
+ <div id="method-list">
144
+ <h3 class="section-bar">Methods</h3>
145
+
146
+ <div class="name-list">
147
+ <a href="#M000037">N_</a>&nbsp;&nbsp;
148
+ <a href="#M000038">Nn_</a>&nbsp;&nbsp;
149
+ <a href="#M000050">_</a>&nbsp;&nbsp;
150
+ <a href="#M000047">add_default_locale_path</a>&nbsp;&nbsp;
151
+ <a href="#M000030">bindtextdomain</a>&nbsp;&nbsp;
152
+ <a href="#M000031">bindtextdomain_to</a>&nbsp;&nbsp;
153
+ <a href="#M000027">cached=</a>&nbsp;&nbsp;
154
+ <a href="#M000028">cached?</a>&nbsp;&nbsp;
155
+ <a href="#M000025">cgi</a>&nbsp;&nbsp;
156
+ <a href="#M000024">cgi=</a>&nbsp;&nbsp;
157
+ <a href="#M000029">clear_cache</a>&nbsp;&nbsp;
158
+ <a href="#M000019">create_mofiles</a>&nbsp;&nbsp;
159
+ <a href="#M000048">current_textdomain_info</a>&nbsp;&nbsp;
160
+ <a href="#M000034">gettext</a>&nbsp;&nbsp;
161
+ <a href="#M000046">locale</a>&nbsp;&nbsp;
162
+ <a href="#M000042">locale=</a>&nbsp;&nbsp;
163
+ <a href="#M000018">msgmerge</a>&nbsp;&nbsp;
164
+ <a href="#M000051">n_</a>&nbsp;&nbsp;
165
+ <a href="#M000036">ngettext</a>&nbsp;&nbsp;
166
+ <a href="#M000053">ns_</a>&nbsp;&nbsp;
167
+ <a href="#M000039">nsgettext</a>&nbsp;&nbsp;
168
+ <a href="#M000045">output_charset</a>&nbsp;&nbsp;
169
+ <a href="#M000044">output_charset=</a>&nbsp;&nbsp;
170
+ <a href="#M000021">rgettext</a>&nbsp;&nbsp;
171
+ <a href="#M000022">rmsgfmt</a>&nbsp;&nbsp;
172
+ <a href="#M000026">rmsgmerge</a>&nbsp;&nbsp;
173
+ <a href="#M000052">s_</a>&nbsp;&nbsp;
174
+ <a href="#M000023">set_cgi</a>&nbsp;&nbsp;
175
+ <a href="#M000040">set_locale</a>&nbsp;&nbsp;
176
+ <a href="#M000041">set_locale_all</a>&nbsp;&nbsp;
177
+ <a href="#M000043">set_output_charset</a>&nbsp;&nbsp;
178
+ <a href="#M000049">setlocale</a>&nbsp;&nbsp;
179
+ <a href="#M000035">sgettext</a>&nbsp;&nbsp;
180
+ <a href="#M000032">textdomain</a>&nbsp;&nbsp;
181
+ <a href="#M000033">textdomain_to</a>&nbsp;&nbsp;
182
+ <a href="#M000020">update_pofiles</a>&nbsp;&nbsp;
183
+ </div>
184
+ </div>
185
+
186
+ </div>
187
+
188
+
189
+ <!-- if includes -->
190
+ <div id="includes">
191
+ <h3 class="section-bar">Included Modules</h3>
192
+
193
+ <div id="includes-list">
194
+ <span class="include-name"><a href="GetText.html">GetText</a></span>
195
+ <span class="include-name"><a href="GetText.html">GetText</a></span>
196
+ </div>
197
+ </div>
198
+
199
+ <div id="section">
200
+
201
+ <div id="class-list">
202
+ <h3 class="section-bar">Classes and Modules</h3>
203
+
204
+ Module <a href="GetText/ActiveRecordParser.html" class="link">GetText::ActiveRecordParser</a><br />
205
+ Module <a href="GetText/Container.html" class="link">GetText::Container</a><br />
206
+ Module <a href="GetText/ErbContainer.html" class="link">GetText::ErbContainer</a><br />
207
+ Module <a href="GetText/ErbParser.html" class="link">GetText::ErbParser</a><br />
208
+ Module <a href="GetText/GladeParser.html" class="link">GetText::GladeParser</a><br />
209
+ Module <a href="GetText/Rails.html" class="link">GetText::Rails</a><br />
210
+ Module <a href="GetText/RubyParser.html" class="link">GetText::RubyParser</a><br />
211
+ Class <a href="GetText/NoboundTextDomainError.html" class="link">GetText::NoboundTextDomainError</a><br />
212
+ Class <a href="GetText/PoParser.html" class="link">GetText::PoParser</a><br />
213
+ Class <a href="GetText/TextDomain.html" class="link">GetText::TextDomain</a><br />
214
+ Class <a href="GetText/TextDomainManager.html" class="link">GetText::TextDomainManager</a><br />
215
+
216
+ </div>
217
+
218
+ <div id="constants-list">
219
+ <h3 class="section-bar">Constants</h3>
220
+
221
+ <div class="name-list">
222
+ <table summary="Constants">
223
+ <tr class="top-aligned-row context-row">
224
+ <td class="context-item-name">VERSION</td>
225
+ <td>=</td>
226
+ <td class="context-item-value">&quot;1.90.0&quot;</td>
227
+ </tr>
228
+ </table>
229
+ </div>
230
+ </div>
231
+
232
+
233
+
234
+
235
+
236
+
237
+ <!-- if method_list -->
238
+ <div id="methods">
239
+ <h3 class="section-bar">Public Instance methods</h3>
240
+
241
+ <div id="method-M000037" class="method-detail">
242
+ <a name="M000037"></a>
243
+
244
+ <div class="method-heading">
245
+ <a href="#M000037" class="method-signature">
246
+ <span class="method-name">N_</span><span class="method-args">(msgid)</span>
247
+ </a>
248
+ </div>
249
+
250
+ <div class="method-description">
251
+ <p>
252
+ This function does nothing. But it is required in order to recognize the
253
+ msgid by <a href="GetText.html#M000021">rgettext</a>.
254
+ </p>
255
+ <ul>
256
+ <li>msgid: the message id.
257
+
258
+ </li>
259
+ <li>Returns: msgid.
260
+
261
+ </li>
262
+ </ul>
263
+ <p><a class="source-toggle" href="#"
264
+ onclick="toggleCode('M000037-source');return false;">[Source]</a></p>
265
+ <div class="method-source-code" id="M000037-source">
266
+ <pre>
267
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 310</span>
268
+ 310: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">N_</span>(<span class="ruby-identifier">msgid</span>)
269
+ 311: <span class="ruby-identifier">msgid</span>
270
+ 312: <span class="ruby-keyword kw">end</span>
271
+ </pre>
272
+ </div>
273
+ </div>
274
+ </div>
275
+
276
+ <div id="method-M000038" class="method-detail">
277
+ <a name="M000038"></a>
278
+
279
+ <div class="method-heading">
280
+ <a href="#M000038" class="method-signature">
281
+ <span class="method-name">Nn_</span><span class="method-args">(msgid, msgid_plural)</span>
282
+ </a>
283
+ </div>
284
+
285
+ <div class="method-description">
286
+ <p>
287
+ This is same function as <a href="GetText.html#M000037">N_</a> but for <a
288
+ href="GetText.html#M000036">ngettext</a>.
289
+ </p>
290
+ <ul>
291
+ <li>msgid: the message id.
292
+
293
+ </li>
294
+ <li>msgid_plural: the plural message id.
295
+
296
+ </li>
297
+ <li>Returns: msgid.
298
+
299
+ </li>
300
+ </ul>
301
+ <p><a class="source-toggle" href="#"
302
+ onclick="toggleCode('M000038-source');return false;">[Source]</a></p>
303
+ <div class="method-source-code" id="M000038-source">
304
+ <pre>
305
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 318</span>
306
+ 318: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">Nn_</span>(<span class="ruby-identifier">msgid</span>, <span class="ruby-identifier">msgid_plural</span>)
307
+ 319: [<span class="ruby-identifier">msgid</span>, <span class="ruby-identifier">msgid_plural</span>]
308
+ 320: <span class="ruby-keyword kw">end</span>
309
+ </pre>
310
+ </div>
311
+ </div>
312
+ </div>
313
+
314
+ <div id="method-M000050" class="method-detail">
315
+ <a name="M000050"></a>
316
+
317
+ <div class="method-heading">
318
+ <span class="method-name">_</span><span class="method-args">(msgid)</span>
319
+ </div>
320
+
321
+ <div class="method-description">
322
+ <p>
323
+ Alias for <a href="GetText.html#M000034">gettext</a>
324
+ </p>
325
+ </div>
326
+ </div>
327
+
328
+ <div id="method-M000047" class="method-detail">
329
+ <a name="M000047"></a>
330
+
331
+ <div class="method-heading">
332
+ <a href="#M000047" class="method-signature">
333
+ <span class="method-name">add_default_locale_path</span><span class="method-args">(path)</span>
334
+ </a>
335
+ </div>
336
+
337
+ <div class="method-description">
338
+ <p>
339
+ Add default <a href="GetText.html#M000046">locale</a> path.
340
+ </p>
341
+ <ul>
342
+ <li>path: a new <a href="GetText.html#M000046">locale</a> path. (e.g.)
343
+ &quot;/usr/share/locale/%{<a
344
+ href="GetText.html#M000046">locale</a>}/LC_MESSAGES/%{name}.mo&quot;
345
+ (&#8216;<a href="GetText.html#M000046">locale</a>&#8217; =&gt;
346
+ &quot;ja_JP&quot;, &#8216;name&#8217; =&gt; &quot;<a
347
+ href="GetText.html#M000032">textdomain</a>&quot;)
348
+
349
+ </li>
350
+ <li>Returns: the new DEFAULT_LOCALE_PATHS
351
+
352
+ </li>
353
+ </ul>
354
+ <p><a class="source-toggle" href="#"
355
+ onclick="toggleCode('M000047-source');return false;">[Source]</a></p>
356
+ <div class="method-source-code" id="M000047-source">
357
+ <pre>
358
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 492</span>
359
+ 492: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">add_default_locale_path</span>(<span class="ruby-identifier">path</span>)
360
+ 493: <span class="ruby-constant">TextDomain</span>.<span class="ruby-identifier">add_default_locale_path</span>(<span class="ruby-identifier">path</span>)
361
+ 494: <span class="ruby-keyword kw">end</span>
362
+ </pre>
363
+ </div>
364
+ </div>
365
+ </div>
366
+
367
+ <div id="method-M000030" class="method-detail">
368
+ <a name="M000030"></a>
369
+
370
+ <div class="method-heading">
371
+ <a href="#M000030" class="method-signature">
372
+ <span class="method-name">bindtextdomain(domainname, options = {})<br />
373
+ </span>
374
+ </a>
375
+ </div>
376
+
377
+ <div class="method-description">
378
+ <p>
379
+ Bind a <a href="GetText.html#M000032">textdomain</a>(%{path}/%{<a
380
+ href="GetText.html#M000046">locale</a>}/LC_MESSAGES/%{domainname}.mo) to
381
+ your program. Normally, the texdomain scope becomes a ruby-script-file. So
382
+ you need to call this function each ruby-script-files. On the other hand,
383
+ if you call this function under <a
384
+ href="GetText/Container.html">GetText::Container</a> (gettext/container,
385
+ gettext/erb, gettext/rails), the <a
386
+ href="GetText.html#M000032">textdomain</a> scope becomes a Class/<a
387
+ href="Module.html">Module</a>.
388
+ </p>
389
+ <ul>
390
+ <li>domainname: the <a href="GetText.html#M000032">textdomain</a> name.
391
+
392
+ </li>
393
+ <li>options: options as an Hash.
394
+
395
+ <ul>
396
+ <li>:path - the path to the mo-files. When the value is nil, it will search
397
+ default paths such as /usr/share/locale, /usr/local/share/locale)
398
+
399
+ </li>
400
+ <li>:<a href="GetText.html#M000046">locale</a> - the <a
401
+ href="GetText.html#M000046">locale</a> string such as
402
+ &quot;ja_JP.UTF-8&quot;. Generally, you should use <a
403
+ href="GetText.html#M000040">GetText.set_locale</a> instead. The value is
404
+ searched order by: the value of this value &gt; System default language.
405
+
406
+ </li>
407
+ <li>:charset - output charset. This affect the current <a
408
+ href="GetText.html#M000032">textdomain</a> only. Generally, you should use
409
+ <a href="GetText.html#M000043">GetText.set_output_charset</a> instead. The
410
+ value is searched order by: the value of Locale.set_output_charset &gt;
411
+ ENV[&quot;OUTPUT_CHARSET&quot;] &gt; this value &gt; System default
412
+ charset.
413
+
414
+ </li>
415
+ </ul>
416
+ </li>
417
+ <li>Returns: the <a
418
+ href="GetText/TextDomainManager.html">GetText::TextDomainManager</a>.
419
+
420
+ </li>
421
+ </ul>
422
+ <p>
423
+ Note: Don&#8216;t use locale_, charset argument(not in options). They are
424
+ remained for backward compatibility.
425
+ </p>
426
+ <p><a class="source-toggle" href="#"
427
+ onclick="toggleCode('M000030-source');return false;">[Source]</a></p>
428
+ <div class="method-source-code" id="M000030-source">
429
+ <pre>
430
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 82</span>
431
+ 82: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">bindtextdomain</span>(<span class="ruby-identifier">domainname</span>, <span class="ruby-identifier">options</span> = {}, <span class="ruby-identifier">locale_</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">charset</span> = <span class="ruby-keyword kw">nil</span>)
432
+ 83: <span class="ruby-identifier">opt</span> = {}
433
+ 84: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">String</span>
434
+ 85: <span class="ruby-comment cmt"># For backward compatibility</span>
435
+ 86: <span class="ruby-identifier">opt</span> = {<span class="ruby-identifier">:path</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">options</span>, <span class="ruby-identifier">:locale</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">locale_</span>, <span class="ruby-identifier">:charset</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">charset</span>}
436
+ 87: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">options</span>
437
+ 88: <span class="ruby-identifier">opt</span> = <span class="ruby-identifier">options</span>
438
+ 89: <span class="ruby-keyword kw">end</span>
439
+ 90: <span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:locale</span>] = <span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:locale</span>] <span class="ruby-operator">?</span> <span class="ruby-constant">Locale</span><span class="ruby-operator">::</span><span class="ruby-constant">Object</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:locale</span>]) <span class="ruby-operator">:</span> <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">get</span>
440
+ 91: <span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:charset</span>] = <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span>
441
+ 92: <span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:locale</span>].<span class="ruby-identifier">charset</span> = <span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:charset</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:charset</span>]
442
+ 93: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">set_current</span>(<span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:locale</span>])
443
+ 94: <span class="ruby-identifier">target_key</span> = <span class="ruby-identifier">bound_target</span>
444
+ 95: <span class="ruby-identifier">manager</span> = <span class="ruby-ivar">@@__textdomainmanagers</span>[<span class="ruby-identifier">target_key</span>]
445
+ 96: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">manager</span>
446
+ 97: <span class="ruby-identifier">manager</span>.<span class="ruby-identifier">set_locale</span>(<span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:locale</span>])
447
+ 98: <span class="ruby-keyword kw">else</span>
448
+ 99: <span class="ruby-identifier">manager</span> = <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">target_key</span>, <span class="ruby-identifier">opt</span>[<span class="ruby-identifier">:locale</span>])
449
+ 100: <span class="ruby-ivar">@@__textdomainmanagers</span>[<span class="ruby-identifier">target_key</span>] = <span class="ruby-identifier">manager</span>
450
+ 101: <span class="ruby-keyword kw">end</span>
451
+ 102: <span class="ruby-identifier">manager</span>.<span class="ruby-identifier">add_textdomain</span>(<span class="ruby-identifier">domainname</span>, <span class="ruby-identifier">opt</span>)
452
+ 103: <span class="ruby-identifier">manager</span>
453
+ 104: <span class="ruby-keyword kw">end</span>
454
+ </pre>
455
+ </div>
456
+ </div>
457
+ </div>
458
+
459
+ <div id="method-M000031" class="method-detail">
460
+ <a name="M000031"></a>
461
+
462
+ <div class="method-heading">
463
+ <a href="#M000031" class="method-signature">
464
+ <span class="method-name">bindtextdomain_to</span><span class="method-args">(klass, domainname, options = {})</span>
465
+ </a>
466
+ </div>
467
+
468
+ <div class="method-description">
469
+ <p>
470
+ Includes <a href="GetText.html">GetText</a> module and bind a <a
471
+ href="GetText.html#M000032">textdomain</a> to a class.
472
+ </p>
473
+ <ul>
474
+ <li>klass: the target ruby class.
475
+
476
+ </li>
477
+ <li>domainname: the <a href="GetText.html#M000032">textdomain</a> name.
478
+
479
+ </li>
480
+ <li>options: options as an Hash. See <a
481
+ href="GetText.html#M000030">GetText.bindtextdomain</a>.
482
+
483
+ </li>
484
+ </ul>
485
+ <p><a class="source-toggle" href="#"
486
+ onclick="toggleCode('M000031-source');return false;">[Source]</a></p>
487
+ <div class="method-source-code" id="M000031-source">
488
+ <pre>
489
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 110</span>
490
+ 110: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">bindtextdomain_to</span>(<span class="ruby-identifier">klass</span>, <span class="ruby-identifier">domainname</span>, <span class="ruby-identifier">options</span> = {})
491
+ 111: <span class="ruby-identifier">ret</span> = <span class="ruby-keyword kw">nil</span>
492
+ 112: <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">module_eval</span> {
493
+ 113: <span class="ruby-identifier">include</span> <span class="ruby-constant">GetText</span>
494
+ 114: <span class="ruby-identifier">ret</span> = <span class="ruby-identifier">bindtextdomain</span>(<span class="ruby-identifier">domainname</span>, <span class="ruby-identifier">options</span>)
495
+ 115: }
496
+ 116: <span class="ruby-identifier">ret</span>
497
+ 117: <span class="ruby-keyword kw">end</span>
498
+ </pre>
499
+ </div>
500
+ </div>
501
+ </div>
502
+
503
+ <div id="method-M000027" class="method-detail">
504
+ <a name="M000027"></a>
505
+
506
+ <div class="method-heading">
507
+ <a href="#M000027" class="method-signature">
508
+ <span class="method-name">cached=</span><span class="method-args">(val)</span>
509
+ </a>
510
+ </div>
511
+
512
+ <div class="method-description">
513
+ <p>
514
+ Set the value whether cache messages or not. true to cache messages,
515
+ otherwise false.
516
+ </p>
517
+ <p>
518
+ Default is true. If $DEBUG is false, messages are not checked even if this
519
+ value is true.
520
+ </p>
521
+ <p><a class="source-toggle" href="#"
522
+ onclick="toggleCode('M000027-source');return false;">[Source]</a></p>
523
+ <div class="method-source-code" id="M000027-source">
524
+ <pre>
525
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 39</span>
526
+ 39: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cached=</span>(<span class="ruby-identifier">val</span>)
527
+ 40: <span class="ruby-ivar">@@__cached</span> = <span class="ruby-identifier">val</span>
528
+ 41: <span class="ruby-constant">GetText</span><span class="ruby-operator">::</span><span class="ruby-constant">TextDomain</span>.<span class="ruby-identifier">check_mo</span> = <span class="ruby-operator">!</span> <span class="ruby-identifier">val</span>
529
+ 42: <span class="ruby-keyword kw">end</span>
530
+ </pre>
531
+ </div>
532
+ </div>
533
+ </div>
534
+
535
+ <div id="method-M000028" class="method-detail">
536
+ <a name="M000028"></a>
537
+
538
+ <div class="method-heading">
539
+ <a href="#M000028" class="method-signature">
540
+ <span class="method-name">cached?</span><span class="method-args">()</span>
541
+ </a>
542
+ </div>
543
+
544
+ <div class="method-description">
545
+ <p>
546
+ Return the cached value.
547
+ </p>
548
+ <p><a class="source-toggle" href="#"
549
+ onclick="toggleCode('M000028-source');return false;">[Source]</a></p>
550
+ <div class="method-source-code" id="M000028-source">
551
+ <pre>
552
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 45</span>
553
+ 45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cached?</span>
554
+ 46: <span class="ruby-ivar">@@__cached</span>
555
+ 47: <span class="ruby-keyword kw">end</span>
556
+ </pre>
557
+ </div>
558
+ </div>
559
+ </div>
560
+
561
+ <div id="method-M000025" class="method-detail">
562
+ <a name="M000025"></a>
563
+
564
+ <div class="method-heading">
565
+ <a href="#M000025" class="method-signature">
566
+ <span class="method-name">cgi</span><span class="method-args">()</span>
567
+ </a>
568
+ </div>
569
+
570
+ <div class="method-description">
571
+ <p>
572
+ Gets the CGI object. If it is nil, returns new CGI object.
573
+ </p>
574
+ <ul>
575
+ <li>Returns: the CGI object
576
+
577
+ </li>
578
+ </ul>
579
+ <p><a class="source-toggle" href="#"
580
+ onclick="toggleCode('M000025-source');return false;">[Source]</a></p>
581
+ <div class="method-source-code" id="M000025-source">
582
+ <pre>
583
+ <span class="ruby-comment cmt"># File lib/gettext/cgi.rb, line 36</span>
584
+ 36: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cgi</span>
585
+ 37: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">cgi</span>
586
+ 38: <span class="ruby-keyword kw">end</span>
587
+ </pre>
588
+ </div>
589
+ </div>
590
+ </div>
591
+
592
+ <div id="method-M000024" class="method-detail">
593
+ <a name="M000024"></a>
594
+
595
+ <div class="method-heading">
596
+ <a href="#M000024" class="method-signature">
597
+ <span class="method-name">cgi=</span><span class="method-args">(cgi_)</span>
598
+ </a>
599
+ </div>
600
+
601
+ <div class="method-description">
602
+ <p>
603
+ Same as <a href="GetText.html#M000023">GetText.set_cgi</a>.
604
+ </p>
605
+ <ul>
606
+ <li>cgi_: CGI object
607
+
608
+ </li>
609
+ <li>Returns: cgi_
610
+
611
+ </li>
612
+ </ul>
613
+ <p><a class="source-toggle" href="#"
614
+ onclick="toggleCode('M000024-source');return false;">[Source]</a></p>
615
+ <div class="method-source-code" id="M000024-source">
616
+ <pre>
617
+ <span class="ruby-comment cmt"># File lib/gettext/cgi.rb, line 29</span>
618
+ 29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cgi=</span>(<span class="ruby-identifier">cgi_</span>)
619
+ 30: <span class="ruby-identifier">set_cgi</span>(<span class="ruby-identifier">cgi_</span>)
620
+ 31: <span class="ruby-identifier">cgi_</span>
621
+ 32: <span class="ruby-keyword kw">end</span>
622
+ </pre>
623
+ </div>
624
+ </div>
625
+ </div>
626
+
627
+ <div id="method-M000029" class="method-detail">
628
+ <a name="M000029"></a>
629
+
630
+ <div class="method-heading">
631
+ <a href="#M000029" class="method-signature">
632
+ <span class="method-name">clear_cache</span><span class="method-args">()</span>
633
+ </a>
634
+ </div>
635
+
636
+ <div class="method-description">
637
+ <p>
638
+ Clear the cached messages.
639
+ </p>
640
+ <p><a class="source-toggle" href="#"
641
+ onclick="toggleCode('M000029-source');return false;">[Source]</a></p>
642
+ <div class="method-source-code" id="M000029-source">
643
+ <pre>
644
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 50</span>
645
+ 50: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clear_cache</span>
646
+ 51: <span class="ruby-ivar">@@__cache_msgids</span> = {}
647
+ 52: <span class="ruby-ivar">@@__cache_nmsgids</span> = {}
648
+ 53: <span class="ruby-ivar">@@__cache_target_classes</span> = {}
649
+ 54: <span class="ruby-ivar">@@__cache_bound_target</span> = {}
650
+ 55: <span class="ruby-ivar">@@__cache_bound_targets</span> = {}
651
+ 56: <span class="ruby-keyword kw">end</span>
652
+ </pre>
653
+ </div>
654
+ </div>
655
+ </div>
656
+
657
+ <div id="method-M000019" class="method-detail">
658
+ <a name="M000019"></a>
659
+
660
+ <div class="method-heading">
661
+ <a href="#M000019" class="method-signature">
662
+ <span class="method-name">create_mofiles</span><span class="method-args">(verbose = false, podir = &quot;./po&quot;, targetdir = &quot;./data/locale&quot;, targetpath_rule = &quot;%s/LC_MESSAGES&quot;)</span>
663
+ </a>
664
+ </div>
665
+
666
+ <div class="method-description">
667
+ <p>
668
+ Creates mo-files using #{po_root}/#{lang}/*.po an put them to
669
+ #{targetdir}/#{targetpath_rule}/.
670
+ </p>
671
+ <p>
672
+ This is a convenience function of <a
673
+ href="GetText.html#M000022">GetText.rmsgfmt</a> for plural target files.
674
+ </p>
675
+ <ul>
676
+ <li>verbose: true if verbose mode, otherwise false
677
+
678
+ </li>
679
+ <li>po_root: the root directory of po-files.
680
+
681
+ </li>
682
+ <li>targetdir: the target root directory where the mo-files are stored.
683
+
684
+ </li>
685
+ <li>targetpath_rule: the target directory for each mo-files. &quot;%s&quot;
686
+ becomes &quot;#{lang}&quot; under po_root.
687
+
688
+ </li>
689
+ </ul>
690
+ <p><a class="source-toggle" href="#"
691
+ onclick="toggleCode('M000019-source');return false;">[Source]</a></p>
692
+ <div class="method-source-code" id="M000019-source">
693
+ <pre>
694
+ <span class="ruby-comment cmt"># File lib/gettext/utils.rb, line 89</span>
695
+ 89: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">create_mofiles</span>(<span class="ruby-identifier">verbose</span> = <span class="ruby-keyword kw">false</span>,
696
+ 90: <span class="ruby-identifier">podir</span> = <span class="ruby-value str">&quot;./po&quot;</span>, <span class="ruby-identifier">targetdir</span> = <span class="ruby-value str">&quot;./data/locale&quot;</span>,
697
+ 91: <span class="ruby-identifier">targetpath_rule</span> = <span class="ruby-value str">&quot;%s/LC_MESSAGES&quot;</span>)
698
+ 92:
699
+ 93: <span class="ruby-identifier">modir</span> = <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">targetdir</span>, <span class="ruby-identifier">targetpath_rule</span>)
700
+ 94: <span class="ruby-constant">Dir</span>.<span class="ruby-identifier">glob</span>(<span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">podir</span>, <span class="ruby-value str">&quot;*/*.po&quot;</span>)) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">file</span><span class="ruby-operator">|</span>
701
+ 95: <span class="ruby-identifier">lang</span>, <span class="ruby-identifier">basename</span> = <span class="ruby-regexp re">/\/([^\/]+?)\/(.*)\.po/</span>.<span class="ruby-identifier">match</span>(<span class="ruby-identifier">file</span>[<span class="ruby-identifier">podir</span>.<span class="ruby-identifier">size</span><span class="ruby-operator">..</span><span class="ruby-value">-1</span>]).<span class="ruby-identifier">to_a</span>[<span class="ruby-value">1</span>,<span class="ruby-value">2</span>]
702
+ 96: <span class="ruby-identifier">outdir</span> = <span class="ruby-identifier">modir</span> <span class="ruby-operator">%</span> <span class="ruby-identifier">lang</span>
703
+ 97: <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">mkdir_p</span>(<span class="ruby-identifier">outdir</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">File</span>.<span class="ruby-identifier">directory?</span>(<span class="ruby-identifier">outdir</span>)
704
+ 98: <span class="ruby-identifier">rmsgfmt</span>(<span class="ruby-identifier">file</span>, <span class="ruby-constant">File</span>.<span class="ruby-identifier">join</span>(<span class="ruby-identifier">outdir</span>, <span class="ruby-node">&quot;#{basename}.mo&quot;</span>))
705
+ 99: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">verbose</span>
706
+ 100: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-node">%Q[#{file} -&gt; #{File.join(outdir, &quot;#{basename}.mo&quot;)}]</span>
707
+ 101: <span class="ruby-keyword kw">end</span>
708
+ 102: <span class="ruby-keyword kw">end</span>
709
+ 103: <span class="ruby-keyword kw">end</span>
710
+ </pre>
711
+ </div>
712
+ </div>
713
+ </div>
714
+
715
+ <div id="method-M000048" class="method-detail">
716
+ <a name="M000048"></a>
717
+
718
+ <div class="method-heading">
719
+ <a href="#M000048" class="method-signature">
720
+ <span class="method-name">current_textdomain_info</span><span class="method-args">(options = {})</span>
721
+ </a>
722
+ </div>
723
+
724
+ <div class="method-description">
725
+ <p>
726
+ Show the current <a href="GetText.html#M000032">textdomain</a> information.
727
+ This function is for debugging.
728
+ </p>
729
+ <ul>
730
+ <li>options: options as a Hash.
731
+
732
+ <ul>
733
+ <li>:with_messages - show informations with messages of the current mo file.
734
+ Default is false.
735
+
736
+ </li>
737
+ <li>:out - An output target. Default is STDOUT.
738
+
739
+ </li>
740
+ <li>:with_paths - show the load paths for mo-files.
741
+
742
+ </li>
743
+ </ul>
744
+ </li>
745
+ </ul>
746
+ <p><a class="source-toggle" href="#"
747
+ onclick="toggleCode('M000048-source');return false;">[Source]</a></p>
748
+ <div class="method-source-code" id="M000048-source">
749
+ <pre>
750
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 501</span>
751
+ 501: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current_textdomain_info</span>(<span class="ruby-identifier">options</span> = {})
752
+ 502: <span class="ruby-identifier">opts</span> = {<span class="ruby-identifier">:with_messages</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">false</span>, <span class="ruby-identifier">:with_paths</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">false</span>, <span class="ruby-identifier">:out</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-constant">STDOUT</span>}.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">options</span>)
753
+ 503: <span class="ruby-identifier">ret</span> = <span class="ruby-keyword kw">nil</span>
754
+ 504: <span class="ruby-identifier">each_textdomain</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">textdomain</span><span class="ruby-operator">|</span>
755
+ 505: <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:out</span>].<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;TextDomain name: \&quot;#{textdomain.name}\&quot;&quot;</span>
756
+ 506: <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:out</span>].<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;TextDomain current locale: \&quot;#{textdomain.current_locale}\&quot;&quot;</span>
757
+ 507: <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:out</span>].<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;TextDomain current mo filename: \&quot;#{textdomain.current_mo.filename}\&quot;&quot;</span>
758
+ 508: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:with_paths</span>]
759
+ 509: <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:out</span>].<span class="ruby-identifier">puts</span> <span class="ruby-value str">&quot;TextDomain locale file paths:&quot;</span>
760
+ 510: <span class="ruby-identifier">textdomain</span>.<span class="ruby-identifier">locale_paths</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
761
+ 511: <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:out</span>].<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot; #{v}&quot;</span>
762
+ 512: <span class="ruby-keyword kw">end</span>
763
+ 513: <span class="ruby-keyword kw">end</span>
764
+ 514: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:with_messages</span>]
765
+ 515: <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:out</span>].<span class="ruby-identifier">puts</span> <span class="ruby-value str">&quot;The messages in the mo file:&quot;</span>
766
+ 516: <span class="ruby-identifier">textdomain</span>.<span class="ruby-identifier">current_mo</span>.<span class="ruby-identifier">each</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">k</span>, <span class="ruby-identifier">v</span><span class="ruby-operator">|</span>
767
+ 517: <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:out</span>].<span class="ruby-identifier">puts</span> <span class="ruby-node">&quot; \&quot;#{k}\&quot;: \&quot;#{v}\&quot;&quot;</span>
768
+ 518: }
769
+ 519: <span class="ruby-keyword kw">end</span>
770
+ 520: }
771
+ 521: <span class="ruby-keyword kw">end</span>
772
+ </pre>
773
+ </div>
774
+ </div>
775
+ </div>
776
+
777
+ <div id="method-M000034" class="method-detail">
778
+ <a name="M000034"></a>
779
+
780
+ <div class="method-heading">
781
+ <a href="#M000034" class="method-signature">
782
+ <span class="method-name">gettext(msgid)<br />
783
+ _(msgid)<br />
784
+ </span>
785
+ </a>
786
+ </div>
787
+
788
+ <div class="method-description">
789
+ <p>
790
+ Translates msgid and return the message.
791
+ </p>
792
+ <ul>
793
+ <li>msgid: the message id.
794
+
795
+ </li>
796
+ <li>Returns: localized text by msgid. If there are not binded mo-file, it will
797
+ return msgid.
798
+
799
+ </li>
800
+ </ul>
801
+ <p><a class="source-toggle" href="#"
802
+ onclick="toggleCode('M000034-source');return false;">[Source]</a></p>
803
+ <div class="method-source-code" id="M000034-source">
804
+ <pre>
805
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 243</span>
806
+ 243: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">gettext</span>(<span class="ruby-identifier">msgid</span>)
807
+ 244: <span class="ruby-identifier">sgettext</span>(<span class="ruby-identifier">msgid</span>, <span class="ruby-keyword kw">nil</span>)
808
+ 245: <span class="ruby-keyword kw">end</span>
809
+ </pre>
810
+ </div>
811
+ </div>
812
+ </div>
813
+
814
+ <div id="method-M000046" class="method-detail">
815
+ <a name="M000046"></a>
816
+
817
+ <div class="method-heading">
818
+ <a href="#M000046" class="method-signature">
819
+ <span class="method-name">locale</span><span class="method-args">()</span>
820
+ </a>
821
+ </div>
822
+
823
+ <div class="method-description">
824
+ <p>
825
+ Gets the current <a href="GetText.html#M000046">locale</a>.
826
+ </p>
827
+ <ul>
828
+ <li>Returns: a current <a href="Locale/Object.html">Locale::Object</a>
829
+
830
+ </li>
831
+ </ul>
832
+ <p><a class="source-toggle" href="#"
833
+ onclick="toggleCode('M000046-source');return false;">[Source]</a></p>
834
+ <div class="method-source-code" id="M000046-source">
835
+ <pre>
836
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 484</span>
837
+ 484: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">locale</span>
838
+ 485: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">current</span>
839
+ 486: <span class="ruby-keyword kw">end</span>
840
+ </pre>
841
+ </div>
842
+ </div>
843
+ </div>
844
+
845
+ <div id="method-M000042" class="method-detail">
846
+ <a name="M000042"></a>
847
+
848
+ <div class="method-heading">
849
+ <a href="#M000042" class="method-signature">
850
+ <span class="method-name">locale=</span><span class="method-args">(locale)</span>
851
+ </a>
852
+ </div>
853
+
854
+ <div class="method-description">
855
+ <p>
856
+ Sets the default/current <a href="GetText.html#M000046">locale</a>. This
857
+ method haves the strongest infulence. All of the Textdomains are set the
858
+ new <a href="GetText.html#M000046">locale</a>.
859
+ </p>
860
+ <p>
861
+ Note that you shouldn&#8216;t use this for your own Libraries.
862
+ </p>
863
+ <ul>
864
+ <li><a href="GetText.html#M000046">locale</a>: a <a
865
+ href="GetText.html#M000046">locale</a> string or <a
866
+ href="Locale/Object.html">Locale::Object</a>
867
+
868
+ </li>
869
+ <li>Returns: a <a href="GetText.html#M000046">locale</a> string
870
+
871
+ </li>
872
+ </ul>
873
+ <p><a class="source-toggle" href="#"
874
+ onclick="toggleCode('M000042-source');return false;">[Source]</a></p>
875
+ <div class="method-source-code" id="M000042-source">
876
+ <pre>
877
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 454</span>
878
+ 454: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">locale=</span>(<span class="ruby-identifier">locale</span>)
879
+ 455: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">default</span> = <span class="ruby-identifier">locale</span>
880
+ 456: <span class="ruby-identifier">set_locale_all</span>(<span class="ruby-identifier">locale</span>)
881
+ 457: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">default</span>
882
+ 458: <span class="ruby-keyword kw">end</span>
883
+ </pre>
884
+ </div>
885
+ </div>
886
+ </div>
887
+
888
+ <div id="method-M000018" class="method-detail">
889
+ <a name="M000018"></a>
890
+
891
+ <div class="method-heading">
892
+ <a href="#M000018" class="method-signature">
893
+ <span class="method-name">msgmerge</span><span class="method-args">(defpo, refpo, app_version)</span>
894
+ </a>
895
+ </div>
896
+
897
+ <div class="method-description">
898
+ <p>
899
+ Merges two Uniforum style .po files together.
900
+ </p>
901
+ <p>
902
+ <b>Note</b> This function requires &quot;<a
903
+ href="GetText.html#M000018">msgmerge</a>&quot; tool included in GNU <a
904
+ href="GetText.html">GetText</a>. So you need to install GNU <a
905
+ href="GetText.html">GetText</a>.
906
+ </p>
907
+ <p>
908
+ The def.po file is an existing PO file with translations which will be
909
+ taken over to the newly created file as long as they still match; comments
910
+ will be preserved, but extracted comments and file positions will be
911
+ discarded.
912
+ </p>
913
+ <p>
914
+ The ref.pot file is the last created PO file with up-to-date source
915
+ references but old translations, or a PO Template file (generally created
916
+ by <a href="GetText.html#M000021">rgettext</a>); any translations or
917
+ comments in the file will be discarded, however dot comments and file
918
+ positions will be preserved. Where an exact match cannot be found, fuzzy
919
+ matching is used to produce better results.
920
+ </p>
921
+ <p>
922
+ Usually you don&#8216;t need to call this function directly. Use <a
923
+ href="GetText.html#M000020">GetText.update_pofiles</a> instead.
924
+ </p>
925
+ <ul>
926
+ <li>defpo: a po-file. translations referring to old sources
927
+
928
+ </li>
929
+ <li>refpo: a po-file. references to new sources
930
+
931
+ </li>
932
+ <li>app_version: the application information which appears
933
+ &quot;Project-Id-Version: #{app_version}&quot; in the pot/po-files.
934
+
935
+ </li>
936
+ <li>Returns: self
937
+
938
+ </li>
939
+ </ul>
940
+ <p><a class="source-toggle" href="#"
941
+ onclick="toggleCode('M000018-source');return false;">[Source]</a></p>
942
+ <div class="method-source-code" id="M000018-source">
943
+ <pre>
944
+ <span class="ruby-comment cmt"># File lib/gettext/utils.rb, line 44</span>
945
+ 44: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">msgmerge</span>(<span class="ruby-identifier">defpo</span>, <span class="ruby-identifier">refpo</span>, <span class="ruby-identifier">app_version</span>)
946
+ 45: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">defpo</span>
947
+ 46: <span class="ruby-identifier">cmd</span> = <span class="ruby-constant">ENV</span>[<span class="ruby-value str">&quot;MSGMERGE_PATH&quot;</span>] <span class="ruby-operator">||</span> <span class="ruby-value str">&quot;msgmerge&quot;</span>
948
+ 47:
949
+ 48: <span class="ruby-identifier">cont</span> = <span class="ruby-value str">&quot;&quot;</span>
950
+ 49: <span class="ruby-keyword kw">if</span> <span class="ruby-constant">FileTest</span>.<span class="ruby-identifier">exist?</span> <span class="ruby-identifier">defpo</span>
951
+ 50: <span class="ruby-identifier">cont</span> = <span class="ruby-node">`#{cmd} #{defpo} #{refpo}`</span>
952
+ 51: <span class="ruby-keyword kw">else</span>
953
+ 52: <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">refpo</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">io</span><span class="ruby-operator">|</span>
954
+ 53: <span class="ruby-identifier">cont</span> = <span class="ruby-identifier">io</span>.<span class="ruby-identifier">read</span>
955
+ 54: <span class="ruby-keyword kw">end</span>
956
+ 55: <span class="ruby-keyword kw">end</span>
957
+ 56: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">cont</span>.<span class="ruby-identifier">empty?</span>
958
+ 57: <span class="ruby-identifier">failed_filename</span> = <span class="ruby-identifier">refpo</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;~&quot;</span>
959
+ 58: <span class="ruby-constant">FileUtils</span>.<span class="ruby-identifier">cp</span>(<span class="ruby-identifier">refpo</span>, <span class="ruby-identifier">failed_filename</span>)
960
+ 59: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">_</span>(<span class="ruby-value str">&quot;Failed to merge with %{defpo}&quot;</span>) <span class="ruby-operator">%</span> {<span class="ruby-identifier">:defpo</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">defpo</span>}
961
+ 60: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-identifier">_</span>(<span class="ruby-value str">&quot;New .pot was copied to %{failed_filename}&quot;</span>) <span class="ruby-operator">%</span>{<span class="ruby-identifier">:failed_filename</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">failed_filename</span>}
962
+ 61: <span class="ruby-identifier">raise</span> <span class="ruby-identifier">_</span>(<span class="ruby-node">&quot;`#{cmd}' may not be found. \nInstall GNU Gettext then set PATH or MSGMERGE_PATH correctly.&quot;</span>)
963
+ 62: <span class="ruby-keyword kw">else</span>
964
+ 63: <span class="ruby-identifier">cont</span>.<span class="ruby-identifier">sub!</span>(<span class="ruby-regexp re">/(Project-Id-Version\:).*$/</span>, <span class="ruby-node">&quot;\\1 #{app_version}\\n\&quot;&quot;</span>)
965
+ 64: <span class="ruby-constant">File</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">defpo</span>, <span class="ruby-value str">&quot;w&quot;</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">out</span><span class="ruby-operator">|</span>
966
+ 65: <span class="ruby-identifier">out</span>.<span class="ruby-identifier">write</span>(<span class="ruby-identifier">cont</span>)
967
+ 66: <span class="ruby-keyword kw">end</span>
968
+ 67: <span class="ruby-keyword kw">end</span>
969
+ 68: <span class="ruby-keyword kw">self</span>
970
+ 69: <span class="ruby-keyword kw">end</span>
971
+ </pre>
972
+ </div>
973
+ </div>
974
+ </div>
975
+
976
+ <div id="method-M000051" class="method-detail">
977
+ <a name="M000051"></a>
978
+
979
+ <div class="method-heading">
980
+ <span class="method-name">n_</span><span class="method-args">(arg1, arg2, arg3 = nil)</span>
981
+ </div>
982
+
983
+ <div class="method-description">
984
+ <p>
985
+ Alias for <a href="GetText.html#M000036">ngettext</a>
986
+ </p>
987
+ </div>
988
+ </div>
989
+
990
+ <div id="method-M000036" class="method-detail">
991
+ <a name="M000036"></a>
992
+
993
+ <div class="method-heading">
994
+ <a href="#M000036" class="method-signature">
995
+ <span class="method-name">ngettext(msgid, msgid_plural, n)<br />
996
+ ngettext(msgids, n) # msgids = [msgid, msgid_plural]<br />
997
+ n_(msgid, msgid_plural, n)<br />
998
+ n_(msgids, n) # msgids = [msgid, msgid_plural]<br />
999
+ </span>
1000
+ </a>
1001
+ </div>
1002
+
1003
+ <div class="method-description">
1004
+ <p>
1005
+ The <a href="GetText.html#M000036">ngettext</a> is similar to the <a
1006
+ href="GetText.html#M000034">gettext</a> function as it finds the message
1007
+ catalogs in the same way. But it takes two extra arguments for plural form.
1008
+ </p>
1009
+ <ul>
1010
+ <li>msgid: the singular form.
1011
+
1012
+ </li>
1013
+ <li>msgid_plural: the plural form.
1014
+
1015
+ </li>
1016
+ <li>n: a number used to determine the plural form.
1017
+
1018
+ </li>
1019
+ <li>Returns: the localized text which key is msgid_plural if n is plural(follow
1020
+ plural-rule) or msgid. &quot;plural-rule&quot; is defined in po-file.
1021
+
1022
+ </li>
1023
+ </ul>
1024
+ <p><a class="source-toggle" href="#"
1025
+ onclick="toggleCode('M000036-source');return false;">[Source]</a></p>
1026
+ <div class="method-source-code" id="M000036-source">
1027
+ <pre>
1028
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 303</span>
1029
+ 303: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">ngettext</span>(<span class="ruby-identifier">arg1</span>, <span class="ruby-identifier">arg2</span>, <span class="ruby-identifier">arg3</span> = <span class="ruby-keyword kw">nil</span>)
1030
+ 304: <span class="ruby-identifier">nsgettext</span>(<span class="ruby-identifier">arg1</span>, <span class="ruby-identifier">arg2</span>, <span class="ruby-identifier">arg3</span>, <span class="ruby-keyword kw">nil</span>)
1031
+ 305: <span class="ruby-keyword kw">end</span>
1032
+ </pre>
1033
+ </div>
1034
+ </div>
1035
+ </div>
1036
+
1037
+ <div id="method-M000053" class="method-detail">
1038
+ <a name="M000053"></a>
1039
+
1040
+ <div class="method-heading">
1041
+ <span class="method-name">ns_</span><span class="method-args">(arg1, arg2, arg3 = &quot;|&quot;, arg4 = &quot;|&quot;)</span>
1042
+ </div>
1043
+
1044
+ <div class="method-description">
1045
+ <p>
1046
+ Alias for <a href="GetText.html#M000039">nsgettext</a>
1047
+ </p>
1048
+ </div>
1049
+ </div>
1050
+
1051
+ <div id="method-M000039" class="method-detail">
1052
+ <a name="M000039"></a>
1053
+
1054
+ <div class="method-heading">
1055
+ <a href="#M000039" class="method-signature">
1056
+ <span class="method-name">nsgettext(msgid, msgid_plural, n, div = "|")<br />
1057
+ nsgettext(msgids, n, div = "|") # msgids = [msgid, msgid_plural]<br />
1058
+ n_(msgid, msgid_plural, n, div = "|")<br />
1059
+ n_(msgids, n, div = "|") # msgids = [msgid, msgid_plural]<br />
1060
+ </span>
1061
+ </a>
1062
+ </div>
1063
+
1064
+ <div class="method-description">
1065
+ <p>
1066
+ The <a href="GetText.html#M000039">nsgettext</a> is similar to the <a
1067
+ href="GetText.html#M000036">ngettext</a>. But if there are no localized
1068
+ text, it returns a last part of msgid separeted &quot;div&quot;.
1069
+ </p>
1070
+ <ul>
1071
+ <li>msgid: the singular form with &quot;div&quot;. (e.g. &quot;Special|An
1072
+ apple&quot;)
1073
+
1074
+ </li>
1075
+ <li>msgid_plural: the plural form. (e.g. &quot;%{num} Apples&quot;)
1076
+
1077
+ </li>
1078
+ <li>n: a number used to determine the plural form.
1079
+
1080
+ </li>
1081
+ <li>Returns: the localized text which key is msgid_plural if n is plural(follow
1082
+ plural-rule) or msgid. &quot;plural-rule&quot; is defined in po-file.
1083
+
1084
+ </li>
1085
+ </ul>
1086
+ <p><a class="source-toggle" href="#"
1087
+ onclick="toggleCode('M000039-source');return false;">[Source]</a></p>
1088
+ <div class="method-source-code" id="M000039-source">
1089
+ <pre>
1090
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 338</span>
1091
+ 338: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">nsgettext</span>(<span class="ruby-identifier">arg1</span>, <span class="ruby-identifier">arg2</span>, <span class="ruby-identifier">arg3</span> = <span class="ruby-value str">&quot;|&quot;</span>, <span class="ruby-identifier">arg4</span> = <span class="ruby-value str">&quot;|&quot;</span>)
1092
+ 339: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg1</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Array</span>)
1093
+ 340: <span class="ruby-identifier">msgid</span> = <span class="ruby-identifier">arg1</span>[<span class="ruby-value">0</span>]
1094
+ 341: <span class="ruby-identifier">msgid_plural</span> = <span class="ruby-identifier">arg1</span>[<span class="ruby-value">1</span>]
1095
+ 342: <span class="ruby-identifier">n</span> = <span class="ruby-identifier">arg2</span>
1096
+ 343: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">arg3</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">arg3</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Numeric</span>
1097
+ 344: <span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-identifier">_</span>(<span class="ruby-value str">&quot;3rd parmeter is wrong: value = %{number}&quot;</span>) <span class="ruby-operator">%</span> {<span class="ruby-identifier">:number</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">arg3</span>}
1098
+ 345: <span class="ruby-keyword kw">end</span>
1099
+ 346: <span class="ruby-identifier">div</span> = <span class="ruby-identifier">arg3</span>
1100
+ 347: <span class="ruby-keyword kw">else</span>
1101
+ 348: <span class="ruby-identifier">msgid</span> = <span class="ruby-identifier">arg1</span>
1102
+ 349: <span class="ruby-identifier">msgid_plural</span> = <span class="ruby-identifier">arg2</span>
1103
+ 350: <span class="ruby-identifier">n</span> = <span class="ruby-identifier">arg3</span>
1104
+ 351: <span class="ruby-identifier">div</span> = <span class="ruby-identifier">arg4</span>
1105
+ 352: <span class="ruby-keyword kw">end</span>
1106
+ 353:
1107
+ 354: <span class="ruby-identifier">cached_key</span> = [<span class="ruby-identifier">bound_target</span>, <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">current</span>, <span class="ruby-identifier">msgid</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;\000&quot;</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">msgid_plural</span>]
1108
+ 355: <span class="ruby-identifier">msgs</span> = <span class="ruby-keyword kw">nil</span>
1109
+ 356: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@@__cached</span>
1110
+ 357: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@@__cache_nmsgids</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">cached_key</span>)
1111
+ 358: <span class="ruby-identifier">msgs</span> = <span class="ruby-ivar">@@__cache_nmsgids</span>[<span class="ruby-identifier">cached_key</span>] <span class="ruby-comment cmt"># [msgstr, cond_as_string]</span>
1112
+ 359: <span class="ruby-keyword kw">end</span>
1113
+ 360: <span class="ruby-keyword kw">end</span>
1114
+ 361: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">msgs</span>
1115
+ 362: <span class="ruby-comment cmt"># Use &quot;for&quot;(not &quot;each&quot;) to support JRuby 1.1.0.</span>
1116
+ 363: <span class="ruby-keyword kw">for</span> <span class="ruby-identifier">target</span> <span class="ruby-keyword kw">in</span> <span class="ruby-identifier">bound_targets</span>(<span class="ruby-keyword kw">self</span>)
1117
+ 364: <span class="ruby-identifier">manager</span> = <span class="ruby-ivar">@@__textdomainmanagers</span>[<span class="ruby-identifier">target</span>]
1118
+ 365: <span class="ruby-keyword kw">for</span> <span class="ruby-identifier">textdomain</span> <span class="ruby-keyword kw">in</span> <span class="ruby-identifier">manager</span>.<span class="ruby-identifier">textdomains</span>
1119
+ 366: <span class="ruby-identifier">msgs</span> = <span class="ruby-identifier">textdomain</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">ngettext_data</span>(<span class="ruby-identifier">msgid</span>, <span class="ruby-identifier">msgid_plural</span>)
1120
+ 367: <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">msgs</span>
1121
+ 368: <span class="ruby-keyword kw">end</span>
1122
+ 369: <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">msgs</span>
1123
+ 370: <span class="ruby-keyword kw">end</span>
1124
+ 371: <span class="ruby-identifier">msgs</span> = [[<span class="ruby-identifier">msgid</span>, <span class="ruby-identifier">msgid_plural</span>], <span class="ruby-value str">&quot;n != 1&quot;</span>] <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">msgs</span>
1125
+ 372: <span class="ruby-ivar">@@__cache_nmsgids</span>[<span class="ruby-identifier">cached_key</span>] = <span class="ruby-identifier">msgs</span>
1126
+ 373: <span class="ruby-keyword kw">end</span>
1127
+ 374: <span class="ruby-identifier">msgstrs</span> = <span class="ruby-identifier">msgs</span>[<span class="ruby-value">0</span>]
1128
+ 375: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">div</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">msgstrs</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">msgid</span>
1129
+ 376: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">index</span> = <span class="ruby-identifier">msgstrs</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">rindex</span>(<span class="ruby-identifier">div</span>)
1130
+ 377: <span class="ruby-identifier">msgstrs</span>[<span class="ruby-value">0</span>] = <span class="ruby-identifier">msgstrs</span>[<span class="ruby-value">0</span>][(<span class="ruby-identifier">index</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>)<span class="ruby-operator">..</span><span class="ruby-value">-1</span>]
1131
+ 378: <span class="ruby-keyword kw">end</span>
1132
+ 379: <span class="ruby-keyword kw">end</span>
1133
+ 380: <span class="ruby-identifier">plural</span> = <span class="ruby-identifier">eval</span>(<span class="ruby-identifier">msgs</span>[<span class="ruby-value">1</span>])
1134
+ 381: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">plural</span>.<span class="ruby-identifier">kind_of?</span>(<span class="ruby-constant">Numeric</span>)
1135
+ 382: <span class="ruby-identifier">ret</span> = <span class="ruby-identifier">msgstrs</span>[<span class="ruby-identifier">plural</span>]
1136
+ 383: <span class="ruby-keyword kw">else</span>
1137
+ 384: <span class="ruby-identifier">ret</span> = <span class="ruby-identifier">plural</span> <span class="ruby-value">? </span><span class="ruby-identifier">msgstrs</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">:</span> <span class="ruby-identifier">msgstrs</span>[<span class="ruby-value">0</span>]
1138
+ 385: <span class="ruby-keyword kw">end</span>
1139
+ 386: <span class="ruby-identifier">ret</span>
1140
+ 387: <span class="ruby-keyword kw">end</span>
1141
+ </pre>
1142
+ </div>
1143
+ </div>
1144
+ </div>
1145
+
1146
+ <div id="method-M000045" class="method-detail">
1147
+ <a name="M000045"></a>
1148
+
1149
+ <div class="method-heading">
1150
+ <a href="#M000045" class="method-signature">
1151
+ <span class="method-name">output_charset</span><span class="method-args">()</span>
1152
+ </a>
1153
+ </div>
1154
+
1155
+ <div class="method-description">
1156
+ <p>
1157
+ Gets the current <a href="GetText.html#M000045">output_charset</a> which is
1158
+ set using <a href="GetText.html#M000043">GetText.set_output_charset</a>.
1159
+ </p>
1160
+ <ul>
1161
+ <li>Returns: <a href="GetText.html#M000045">output_charset</a>.
1162
+
1163
+ </li>
1164
+ </ul>
1165
+ <p><a class="source-toggle" href="#"
1166
+ onclick="toggleCode('M000045-source');return false;">[Source]</a></p>
1167
+ <div class="method-source-code" id="M000045-source">
1168
+ <pre>
1169
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 478</span>
1170
+ 478: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">output_charset</span>
1171
+ 479: <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">locale</span>.<span class="ruby-identifier">charset</span>
1172
+ 480: <span class="ruby-keyword kw">end</span>
1173
+ </pre>
1174
+ </div>
1175
+ </div>
1176
+ </div>
1177
+
1178
+ <div id="method-M000044" class="method-detail">
1179
+ <a name="M000044"></a>
1180
+
1181
+ <div class="method-heading">
1182
+ <a href="#M000044" class="method-signature">
1183
+ <span class="method-name">output_charset=</span><span class="method-args">(charset)</span>
1184
+ </a>
1185
+ </div>
1186
+
1187
+ <div class="method-description">
1188
+ <p>
1189
+ Same as <a href="GetText.html#M000043">GetText.set_output_charset</a>
1190
+ </p>
1191
+ <ul>
1192
+ <li>charset: an <a href="GetText.html#M000045">output_charset</a>
1193
+
1194
+ </li>
1195
+ <li>Returns: charset
1196
+
1197
+ </li>
1198
+ </ul>
1199
+ <p><a class="source-toggle" href="#"
1200
+ onclick="toggleCode('M000044-source');return false;">[Source]</a></p>
1201
+ <div class="method-source-code" id="M000044-source">
1202
+ <pre>
1203
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 472</span>
1204
+ 472: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">output_charset=</span>(<span class="ruby-identifier">charset</span>)
1205
+ 473: <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span> = <span class="ruby-identifier">charset</span>
1206
+ 474: <span class="ruby-keyword kw">end</span>
1207
+ </pre>
1208
+ </div>
1209
+ </div>
1210
+ </div>
1211
+
1212
+ <div id="method-M000021" class="method-detail">
1213
+ <a name="M000021"></a>
1214
+
1215
+ <div class="method-heading">
1216
+ <a href="#M000021" class="method-signature">
1217
+ <span class="method-name">rgettext</span><span class="method-args">(targetfiles = nil, out = STDOUT)</span>
1218
+ </a>
1219
+ </div>
1220
+
1221
+ <div class="method-description">
1222
+ <p>
1223
+ Creates a po-file from targetfiles(ruby-script-files, ActiveRecord, .rhtml
1224
+ files, glade-2 XML files), then output the result to out. If no parameter
1225
+ is set, it behaves same as command line tools(rgettet).
1226
+ </p>
1227
+ <p>
1228
+ This function is a part of GetText.create_pofiles. Usually you don&#8216;t
1229
+ need to call this function directly.
1230
+ </p>
1231
+ <p>
1232
+ <b>Note</b> for ActiveRecord, you need to run your database server and
1233
+ configure the config/database.xml correctly before execute this function.
1234
+ </p>
1235
+ <ul>
1236
+ <li>targetfiles: An Array of po-files or nil.
1237
+
1238
+ </li>
1239
+ <li>out: output IO or output path.
1240
+
1241
+ </li>
1242
+ <li>Returns: self
1243
+
1244
+ </li>
1245
+ </ul>
1246
+ <p><a class="source-toggle" href="#"
1247
+ onclick="toggleCode('M000021-source');return false;">[Source]</a></p>
1248
+ <div class="method-source-code" id="M000021-source">
1249
+ <pre>
1250
+ <span class="ruby-comment cmt"># File lib/gettext/rgettext.rb, line 259</span>
1251
+ 259: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rgettext</span>(<span class="ruby-identifier">targetfiles</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">out</span> = <span class="ruby-constant">STDOUT</span>)
1252
+ 260: <span class="ruby-constant">RGetText</span>.<span class="ruby-identifier">run</span>(<span class="ruby-identifier">targetfiles</span>, <span class="ruby-identifier">out</span>)
1253
+ 261: <span class="ruby-keyword kw">self</span>
1254
+ 262: <span class="ruby-keyword kw">end</span>
1255
+ </pre>
1256
+ </div>
1257
+ </div>
1258
+ </div>
1259
+
1260
+ <div id="method-M000022" class="method-detail">
1261
+ <a name="M000022"></a>
1262
+
1263
+ <div class="method-heading">
1264
+ <a href="#M000022" class="method-signature">
1265
+ <span class="method-name">rmsgfmt</span><span class="method-args">(targetfile = nil, output_path = nil)</span>
1266
+ </a>
1267
+ </div>
1268
+
1269
+ <div class="method-description">
1270
+ <p>
1271
+ Creates a mo-file from a targetfile(po-file), then output the result to
1272
+ out. If no parameter is set, it behaves same as command line tools(<a
1273
+ href="GetText.html#M000022">rmsgfmt</a>).
1274
+ </p>
1275
+ <ul>
1276
+ <li>targetfile: An Array of po-files or nil.
1277
+
1278
+ </li>
1279
+ <li>output_path: output path.
1280
+
1281
+ </li>
1282
+ <li>Returns: the <a href="MOFile.html">MOFile</a> object.
1283
+
1284
+ </li>
1285
+ </ul>
1286
+ <p><a class="source-toggle" href="#"
1287
+ onclick="toggleCode('M000022-source');return false;">[Source]</a></p>
1288
+ <div class="method-source-code" id="M000022-source">
1289
+ <pre>
1290
+ <span class="ruby-comment cmt"># File lib/gettext/rmsgfmt.rb, line 79</span>
1291
+ 79: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rmsgfmt</span>(<span class="ruby-identifier">targetfile</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">output_path</span> = <span class="ruby-keyword kw">nil</span>)
1292
+ 80: <span class="ruby-constant">RMsgfmt</span>.<span class="ruby-identifier">run</span>(<span class="ruby-identifier">targetfile</span>, <span class="ruby-identifier">output_path</span>)
1293
+ 81: <span class="ruby-keyword kw">end</span>
1294
+ </pre>
1295
+ </div>
1296
+ </div>
1297
+ </div>
1298
+
1299
+ <div id="method-M000026" class="method-detail">
1300
+ <a name="M000026"></a>
1301
+
1302
+ <div class="method-heading">
1303
+ <a href="#M000026" class="method-signature">
1304
+ <span class="method-name">rmsgmerge</span><span class="method-args">(reference = nil, definition = nil, out = STDOUT)</span>
1305
+ </a>
1306
+ </div>
1307
+
1308
+ <div class="method-description">
1309
+ <p>
1310
+ Experimental
1311
+ </p>
1312
+ <p><a class="source-toggle" href="#"
1313
+ onclick="toggleCode('M000026-source');return false;">[Source]</a></p>
1314
+ <div class="method-source-code" id="M000026-source">
1315
+ <pre>
1316
+ <span class="ruby-comment cmt"># File lib/gettext/rmsgmerge.rb, line 489</span>
1317
+ 489: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">rmsgmerge</span>(<span class="ruby-identifier">reference</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">definition</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">out</span> = <span class="ruby-constant">STDOUT</span>)
1318
+ 490: <span class="ruby-constant">RMsgMerge</span>.<span class="ruby-identifier">run</span>(<span class="ruby-identifier">reference</span>, <span class="ruby-identifier">definition</span>, <span class="ruby-identifier">out</span>)
1319
+ 491: <span class="ruby-keyword kw">end</span>
1320
+ </pre>
1321
+ </div>
1322
+ </div>
1323
+ </div>
1324
+
1325
+ <div id="method-M000052" class="method-detail">
1326
+ <a name="M000052"></a>
1327
+
1328
+ <div class="method-heading">
1329
+ <span class="method-name">s_</span><span class="method-args">(msgid, div = '|')</span>
1330
+ </div>
1331
+
1332
+ <div class="method-description">
1333
+ <p>
1334
+ Alias for <a href="GetText.html#M000035">sgettext</a>
1335
+ </p>
1336
+ </div>
1337
+ </div>
1338
+
1339
+ <div id="method-M000023" class="method-detail">
1340
+ <a name="M000023"></a>
1341
+
1342
+ <div class="method-heading">
1343
+ <a href="#M000023" class="method-signature">
1344
+ <span class="method-name">set_cgi</span><span class="method-args">(cgi_)</span>
1345
+ </a>
1346
+ </div>
1347
+
1348
+ <div class="method-description">
1349
+ <p>
1350
+ Sets a CGI object.
1351
+ </p>
1352
+ <ul>
1353
+ <li>cgi_: CGI object
1354
+
1355
+ </li>
1356
+ <li>Returns: self
1357
+
1358
+ </li>
1359
+ </ul>
1360
+ <p><a class="source-toggle" href="#"
1361
+ onclick="toggleCode('M000023-source');return false;">[Source]</a></p>
1362
+ <div class="method-source-code" id="M000023-source">
1363
+ <pre>
1364
+ <span class="ruby-comment cmt"># File lib/gettext/cgi.rb, line 22</span>
1365
+ 22: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_cgi</span>(<span class="ruby-identifier">cgi_</span>)
1366
+ 23: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">set_cgi</span>(<span class="ruby-identifier">cgi_</span>)
1367
+ 24: <span class="ruby-keyword kw">end</span>
1368
+ </pre>
1369
+ </div>
1370
+ </div>
1371
+ </div>
1372
+
1373
+ <div id="method-M000040" class="method-detail">
1374
+ <a name="M000040"></a>
1375
+
1376
+ <div class="method-heading">
1377
+ <a href="#M000040" class="method-signature">
1378
+ <span class="method-name">set_locale</span><span class="method-args">(locale, this_target_only = false)</span>
1379
+ </a>
1380
+ </div>
1381
+
1382
+ <div class="method-description">
1383
+ <p>
1384
+ Sets the current <a href="GetText.html#M000046">locale</a> to the current
1385
+ class/module
1386
+ </p>
1387
+ <p>
1388
+ Notice that you shouldn&#8216;t use this for your own Libraries.
1389
+ </p>
1390
+ <ul>
1391
+ <li><a href="GetText.html#M000046">locale</a>: a <a
1392
+ href="GetText.html#M000046">locale</a> string or <a
1393
+ href="Locale/Object.html">Locale::Object</a>.
1394
+
1395
+ </li>
1396
+ <li>this_target_only: true if you want to change the current class/module only.
1397
+
1398
+ </li>
1399
+ </ul>
1400
+ <p>
1401
+ Otherwise, this changes the <a href="GetText.html#M000046">locale</a> of
1402
+ the current class/module and its ancestors. Default is false.
1403
+ </p>
1404
+ <ul>
1405
+ <li>Returns: self
1406
+
1407
+ </li>
1408
+ </ul>
1409
+ <p><a class="source-toggle" href="#"
1410
+ onclick="toggleCode('M000040-source');return false;">[Source]</a></p>
1411
+ <div class="method-source-code" id="M000040-source">
1412
+ <pre>
1413
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 397</span>
1414
+ 397: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_locale</span>(<span class="ruby-identifier">locale</span>, <span class="ruby-identifier">this_target_only</span> = <span class="ruby-keyword kw">false</span>)
1415
+ 398: <span class="ruby-identifier">ret</span> = <span class="ruby-keyword kw">nil</span>
1416
+ 399: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">locale</span>
1417
+ 400: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">locale</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Locale</span><span class="ruby-operator">::</span><span class="ruby-constant">Object</span>
1418
+ 401: <span class="ruby-identifier">ret</span> = <span class="ruby-identifier">locale</span>
1419
+ 402: <span class="ruby-keyword kw">else</span>
1420
+ 403: <span class="ruby-identifier">ret</span> = <span class="ruby-constant">Locale</span><span class="ruby-operator">::</span><span class="ruby-constant">Object</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">locale</span>.<span class="ruby-identifier">to_s</span>)
1421
+ 404: <span class="ruby-keyword kw">end</span>
1422
+ 405: <span class="ruby-identifier">ret</span>.<span class="ruby-identifier">charset</span> = <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span>
1423
+ 406: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">set</span>(<span class="ruby-identifier">ret</span>)
1424
+ 407: <span class="ruby-keyword kw">else</span>
1425
+ 408: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">set</span>(<span class="ruby-keyword kw">nil</span>)
1426
+ 409: <span class="ruby-identifier">ret</span> = <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">get</span>
1427
+ 410: <span class="ruby-keyword kw">end</span>
1428
+ 411: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">this_target_only</span>
1429
+ 412: <span class="ruby-identifier">manager</span> = <span class="ruby-ivar">@@__textdomainmanagers</span>[<span class="ruby-identifier">bound_target</span>]
1430
+ 413: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">manager</span>
1431
+ 414: <span class="ruby-identifier">manager</span>.<span class="ruby-identifier">set_locale</span>(<span class="ruby-identifier">ret</span>, <span class="ruby-operator">!</span> <span class="ruby-identifier">cached?</span>)
1432
+ 415: <span class="ruby-keyword kw">end</span>
1433
+ 416: <span class="ruby-keyword kw">else</span>
1434
+ 417: <span class="ruby-identifier">each_textdomain</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">textdomain</span><span class="ruby-operator">|</span>
1435
+ 418: <span class="ruby-identifier">textdomain</span>.<span class="ruby-identifier">set_locale</span>(<span class="ruby-identifier">ret</span>, <span class="ruby-operator">!</span> <span class="ruby-identifier">cached?</span>)
1436
+ 419: }
1437
+ 420: <span class="ruby-keyword kw">end</span>
1438
+ 421: <span class="ruby-keyword kw">self</span>
1439
+ 422: <span class="ruby-keyword kw">end</span>
1440
+ </pre>
1441
+ </div>
1442
+ </div>
1443
+ </div>
1444
+
1445
+ <div id="method-M000041" class="method-detail">
1446
+ <a name="M000041"></a>
1447
+
1448
+ <div class="method-heading">
1449
+ <a href="#M000041" class="method-signature">
1450
+ <span class="method-name">set_locale_all</span><span class="method-args">(locale)</span>
1451
+ </a>
1452
+ </div>
1453
+
1454
+ <div class="method-description">
1455
+ <p>
1456
+ Sets current <a href="GetText.html#M000046">locale</a> to the all
1457
+ textdomains.
1458
+ </p>
1459
+ <p>
1460
+ Note that you shouldn&#8216;t use this for your own Libraries.
1461
+ </p>
1462
+ <ul>
1463
+ <li><a href="GetText.html#M000046">locale</a>: a <a
1464
+ href="GetText.html#M000046">locale</a> string or <a
1465
+ href="Locale/Object.html">Locale::Object</a>, otherwise nil to use default
1466
+ <a href="GetText.html#M000046">locale</a>.
1467
+
1468
+ </li>
1469
+ <li>Returns: self
1470
+
1471
+ </li>
1472
+ </ul>
1473
+ <p><a class="source-toggle" href="#"
1474
+ onclick="toggleCode('M000041-source');return false;">[Source]</a></p>
1475
+ <div class="method-source-code" id="M000041-source">
1476
+ <pre>
1477
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 429</span>
1478
+ 429: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_locale_all</span>(<span class="ruby-identifier">locale</span>)
1479
+ 430: <span class="ruby-identifier">ret</span> = <span class="ruby-keyword kw">nil</span>
1480
+ 431: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">locale</span>
1481
+ 432: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">locale</span>.<span class="ruby-identifier">kind_of?</span> <span class="ruby-constant">Locale</span><span class="ruby-operator">::</span><span class="ruby-constant">Object</span>
1482
+ 433: <span class="ruby-identifier">ret</span> = <span class="ruby-identifier">locale</span>
1483
+ 434: <span class="ruby-keyword kw">else</span>
1484
+ 435: <span class="ruby-identifier">ret</span> = <span class="ruby-constant">Locale</span><span class="ruby-operator">::</span><span class="ruby-constant">Object</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">locale</span>.<span class="ruby-identifier">to_s</span>)
1485
+ 436: <span class="ruby-keyword kw">end</span>
1486
+ 437: <span class="ruby-keyword kw">else</span>
1487
+ 438: <span class="ruby-identifier">ret</span> = <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">default</span>
1488
+ 439: <span class="ruby-keyword kw">end</span>
1489
+ 440: <span class="ruby-identifier">ret</span>.<span class="ruby-identifier">charset</span> = <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span> <span class="ruby-keyword kw">if</span> <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span>
1490
+ 441: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">set_current</span>(<span class="ruby-identifier">ret</span>)
1491
+ 442: <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">each_all</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">textdomain</span><span class="ruby-operator">|</span>
1492
+ 443: <span class="ruby-identifier">textdomain</span>.<span class="ruby-identifier">set_locale</span>(<span class="ruby-identifier">ret</span>, <span class="ruby-operator">!</span> <span class="ruby-identifier">cached?</span>)
1493
+ 444: }
1494
+ 445: <span class="ruby-keyword kw">self</span>
1495
+ 446: <span class="ruby-keyword kw">end</span>
1496
+ </pre>
1497
+ </div>
1498
+ </div>
1499
+ </div>
1500
+
1501
+ <div id="method-M000043" class="method-detail">
1502
+ <a name="M000043"></a>
1503
+
1504
+ <div class="method-heading">
1505
+ <a href="#M000043" class="method-signature">
1506
+ <span class="method-name">set_output_charset</span><span class="method-args">(charset)</span>
1507
+ </a>
1508
+ </div>
1509
+
1510
+ <div class="method-description">
1511
+ <p>
1512
+ Sets charset(<a href="String.html">String</a>) such as &quot;euc-jp&quot;,
1513
+ &quot;sjis&quot;, &quot;CP932&quot;, &quot;utf-8&quot;, &#8230; You
1514
+ shouldn&#8216;t use this in your own Libraries.
1515
+ </p>
1516
+ <ul>
1517
+ <li>charset: an <a href="GetText.html#M000045">output_charset</a>
1518
+
1519
+ </li>
1520
+ <li>Returns: charset
1521
+
1522
+ </li>
1523
+ </ul>
1524
+ <p><a class="source-toggle" href="#"
1525
+ onclick="toggleCode('M000043-source');return false;">[Source]</a></p>
1526
+ <div class="method-source-code" id="M000043-source">
1527
+ <pre>
1528
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 464</span>
1529
+ 464: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_output_charset</span>(<span class="ruby-identifier">charset</span>)
1530
+ 465: <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">output_charset</span> = <span class="ruby-identifier">charset</span>
1531
+ 466: <span class="ruby-keyword kw">self</span>
1532
+ 467: <span class="ruby-keyword kw">end</span>
1533
+ </pre>
1534
+ </div>
1535
+ </div>
1536
+ </div>
1537
+
1538
+ <div id="method-M000049" class="method-detail">
1539
+ <a name="M000049"></a>
1540
+
1541
+ <div class="method-heading">
1542
+ <span class="method-name">setlocale</span><span class="method-args">(locale)</span>
1543
+ </div>
1544
+
1545
+ <div class="method-description">
1546
+ <p>
1547
+ Alias for <a href="GetText.html#M000046">locale</a>=
1548
+ </p>
1549
+ </div>
1550
+ </div>
1551
+
1552
+ <div id="method-M000035" class="method-detail">
1553
+ <a name="M000035"></a>
1554
+
1555
+ <div class="method-heading">
1556
+ <a href="#M000035" class="method-signature">
1557
+ <span class="method-name">sgettext(msgid, div = '|')<br />
1558
+ s_(msgid, div = '|')<br />
1559
+ </span>
1560
+ </a>
1561
+ </div>
1562
+
1563
+ <div class="method-description">
1564
+ <p>
1565
+ Translates msgid, but if there are no localized text, it returns a last
1566
+ part of msgid separeted &quot;div&quot;.
1567
+ </p>
1568
+ <ul>
1569
+ <li>msgid: the message id.
1570
+
1571
+ </li>
1572
+ <li>div: separator or nil.
1573
+
1574
+ </li>
1575
+ <li>Returns: the localized text by msgid. If there are no localized text, it
1576
+ returns a last part of msgid separeted &quot;div&quot;.
1577
+
1578
+ </li>
1579
+ </ul>
1580
+ <p>
1581
+ See: <a
1582
+ href="http://www.gnu.org/software/gettext/manual/html_mono/gettext.html#SEC151">www.gnu.org/software/gettext/manual/html_mono/gettext.html#SEC151</a>
1583
+ </p>
1584
+ <p><a class="source-toggle" href="#"
1585
+ onclick="toggleCode('M000035-source');return false;">[Source]</a></p>
1586
+ <div class="method-source-code" id="M000035-source">
1587
+ <pre>
1588
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 259</span>
1589
+ 259: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">sgettext</span>(<span class="ruby-identifier">msgid</span>, <span class="ruby-identifier">div</span> = <span class="ruby-value str">'|'</span>)
1590
+ 260: <span class="ruby-identifier">cached_key</span> = [<span class="ruby-identifier">bound_target</span>, <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">current</span>, <span class="ruby-identifier">msgid</span>]
1591
+ 261: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">cached?</span>
1592
+ 262: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@@__cache_msgids</span>[<span class="ruby-identifier">cached_key</span>]
1593
+ 263: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@@__cache_msgids</span>[<span class="ruby-identifier">cached_key</span>]
1594
+ 264: <span class="ruby-keyword kw">end</span>
1595
+ 265: <span class="ruby-keyword kw">end</span>
1596
+ 266: <span class="ruby-identifier">msg</span> = <span class="ruby-keyword kw">nil</span>
1597
+ 267:
1598
+ 268: <span class="ruby-comment cmt"># Use &quot;for&quot;(not &quot;each&quot;) to support JRuby 1.1.0.</span>
1599
+ 269: <span class="ruby-keyword kw">for</span> <span class="ruby-identifier">target</span> <span class="ruby-keyword kw">in</span> <span class="ruby-identifier">bound_targets</span>(<span class="ruby-keyword kw">self</span>)
1600
+ 270: <span class="ruby-identifier">manager</span> = <span class="ruby-ivar">@@__textdomainmanagers</span>[<span class="ruby-identifier">target</span>]
1601
+ 271: <span class="ruby-keyword kw">for</span> <span class="ruby-identifier">textdomain</span> <span class="ruby-keyword kw">in</span> <span class="ruby-identifier">manager</span>.<span class="ruby-identifier">textdomains</span>
1602
+ 272: <span class="ruby-identifier">msg</span> = <span class="ruby-identifier">textdomain</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">gettext</span>(<span class="ruby-identifier">msgid</span>)
1603
+ 273: <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">msg</span>
1604
+ 274: <span class="ruby-keyword kw">end</span>
1605
+ 275: <span class="ruby-keyword kw">break</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">msg</span>
1606
+ 276: <span class="ruby-keyword kw">end</span>
1607
+ 277:
1608
+ 278: <span class="ruby-identifier">msg</span> <span class="ruby-operator">||=</span> <span class="ruby-identifier">msgid</span>
1609
+ 279: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">div</span> <span class="ruby-keyword kw">and</span> <span class="ruby-identifier">msg</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">msgid</span>
1610
+ 280: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">index</span> = <span class="ruby-identifier">msg</span>.<span class="ruby-identifier">rindex</span>(<span class="ruby-identifier">div</span>)
1611
+ 281: <span class="ruby-identifier">msg</span> = <span class="ruby-identifier">msg</span>[(<span class="ruby-identifier">index</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>)<span class="ruby-operator">..</span><span class="ruby-value">-1</span>]
1612
+ 282: <span class="ruby-keyword kw">end</span>
1613
+ 283: <span class="ruby-keyword kw">end</span>
1614
+ 284: <span class="ruby-ivar">@@__cache_msgids</span>[<span class="ruby-identifier">cached_key</span>] = <span class="ruby-identifier">msg</span>
1615
+ 285: <span class="ruby-keyword kw">end</span>
1616
+ </pre>
1617
+ </div>
1618
+ </div>
1619
+ </div>
1620
+
1621
+ <div id="method-M000032" class="method-detail">
1622
+ <a name="M000032"></a>
1623
+
1624
+ <div class="method-heading">
1625
+ <a href="#M000032" class="method-signature">
1626
+ <span class="method-name">textdomain</span><span class="method-args">(domainname)</span>
1627
+ </a>
1628
+ </div>
1629
+
1630
+ <div class="method-description">
1631
+ <p>
1632
+ Binds a existed <a href="GetText.html#M000032">textdomain</a> to your
1633
+ program. This is the same function with <a
1634
+ href="GetText.html#M000030">GetText.bindtextdomain</a> but simpler(and
1635
+ faster) than <a href="GetText.html#M000030">bindtextdomain</a>. Notice that
1636
+ you need to call <a href="GetText.html#M000030">GetText.bindtextdomain</a>
1637
+ first. If the domainname hasn&#8216;t bound yet, raises <a
1638
+ href="GetText/NoboundTextDomainError.html">GetText::NoboundTextDomainError</a>.
1639
+ </p>
1640
+ <ul>
1641
+ <li>domainname: a <a href="GetText.html#M000032">textdomain</a> name.
1642
+
1643
+ </li>
1644
+ <li>Returns: the <a
1645
+ href="GetText/TextDomainManager.html">GetText::TextDomainManager</a>.
1646
+
1647
+ </li>
1648
+ </ul>
1649
+ <p><a class="source-toggle" href="#"
1650
+ onclick="toggleCode('M000032-source');return false;">[Source]</a></p>
1651
+ <div class="method-source-code" id="M000032-source">
1652
+ <pre>
1653
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 125</span>
1654
+ 125: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">textdomain</span>(<span class="ruby-identifier">domainname</span>)
1655
+ 126: <span class="ruby-identifier">domain</span> = <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">textdomain</span>(<span class="ruby-identifier">domainname</span>)
1656
+ 127: <span class="ruby-identifier">raise</span> <span class="ruby-constant">NoboundTextDomainError</span>, <span class="ruby-node">&quot;#{domainname} is not bound.&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">domain</span>
1657
+ 128: <span class="ruby-identifier">target_key</span> = <span class="ruby-identifier">bound_target</span>
1658
+ 129: <span class="ruby-identifier">manager</span> = <span class="ruby-ivar">@@__textdomainmanagers</span>[<span class="ruby-identifier">target_key</span>]
1659
+ 130: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">manager</span>
1660
+ 131: <span class="ruby-identifier">manager</span> = <span class="ruby-constant">TextDomainManager</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">target_key</span>, <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">get</span>)
1661
+ 132: <span class="ruby-ivar">@@__textdomainmanagers</span>[<span class="ruby-identifier">target_key</span>] = <span class="ruby-identifier">manager</span>
1662
+ 133: <span class="ruby-keyword kw">end</span>
1663
+ 134: <span class="ruby-identifier">manager</span>.<span class="ruby-identifier">set_locale</span>(<span class="ruby-constant">Locale</span>.<span class="ruby-identifier">get</span>)
1664
+ 135: <span class="ruby-identifier">manager</span>.<span class="ruby-identifier">add_textdomain</span>(<span class="ruby-identifier">domainname</span>)
1665
+ 136: <span class="ruby-identifier">manager</span>
1666
+ 137: <span class="ruby-keyword kw">end</span>
1667
+ </pre>
1668
+ </div>
1669
+ </div>
1670
+ </div>
1671
+
1672
+ <div id="method-M000033" class="method-detail">
1673
+ <a name="M000033"></a>
1674
+
1675
+ <div class="method-heading">
1676
+ <a href="#M000033" class="method-signature">
1677
+ <span class="method-name">textdomain_to</span><span class="method-args">(klass, domainname)</span>
1678
+ </a>
1679
+ </div>
1680
+
1681
+ <div class="method-description">
1682
+ <p>
1683
+ Includes <a href="GetText.html">GetText</a> module and bind an exsited <a
1684
+ href="GetText.html#M000032">textdomain</a> to a class. See <a
1685
+ href="GetText.html#M000032">textdomain</a> for more detail.
1686
+ </p>
1687
+ <ul>
1688
+ <li>klass: the target ruby class.
1689
+
1690
+ </li>
1691
+ <li>domainname: the <a href="GetText.html#M000032">textdomain</a> name.
1692
+
1693
+ </li>
1694
+ </ul>
1695
+ <p><a class="source-toggle" href="#"
1696
+ onclick="toggleCode('M000033-source');return false;">[Source]</a></p>
1697
+ <div class="method-source-code" id="M000033-source">
1698
+ <pre>
1699
+ <span class="ruby-comment cmt"># File lib/gettext.rb, line 143</span>
1700
+ 143: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">textdomain_to</span>(<span class="ruby-identifier">klass</span>, <span class="ruby-identifier">domainname</span>)
1701
+ 144: <span class="ruby-identifier">ret</span> = <span class="ruby-keyword kw">nil</span>
1702
+ 145: <span class="ruby-identifier">klass</span>.<span class="ruby-identifier">module_eval</span> {
1703
+ 146: <span class="ruby-identifier">include</span> <span class="ruby-constant">GetText</span>
1704
+ 147: <span class="ruby-identifier">ret</span> = <span class="ruby-identifier">textdomain</span>(<span class="ruby-identifier">domainname</span>)
1705
+ 148: }
1706
+ 149: <span class="ruby-identifier">ret</span>
1707
+ 150: <span class="ruby-keyword kw">end</span>
1708
+ </pre>
1709
+ </div>
1710
+ </div>
1711
+ </div>
1712
+
1713
+ <div id="method-M000020" class="method-detail">
1714
+ <a name="M000020"></a>
1715
+
1716
+ <div class="method-heading">
1717
+ <a href="#M000020" class="method-signature">
1718
+ <span class="method-name">update_pofiles</span><span class="method-args">(textdomain, files, app_version, po_root = &quot;po&quot;, refpot = &quot;tmp.pot&quot;)</span>
1719
+ </a>
1720
+ </div>
1721
+
1722
+ <div class="method-description">
1723
+ <p>
1724
+ At first, this creates the #{po_root}/#{domainname}.pot file using <a
1725
+ href="GetText.html#M000021">GetText.rgettext</a>. Since 2nd time, this
1726
+ updates(merges) the #{po_root}/#{domainname}.pot and all of the
1727
+ #{po_root}/#{lang}/#{domainname}.po files under &quot;po_root&quot; using
1728
+ &quot;<a href="GetText.html#M000018">msgmerge</a>&quot;.
1729
+ </p>
1730
+ <p>
1731
+ <b>Note</b> &quot;<a href="GetText.html#M000018">msgmerge</a>&quot; tool is
1732
+ included in GNU <a href="GetText.html">GetText</a>. So you need to install
1733
+ GNU <a href="GetText.html">GetText</a>.
1734
+ </p>
1735
+ <p>
1736
+ See &lt;HOWTO maintain po/mo files(<a
1737
+ href="http://www.yotabanana.com/hiki/ruby-gettext-howto-manage.html">www.yotabanana.com/hiki/ruby-gettext-howto-manage.html</a>)&gt;
1738
+ for more detals.
1739
+ </p>
1740
+ <ul>
1741
+ <li>domainname: the <a href="GetText.html#M000032">textdomain</a> name.
1742
+
1743
+ </li>
1744
+ <li>targetfiles: An Array of target files or nil (See <a
1745
+ href="GetText.html#M000021">GetText.rgettext</a> for more details).
1746
+
1747
+ </li>
1748
+ <li>app_version: the application information which appears
1749
+ &quot;Project-Id-Version: #{app_version}&quot; in the pot/po-files.
1750
+
1751
+ </li>
1752
+ <li>po_root: the root directory of po-files.
1753
+
1754
+ </li>
1755
+ <li>refpot: set the temporary file name. You shouldn&#8216;t use this(It will
1756
+ be removed).
1757
+
1758
+ </li>
1759
+ </ul>
1760
+ <pre>
1761
+ (e.g.) GetText.update_pofiles(&quot;myapp&quot;, Dir.glob(&quot;lib/*.rb&quot;), &quot;myapp 1.0.0&quot;)
1762
+ </pre>
1763
+ <p><a class="source-toggle" href="#"
1764
+ onclick="toggleCode('M000020-source');return false;">[Source]</a></p>
1765
+ <div class="method-source-code" id="M000020-source">
1766
+ <pre>
1767
+ <span class="ruby-comment cmt"># File lib/gettext/utils.rb, line 120</span>
1768
+ 120: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">update_pofiles</span>(<span class="ruby-identifier">textdomain</span>, <span class="ruby-identifier">files</span>, <span class="ruby-identifier">app_version</span>, <span class="ruby-identifier">po_root</span> = <span class="ruby-value str">&quot;po&quot;</span>, <span class="ruby-identifier">refpot</span> = <span class="ruby-value str">&quot;tmp.pot&quot;</span>)
1769
+ 121: <span class="ruby-identifier">rgettext</span>(<span class="ruby-identifier">files</span>, <span class="ruby-identifier">refpot</span>)
1770
+ 122: <span class="ruby-identifier">msgmerge_all</span>(<span class="ruby-identifier">textdomain</span>, <span class="ruby-identifier">app_version</span>, <span class="ruby-identifier">po_root</span>, <span class="ruby-identifier">refpot</span>)
1771
+ 123: <span class="ruby-constant">File</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">refpot</span>)
1772
+ 124: <span class="ruby-keyword kw">end</span>
1773
+ </pre>
1774
+ </div>
1775
+ </div>
1776
+ </div>
1777
+
1778
+
1779
+ </div>
1780
+
1781
+
1782
+ </div>
1783
+
1784
+
1785
+ <div id="validator-badges">
1786
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
1787
+ </div>
1788
+
1789
+ </body>
1790
+ </html>