gettext 1.91.0 → 1.92.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (238) hide show
  1. data/ChangeLog +111 -1
  2. data/NEWS +35 -0
  3. data/README +26 -24
  4. data/bin/rgettext +2 -2
  5. data/bin/rmsgfmt +2 -2
  6. data/bin/rmsgmerge +2 -2
  7. data/doc/classes/ActionView/Helpers/FormBuilder.html +11 -11
  8. data/doc/classes/ActionView/TemplateFinder.html +152 -0
  9. data/doc/classes/ActiveRecord/Base.html +87 -87
  10. data/doc/classes/ActiveRecord/ConnectionAdapters/Column.html +6 -6
  11. data/doc/classes/GetText.html +617 -491
  12. data/doc/classes/GetText/ActiveRecordParser.html +13 -13
  13. data/doc/classes/GetText/ErbContainer.html +12 -12
  14. data/doc/classes/GetText/ErbParser.html +6 -6
  15. data/doc/classes/GetText/NoboundTextDomainError.html +1 -1
  16. data/doc/classes/GetText/PoParser.html +11 -11
  17. data/doc/classes/GetText/Rails.html +20 -20
  18. data/doc/classes/GetText/RubyParser.html +5 -0
  19. data/doc/classes/GetText/TextDomain.html +53 -53
  20. data/doc/classes/GetText/TextDomainManager.html +54 -54
  21. data/doc/classes/Iconv.html +20 -20
  22. data/doc/classes/Locale.html +151 -151
  23. data/doc/classes/Locale/Object.html +92 -92
  24. data/doc/classes/Locale/SystemBase.html +32 -32
  25. data/doc/classes/Locale/SystemCGI.html +31 -31
  26. data/doc/classes/Locale/SystemWin32.html +6 -6
  27. data/doc/classes/MOFile.html +311 -293
  28. data/doc/classes/MOFile/HeaderRev1.html +150 -0
  29. data/doc/classes/Module.html +6 -6
  30. data/doc/created.rid +1 -1
  31. data/doc/files/ChangeLog.html +143 -2
  32. data/doc/files/README.html +31 -25
  33. data/doc/files/lib/gettext/active_record_rb.html +1 -1
  34. data/doc/files/lib/gettext/mo_rb.html +1 -1
  35. data/doc/files/lib/gettext/parser/active_record_rb.html +1 -1
  36. data/doc/files/lib/gettext/parser/ruby_rb.html +1 -1
  37. data/doc/files/lib/gettext/poparser_rb.html +1 -1
  38. data/doc/files/lib/gettext/rails_rb.html +1 -1
  39. data/doc/files/lib/gettext/rgettext_rb.html +1 -1
  40. data/doc/files/lib/gettext/rmsgfmt_rb.html +2 -1
  41. data/doc/files/lib/gettext/utils_rb.html +1 -1
  42. data/doc/files/lib/gettext/version_rb.html +1 -1
  43. data/doc/files/lib/gettext_rb.html +1 -1
  44. data/doc/fr_class_index.html +2 -0
  45. data/doc/fr_method_index.html +133 -129
  46. data/lib/gettext.rb +49 -7
  47. data/lib/gettext/active_record.rb +49 -4
  48. data/lib/gettext/mo.rb +39 -12
  49. data/lib/gettext/parser/active_record.rb +6 -4
  50. data/lib/gettext/parser/ruby.rb +11 -4
  51. data/lib/gettext/poparser.rb +81 -52
  52. data/lib/gettext/rails.rb +28 -11
  53. data/lib/gettext/rgettext.rb +6 -1
  54. data/lib/gettext/rmsgfmt.rb +3 -11
  55. data/lib/gettext/utils.rb +7 -3
  56. data/lib/gettext/version.rb +1 -1
  57. data/po/bs/rails.po +55 -20
  58. data/po/bs/rgettext.po +3 -3
  59. data/po/ca/rails.po +58 -31
  60. data/po/ca/rgettext.po +16 -18
  61. data/po/cs/rails.po +55 -20
  62. data/po/cs/rgettext.po +3 -3
  63. data/po/de/rails.po +55 -27
  64. data/po/de/rgettext.po +21 -22
  65. data/po/el/rails.po +60 -36
  66. data/po/el/rgettext.po +15 -17
  67. data/po/eo/rails.po +51 -23
  68. data/po/eo/rgettext.po +21 -20
  69. data/po/es/rails.po +57 -31
  70. data/po/es/rgettext.po +17 -18
  71. data/po/et/rails.po +55 -20
  72. data/po/fr/rails.po +56 -21
  73. data/po/fr/rgettext.po +3 -3
  74. data/po/hr/rails.po +55 -20
  75. data/po/hr/rgettext.po +3 -3
  76. data/po/hu/rails.po +54 -26
  77. data/po/hu/rgettext.po +18 -17
  78. data/po/it/rails.po +55 -20
  79. data/po/it/rgettext.po +3 -3
  80. data/po/ja/rails.po +54 -26
  81. data/po/ja/rgettext.po +17 -18
  82. data/po/ko/rails.po +56 -21
  83. data/po/ko/rgettext.po +3 -3
  84. data/po/lv/rails.po +155 -0
  85. data/po/lv/rgettext.po +137 -0
  86. data/po/nb/rails.po +61 -34
  87. data/po/nb/rgettext.po +22 -19
  88. data/po/nl/rails.po +56 -21
  89. data/po/nl/rgettext.po +3 -3
  90. data/po/pt_BR/rails.po +53 -26
  91. data/po/pt_BR/rgettext.po +19 -19
  92. data/po/rails.pot +44 -16
  93. data/po/rgettext.pot +3 -3
  94. data/po/ru/rails.po +62 -36
  95. data/po/ru/rgettext.po +19 -19
  96. data/po/sr/rails.po +87 -58
  97. data/po/sr/rgettext.po +38 -33
  98. data/po/sv/rgettext.po +3 -3
  99. data/po/ua/rails.po +62 -32
  100. data/po/ua/rgettext.po +19 -17
  101. data/po/vi/rails.po +56 -28
  102. data/po/vi/rgettext.po +35 -34
  103. data/po/zh/rails.po +52 -24
  104. data/po/zh/rgettext.po +22 -24
  105. data/po/zh_TW/rails.po +51 -23
  106. data/po/zh_TW/rgettext.po +16 -18
  107. data/samples/cgi/cookie.cgi +0 -0
  108. data/samples/cgi/helloerb1.cgi +0 -0
  109. data/samples/cgi/helloerb2.cgi +0 -0
  110. data/samples/cgi/http.rb +0 -0
  111. data/samples/cgi/index.cgi +0 -0
  112. data/samples/cgi/po/lv/helloerb1.po +65 -0
  113. data/samples/cgi/po/lv/helloerb2.po +52 -0
  114. data/samples/cgi/po/lv/hellolib.po +24 -0
  115. data/samples/cgi/po/lv/main.po +77 -0
  116. data/samples/cgi/po/nb/helloerb1.po +16 -14
  117. data/samples/cgi/po/nb/helloerb2.po +14 -12
  118. data/samples/cgi/po/nb/hellolib.po +9 -7
  119. data/samples/cgi/po/nb/main.po +20 -18
  120. data/samples/cgi/po/sr/helloerb1.po +8 -8
  121. data/samples/cgi/po/sr/helloerb2.po +6 -6
  122. data/samples/cgi/po/sr/hellolib.po +2 -2
  123. data/samples/cgi/po/sr/main.po +15 -15
  124. data/samples/cgi/po/ua/helloerb1.po +2 -2
  125. data/samples/cgi/po/ua/main.po +3 -3
  126. data/samples/hello_plural.rb +0 -0
  127. data/samples/makemo.rb +0 -0
  128. data/samples/po/lv/hello.po +24 -0
  129. data/samples/po/lv/hello2.po +32 -0
  130. data/samples/po/lv/hello_noop.po +28 -0
  131. data/samples/po/lv/hello_plural.po +26 -0
  132. data/samples/po/lv/helloglade2.po +38 -0
  133. data/samples/po/lv/hellogtk.po +24 -0
  134. data/samples/po/lv/hellotk.po +24 -0
  135. data/samples/po/nb/hello.po +9 -8
  136. data/samples/po/nb/hello2.po +9 -9
  137. data/samples/po/nb/hello_noop.po +10 -9
  138. data/samples/po/nb/hello_plural.po +10 -8
  139. data/samples/po/nb/helloglade2.po +10 -8
  140. data/samples/po/nb/hellogtk.po +9 -8
  141. data/samples/po/nb/hellotk.po +9 -7
  142. data/samples/po/sr/hello.po +2 -2
  143. data/samples/po/sr/hello2.po +4 -4
  144. data/samples/po/sr/hello_noop.po +3 -3
  145. data/samples/po/sr/hello_plural.po +3 -3
  146. data/samples/po/sr/helloglade2.po +4 -4
  147. data/samples/po/sr/hellogtk.po +2 -2
  148. data/samples/po/sr/hellotk.po +2 -2
  149. data/samples/po/ua/hello2.po +2 -2
  150. data/samples/po/ua/hello_plural.po +2 -2
  151. data/samples/rails/config/boot.rb +3 -2
  152. data/samples/rails/config/environment.rb +2 -3
  153. data/samples/rails/db/schema.rb +0 -0
  154. data/samples/rails/po/lv/blog.po +110 -0
  155. data/samples/rails/po/nb/blog.po +19 -15
  156. data/samples/rails/po/sr/blog.po +23 -23
  157. data/samples/rails/po/ua/blog.po +3 -3
  158. data/samples/rails/public/dispatch.cgi +0 -0
  159. data/samples/rails/public/dispatch.fcgi +0 -0
  160. data/samples/rails/public/dispatch.rb +0 -0
  161. data/samples/rails/public/javascripts/controls.js +1 -1
  162. data/samples/rails/public/javascripts/dragdrop.js +1 -1
  163. data/samples/rails/public/javascripts/effects.js +1 -1
  164. data/samples/rails/script/about +0 -0
  165. data/samples/rails/script/breakpointer +0 -0
  166. data/samples/rails/script/console +0 -0
  167. data/samples/rails/script/destroy +0 -0
  168. data/samples/rails/script/generate +0 -0
  169. data/samples/rails/script/performance/benchmarker +0 -0
  170. data/samples/rails/script/performance/profiler +0 -0
  171. data/samples/rails/script/plugin +0 -0
  172. data/samples/rails/script/process/reaper +0 -0
  173. data/samples/rails/script/process/spawner +0 -0
  174. data/samples/rails/script/process/spinner +0 -0
  175. data/samples/rails/script/runner +0 -0
  176. data/samples/rails/script/server +0 -0
  177. data/samples/rails/vendor/plugins/gettext/po/lv/gettext_plugin.po +28 -0
  178. data/samples/rails/vendor/plugins/gettext/po/nb/gettext_plugin.po +11 -8
  179. data/samples/rails/vendor/plugins/gettext/po/sr/gettext_plugin.po +5 -5
  180. data/src/poparser.ry +27 -6
  181. data/test/benchmark.rb +1 -1
  182. data/test/db/mysql.drop.sql +1 -0
  183. data/test/db/mysql.sql +13 -0
  184. data/test/fixtures/inept_wizard.rb +3 -0
  185. data/test/fixtures/people.yml +6 -0
  186. data/test/fixtures/topic.rb +30 -0
  187. data/test/fixtures/wizard.rb +5 -0
  188. data/test/po/active_record.pot +151 -66
  189. data/test/po/ja/active_record.po +177 -92
  190. data/test/po/ja/test_pgettext.po +41 -0
  191. data/test/rails/app/controllers/users_controller.rb +1 -0
  192. data/test/rails/app/views/articles/_form_fr.html.erb +1 -0
  193. data/test/rails/config/boot.rb +96 -32
  194. data/test/rails/config/environment.rb +3 -2
  195. data/test/rails/db/schema.rb +4 -4
  196. data/test/rails/public/dispatch.cgi +0 -0
  197. data/test/rails/public/dispatch.fcgi +0 -0
  198. data/test/rails/public/dispatch.rb +0 -0
  199. data/test/rails/public/javascripts/controls.js +484 -354
  200. data/test/rails/public/javascripts/dragdrop.js +88 -58
  201. data/test/rails/public/javascripts/effects.js +396 -364
  202. data/test/rails/public/javascripts/prototype.js +2817 -1107
  203. data/test/rails/script/about +0 -0
  204. data/test/rails/script/breakpointer +0 -0
  205. data/test/rails/script/console +0 -0
  206. data/test/rails/script/destroy +0 -0
  207. data/test/rails/script/generate +0 -0
  208. data/test/rails/script/performance/benchmarker +0 -0
  209. data/test/rails/script/performance/profiler +0 -0
  210. data/test/rails/script/plugin +0 -0
  211. data/test/rails/script/process/inspector +0 -0
  212. data/test/rails/script/process/reaper +0 -0
  213. data/test/rails/script/process/spawner +0 -0
  214. data/test/rails/script/runner +0 -0
  215. data/test/rails/script/server +0 -0
  216. data/test/rails/test/functional/articles_controller_test.rb +5 -0
  217. data/test/rails/test/result/en/create_error.html +3 -3
  218. data/test/rails/test/result/en/custom_error_message.html +3 -3
  219. data/test/rails/test/result/en/custom_error_message_with_plural.html +60 -60
  220. data/test/rails/test/result/en/multi_error_messages_for.html +6 -6
  221. data/test/rails/test/result/en/new.html +3 -3
  222. data/test/rails/test/result/fr/custom_error_message.html +3 -3
  223. data/test/rails/test/result/fr/custom_error_message_with_plural.html +60 -60
  224. data/test/rails/test/result/fr/new.html +23 -0
  225. data/test/rails/test/result/ja/create_error.html +3 -3
  226. data/test/rails/test/result/ja/custom_error_message.html +3 -3
  227. data/test/rails/test/result/ja/custom_error_message_with_plural.html +60 -60
  228. data/test/rails/test/result/ja/multi_error_messages_for.html +6 -6
  229. data/test/rails/test/result/ja/new.html +3 -3
  230. data/test/test.sh +2 -2
  231. data/test/test_active_record.rb +824 -20
  232. data/test/test_gettext.rb +34 -4
  233. data/test/test_java.sh +0 -0
  234. data/test/test_locale.rb +2 -2
  235. data/test/test_parser.rb +13 -2
  236. data/test/test_rails_caching.rb +11 -4
  237. data/test/testlib/pgettext.rb +33 -0
  238. metadata +32 -4
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Sun May 11 20:44:17 +0900 2008</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Sun May 11 20:44:17 +0900 2008</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Thu Jul 05 00:37:16 +0900 2007</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Thu Jul 05 00:37:16 +0900 2007</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Fri Jul 06 10:49:54 +0900 2007</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Sun May 11 20:44:17 +0900 2008</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Wed Jan 30 01:34:54 +0900 2008</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Mon Jun 12 00:36:20 +0900 2006</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -78,6 +78,7 @@
78
78
  gettext&nbsp;&nbsp;
79
79
  gettext/poparser&nbsp;&nbsp;
80
80
  rbconfig&nbsp;&nbsp;
81
+ gettext/utils&nbsp;&nbsp;
81
82
  </div>
82
83
  </div>
83
84
 
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Sun May 11 20:44:17 +0900 2008</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Sun May 11 20:44:17 +0900 2008</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -56,7 +56,7 @@
56
56
  </tr>
57
57
  <tr class="top-aligned-row">
58
58
  <td><strong>Last Update:</strong></td>
59
- <td>Sun May 11 20:44:17 +0900 2008</td>
59
+ <td>Sat Aug 02 17:42:26 +0900 2008</td>
60
60
  </tr>
61
61
  </table>
62
62
  </div>
@@ -21,6 +21,7 @@
21
21
  <h1 class="section-bar">Classes</h1>
22
22
  <div id="index-entries">
23
23
  <a href="classes/ActionView/Helpers/FormBuilder.html">ActionView::Helpers::FormBuilder</a><br />
24
+ <a href="classes/ActionView/TemplateFinder.html">ActionView::TemplateFinder</a><br />
24
25
  <a href="classes/ActiveRecord/Base.html">ActiveRecord::Base</a><br />
25
26
  <a href="classes/ActiveRecord/ConnectionAdapters/Column.html">ActiveRecord::ConnectionAdapters::Column</a><br />
26
27
  <a href="classes/ActiveRecord/Migration.html">ActiveRecord::Migration</a><br />
@@ -50,6 +51,7 @@
50
51
  <a href="classes/Locale/SystemWin32.html">Locale::SystemWin32</a><br />
51
52
  <a href="classes/Locale/SystemWin32Table.html">Locale::SystemWin32Table</a><br />
52
53
  <a href="classes/MOFile.html">MOFile</a><br />
54
+ <a href="classes/MOFile/HeaderRev1.html">MOFile::HeaderRev1</a><br />
53
55
  <a href="classes/MOFile/InvalidFormat.html">MOFile::InvalidFormat</a><br />
54
56
  <a href="classes/Module.html">Module</a><br />
55
57
  <a href="classes/String.html">String</a><br />
@@ -21,136 +21,140 @@
21
21
  <h1 class="section-bar">Methods</h1>
22
22
  <div id="index-entries">
23
23
  <a href="classes/String.html#M000017">% (String)</a><br />
24
- <a href="classes/GetText.html#M000037">N_ (GetText)</a><br />
25
- <a href="classes/GetText.html#M000038">Nn_ (GetText)</a><br />
26
- <a href="classes/GetText.html#M000051">_ (GetText)</a><br />
27
- <a href="classes/GetText/PoParser.html#M000079">_reduce_none (GetText::PoParser)</a><br />
28
- <a href="classes/GetText.html#M000047">add_default_locale_path (GetText)</a><br />
29
- <a href="classes/GetText/TextDomain.html#M000073">add_default_locale_path (GetText::TextDomain)</a><br />
30
- <a href="classes/GetText/TextDomainManager.html#M000068">add_textdomain (GetText::TextDomainManager)</a><br />
31
- <a href="classes/Module.html#M000016">alias_method_chain (Module)</a><br />
32
- <a href="classes/GetText/Rails.html#M000060">available_locales (GetText::Rails)</a><br />
33
- <a href="classes/GetText/Rails.html#M000059">bindtextdomain (GetText::Rails)</a><br />
34
- <a href="classes/GetText.html#M000030">bindtextdomain (GetText)</a><br />
35
- <a href="classes/GetText.html#M000031">bindtextdomain_to (GetText)</a><br />
36
- <a href="classes/GetText.html#M000027">cached= (GetText)</a><br />
37
- <a href="classes/GetText.html#M000028">cached? (GetText)</a><br />
38
- <a href="classes/Locale/SystemCGI.html#M000105">cgi (Locale::SystemCGI)</a><br />
39
- <a href="classes/GetText.html#M000025">cgi (GetText)</a><br />
40
- <a href="classes/Locale.html#M000082">cgi (Locale)</a><br />
41
- <a href="classes/Locale/SystemCGI.html#M000104">cgi= (Locale::SystemCGI)</a><br />
42
- <a href="classes/Locale.html#M000081">cgi= (Locale)</a><br />
43
- <a href="classes/GetText.html#M000024">cgi= (GetText)</a><br />
44
- <a href="classes/Locale.html#M000093">charset (Locale)</a><br />
45
- <a href="classes/Locale/SystemBase.html#M000100">charset (Locale::SystemBase)</a><br />
46
- <a href="classes/Locale/Object.html#M000109">charset= (Locale::Object)</a><br />
47
- <a href="classes/GetText/TextDomain.html#M000072">check_mo= (GetText::TextDomain)</a><br />
48
- <a href="classes/GetText/TextDomain.html#M000071">check_mo? (GetText::TextDomain)</a><br />
49
- <a href="classes/Locale/Object.html#M000115">clear (Locale::Object)</a><br />
50
- <a href="classes/Locale.html#M000095">clear (Locale)</a><br />
51
- <a href="classes/GetText.html#M000029">clear_cache (GetText)</a><br />
52
- <a href="classes/Locale.html#M000092">codeset (Locale)</a><br />
53
- <a href="classes/ActiveRecord/Base.html#M000128">columns_with_gettext (ActiveRecord::Base)</a><br />
54
- <a href="classes/Iconv.html#M000001">conv (Iconv)</a><br />
24
+ <a href="classes/GetText.html#M000092">N_ (GetText)</a><br />
25
+ <a href="classes/GetText.html#M000093">Nn_ (GetText)</a><br />
26
+ <a href="classes/GetText.html#M000106">_ (GetText)</a><br />
27
+ <a href="classes/GetText/PoParser.html#M000135">_reduce_none (GetText::PoParser)</a><br />
28
+ <a href="classes/GetText.html#M000102">add_default_locale_path (GetText)</a><br />
29
+ <a href="classes/GetText/TextDomain.html#M000129">add_default_locale_path (GetText::TextDomain)</a><br />
30
+ <a href="classes/GetText/TextDomainManager.html#M000124">add_textdomain (GetText::TextDomainManager)</a><br />
31
+ <a href="classes/Module.html#M000001">alias_method_chain (Module)</a><br />
32
+ <a href="classes/GetText/Rails.html#M000116">available_locales (GetText::Rails)</a><br />
33
+ <a href="classes/GetText.html#M000083">bindtextdomain (GetText)</a><br />
34
+ <a href="classes/GetText/Rails.html#M000115">bindtextdomain (GetText::Rails)</a><br />
35
+ <a href="classes/GetText.html#M000084">bindtextdomain_to (GetText)</a><br />
36
+ <a href="classes/GetText.html#M000080">cached= (GetText)</a><br />
37
+ <a href="classes/GetText.html#M000081">cached? (GetText)</a><br />
38
+ <a href="classes/GetText.html#M000078">cgi (GetText)</a><br />
39
+ <a href="classes/Locale.html#M000028">cgi (Locale)</a><br />
40
+ <a href="classes/Locale/SystemCGI.html#M000051">cgi (Locale::SystemCGI)</a><br />
41
+ <a href="classes/Locale/SystemCGI.html#M000050">cgi= (Locale::SystemCGI)</a><br />
42
+ <a href="classes/Locale.html#M000027">cgi= (Locale)</a><br />
43
+ <a href="classes/GetText.html#M000077">cgi= (GetText)</a><br />
44
+ <a href="classes/Locale.html#M000039">charset (Locale)</a><br />
45
+ <a href="classes/Locale/SystemBase.html#M000047">charset (Locale::SystemBase)</a><br />
46
+ <a href="classes/Locale/Object.html#M000055">charset= (Locale::Object)</a><br />
47
+ <a href="classes/GetText/TextDomain.html#M000128">check_mo= (GetText::TextDomain)</a><br />
48
+ <a href="classes/GetText/TextDomain.html#M000127">check_mo? (GetText::TextDomain)</a><br />
49
+ <a href="classes/Locale.html#M000041">clear (Locale)</a><br />
50
+ <a href="classes/Locale/Object.html#M000061">clear (Locale::Object)</a><br />
51
+ <a href="classes/GetText.html#M000082">clear_cache (GetText)</a><br />
52
+ <a href="classes/Locale.html#M000038">codeset (Locale)</a><br />
53
+ <a href="classes/ActiveRecord/Base.html#M000023">columns_with_gettext (ActiveRecord::Base)</a><br />
54
+ <a href="classes/Iconv.html#M000003">conv (Iconv)</a><br />
55
55
  <a href="classes/Iconv.html#M000002">conv (Iconv)</a><br />
56
- <a href="classes/Locale/Object.html#M000108">country= (Locale::Object)</a><br />
57
- <a href="classes/GetText.html#M000019">create_mofiles (GetText)</a><br />
58
- <a href="classes/Locale.html#M000087">current (Locale)</a><br />
59
- <a href="classes/Locale.html#M000089">current= (Locale)</a><br />
60
- <a href="classes/Locale.html#M000094">current_charset (Locale)</a><br />
61
- <a href="classes/GetText.html#M000048">current_textdomain_info (GetText)</a><br />
62
- <a href="classes/Locale.html#M000086">default (Locale)</a><br />
63
- <a href="classes/Locale.html#M000084">default= (Locale)</a><br />
64
- <a href="classes/Locale/SystemCGI.html#M000106">default_locale (Locale::SystemCGI)</a><br />
65
- <a href="classes/GetText/TextDomainManager.html#M000069">each (GetText::TextDomainManager)</a><br />
66
- <a href="classes/GetText/TextDomainManager.html#M000065">each_all (GetText::TextDomainManager)</a><br />
67
- <a href="classes/GetText/ErbContainer.html#M000056">eval_file (GetText::ErbContainer)</a><br />
68
- <a href="classes/GetText/ErbContainer.html#M000055">eval_src (GetText::ErbContainer)</a><br />
69
- <a href="classes/Locale.html#M000091">get (Locale)</a><br />
70
- <a href="classes/Locale/SystemBase.html#M000097">get_charset (Locale::SystemBase)</a><br />
71
- <a href="classes/Locale/SystemWin32.html#M000101">get_charset (Locale::SystemWin32)</a><br />
72
- <a href="classes/GetText/TextDomain.html#M000076">gettext (GetText::TextDomain)</a><br />
73
- <a href="classes/GetText.html#M000034">gettext (GetText)</a><br />
74
- <a href="classes/MOFile.html#M000011">hash_string (MOFile)</a><br />
75
- <a href="classes/ActiveRecord/ConnectionAdapters/Column.html#M000123">human_name_with_gettext (ActiveRecord::ConnectionAdapters::Column)</a><br />
76
- <a href="classes/Iconv.html#M000003">iconv (Iconv)</a><br />
77
- <a href="classes/GetText/ErbParser.html#M000062">init (GetText::ErbParser)</a><br />
78
- <a href="classes/GetText/ActiveRecordParser.html#M000057">init (GetText::ActiveRecordParser)</a><br />
79
- <a href="classes/ActionView/Helpers/FormBuilder.html#M000131">label_with_gettext (ActionView::Helpers::FormBuilder)</a><br />
80
- <a href="classes/Locale/Object.html#M000107">language= (Locale::Object)</a><br />
81
- <a href="classes/MOFile.html#M000007">load (MOFile)</a><br />
82
- <a href="classes/MOFile.html#M000013">load_from_file (MOFile)</a><br />
83
- <a href="classes/MOFile.html#M000008">load_from_stream (MOFile)</a><br />
84
- <a href="classes/GetText.html#M000046">locale (GetText)</a><br />
85
- <a href="classes/GetText.html#M000042">locale= (GetText)</a><br />
86
- <a href="classes/Locale/SystemBase.html#M000098">locale_from_env (Locale::SystemBase)</a><br />
87
- <a href="classes/Locale/Object.html#M000112">modifier= (Locale::Object)</a><br />
88
- <a href="classes/GetText.html#M000018">msgmerge (GetText)</a><br />
89
- <a href="classes/GetText.html#M000052">n_ (GetText)</a><br />
90
- <a href="classes/Locale/Object.html#M000114">new (Locale::Object)</a><br />
91
- <a href="classes/GetText/TextDomain.html#M000074">new (GetText::TextDomain)</a><br />
92
- <a href="classes/GetText/TextDomainManager.html#M000067">new (GetText::TextDomainManager)</a><br />
93
- <a href="classes/MOFile.html#M000005">new (MOFile)</a><br />
94
- <a href="classes/MOFile.html#M000010">next_prime (MOFile)</a><br />
95
- <a href="classes/GetText/TextDomain.html#M000077">ngettext (GetText::TextDomain)</a><br />
96
- <a href="classes/GetText.html#M000036">ngettext (GetText)</a><br />
97
- <a href="classes/GetText/Rails.html#M000061">normalized_locale (GetText::Rails)</a><br />
98
- <a href="classes/GetText.html#M000054">ns_ (GetText)</a><br />
99
- <a href="classes/GetText.html#M000039">nsgettext (GetText)</a><br />
100
- <a href="classes/MOFile.html#M000004">open (MOFile)</a><br />
101
- <a href="classes/GetText/TextDomainManager.html#M000064">output_charset (GetText::TextDomainManager)</a><br />
102
- <a href="classes/GetText.html#M000045">output_charset (GetText)</a><br />
103
- <a href="classes/GetText.html#M000044">output_charset= (GetText)</a><br />
104
- <a href="classes/GetText/TextDomainManager.html#M000063">output_charset= (GetText::TextDomainManager)</a><br />
105
- <a href="classes/Locale/Object.html#M000113">parse (Locale::Object)</a><br />
106
- <a href="classes/MOFile.html#M000009">prime? (MOFile)</a><br />
107
- <a href="classes/GetText.html#M000049">remove_all_textdomains (GetText)</a><br />
108
- <a href="classes/GetText.html#M000021">rgettext (GetText)</a><br />
109
- <a href="classes/GetText.html#M000022">rmsgfmt (GetText)</a><br />
110
- <a href="classes/GetText.html#M000026">rmsgmerge (GetText)</a><br />
111
- <a href="classes/GetText.html#M000053">s_ (GetText)</a><br />
112
- <a href="classes/GetText/TextDomain.html#M000078">same_property? (GetText::TextDomain)</a><br />
113
- <a href="classes/MOFile.html#M000014">save_to_file (MOFile)</a><br />
114
- <a href="classes/MOFile.html#M000012">save_to_stream (MOFile)</a><br />
115
- <a href="classes/Locale/Object.html#M000110">script= (Locale::Object)</a><br />
116
- <a href="classes/Locale.html#M000090">set (Locale)</a><br />
117
- <a href="classes/GetText.html#M000023">set_cgi (GetText)</a><br />
118
- <a href="classes/Locale.html#M000080">set_cgi (Locale)</a><br />
119
- <a href="classes/Locale/SystemCGI.html#M000103">set_cgi (Locale::SystemCGI)</a><br />
120
- <a href="classes/MOFile.html#M000015">set_comment (MOFile)</a><br />
121
- <a href="classes/Locale.html#M000088">set_current (Locale)</a><br />
122
- <a href="classes/Locale.html#M000083">set_default (Locale)</a><br />
123
- <a href="classes/ActiveRecord/Base.html#M000130">set_error_message_explanation (ActiveRecord::Base)</a><br />
124
- <a href="classes/ActiveRecord/Base.html#M000129">set_error_message_title (ActiveRecord::Base)</a><br />
125
- <a href="classes/GetText.html#M000040">set_locale (GetText)</a><br />
126
- <a href="classes/GetText/TextDomainManager.html#M000070">set_locale (GetText::TextDomainManager)</a><br />
127
- <a href="classes/GetText/TextDomain.html#M000075">set_locale (GetText::TextDomain)</a><br />
128
- <a href="classes/GetText.html#M000041">set_locale_all (GetText)</a><br />
129
- <a href="classes/GetText.html#M000043">set_output_charset (GetText)</a><br />
130
- <a href="classes/GetText.html#M000050">setlocale (GetText)</a><br />
131
- <a href="classes/GetText.html#M000035">sgettext (GetText)</a><br />
132
- <a href="classes/Locale/SystemCGI.html#M000102">system (Locale::SystemCGI)</a><br />
133
- <a href="classes/Locale.html#M000085">system (Locale)</a><br />
134
- <a href="classes/Locale/SystemBase.html#M000099">system (Locale::SystemBase)</a><br />
135
- <a href="classes/Locale.html#M000096">system_module (Locale)</a><br />
136
- <a href="classes/GetText.html#M000032">textdomain (GetText)</a><br />
137
- <a href="classes/GetText/TextDomainManager.html#M000066">textdomain (GetText::TextDomainManager)</a><br />
138
- <a href="classes/GetText.html#M000033">textdomain_to (GetText)</a><br />
139
- <a href="classes/Locale/Object.html#M000120">to_a (Locale::Object)</a><br />
140
- <a href="classes/Locale/Object.html#M000119">to_general (Locale::Object)</a><br />
141
- <a href="classes/Locale/Object.html#M000117">to_iso3066 (Locale::Object)</a><br />
142
- <a href="classes/Locale/Object.html#M000116">to_posix (Locale::Object)</a><br />
143
- <a href="classes/Locale/Object.html#M000121">to_s (Locale::Object)</a><br />
144
- <a href="classes/Locale/Object.html#M000122">to_str (Locale::Object)</a><br />
145
- <a href="classes/Locale/Object.html#M000118">to_win (Locale::Object)</a><br />
146
- <a href="classes/ActiveRecord/Base.html#M000126">untranslate (ActiveRecord::Base)</a><br />
147
- <a href="classes/ActiveRecord/Base.html#M000127">untranslate? (ActiveRecord::Base)</a><br />
148
- <a href="classes/ActiveRecord/Base.html#M000124">untranslate_all (ActiveRecord::Base)</a><br />
149
- <a href="classes/ActiveRecord/Base.html#M000125">untranslate_all? (ActiveRecord::Base)</a><br />
150
- <a href="classes/GetText/ActiveRecordParser.html#M000058">untranslate_column? (GetText::ActiveRecordParser)</a><br />
151
- <a href="classes/MOFile.html#M000006">update! (MOFile)</a><br />
152
- <a href="classes/GetText.html#M000020">update_pofiles (GetText)</a><br />
153
- <a href="classes/Locale/Object.html#M000111">variant= (Locale::Object)</a><br />
56
+ <a href="classes/Locale/Object.html#M000054">country= (Locale::Object)</a><br />
57
+ <a href="classes/GetText.html#M000072">create_mofiles (GetText)</a><br />
58
+ <a href="classes/Locale.html#M000033">current (Locale)</a><br />
59
+ <a href="classes/Locale.html#M000035">current= (Locale)</a><br />
60
+ <a href="classes/Locale.html#M000040">current_charset (Locale)</a><br />
61
+ <a href="classes/GetText.html#M000103">current_textdomain_info (GetText)</a><br />
62
+ <a href="classes/Locale.html#M000032">default (Locale)</a><br />
63
+ <a href="classes/Locale.html#M000030">default= (Locale)</a><br />
64
+ <a href="classes/Locale/SystemCGI.html#M000052">default_locale (Locale::SystemCGI)</a><br />
65
+ <a href="classes/GetText/TextDomainManager.html#M000125">each (GetText::TextDomainManager)</a><br />
66
+ <a href="classes/GetText/TextDomainManager.html#M000121">each_all (GetText::TextDomainManager)</a><br />
67
+ <a href="classes/GetText/ErbContainer.html#M000112">eval_file (GetText::ErbContainer)</a><br />
68
+ <a href="classes/GetText/ErbContainer.html#M000111">eval_src (GetText::ErbContainer)</a><br />
69
+ <a href="classes/Locale.html#M000037">get (Locale)</a><br />
70
+ <a href="classes/Locale/SystemWin32.html#M000043">get_charset (Locale::SystemWin32)</a><br />
71
+ <a href="classes/Locale/SystemBase.html#M000044">get_charset (Locale::SystemBase)</a><br />
72
+ <a href="classes/GetText.html#M000087">gettext (GetText)</a><br />
73
+ <a href="classes/GetText/TextDomain.html#M000132">gettext (GetText::TextDomain)</a><br />
74
+ <a href="classes/MOFile.html#M000012">hash_string (MOFile)</a><br />
75
+ <a href="classes/ActiveRecord/ConnectionAdapters/Column.html#M000018">human_name_with_gettext (ActiveRecord::ConnectionAdapters::Column)</a><br />
76
+ <a href="classes/Iconv.html#M000004">iconv (Iconv)</a><br />
77
+ <a href="classes/GetText/ErbParser.html#M000118">init (GetText::ErbParser)</a><br />
78
+ <a href="classes/GetText/ActiveRecordParser.html#M000113">init (GetText::ActiveRecordParser)</a><br />
79
+ <a href="classes/ActionView/Helpers/FormBuilder.html#M000069">label_with_gettext (ActionView::Helpers::FormBuilder)</a><br />
80
+ <a href="classes/Locale/Object.html#M000053">language= (Locale::Object)</a><br />
81
+ <a href="classes/MOFile.html#M000008">load (MOFile)</a><br />
82
+ <a href="classes/MOFile.html#M000014">load_from_file (MOFile)</a><br />
83
+ <a href="classes/MOFile.html#M000009">load_from_stream (MOFile)</a><br />
84
+ <a href="classes/GetText.html#M000101">locale (GetText)</a><br />
85
+ <a href="classes/GetText.html#M000097">locale= (GetText)</a><br />
86
+ <a href="classes/Locale/SystemBase.html#M000045">locale_from_env (Locale::SystemBase)</a><br />
87
+ <a href="classes/Locale/Object.html#M000058">modifier= (Locale::Object)</a><br />
88
+ <a href="classes/GetText.html#M000071">msgmerge (GetText)</a><br />
89
+ <a href="classes/GetText.html#M000107">n_ (GetText)</a><br />
90
+ <a href="classes/Locale/Object.html#M000060">new (Locale::Object)</a><br />
91
+ <a href="classes/GetText/TextDomainManager.html#M000123">new (GetText::TextDomainManager)</a><br />
92
+ <a href="classes/MOFile.html#M000006">new (MOFile)</a><br />
93
+ <a href="classes/GetText/TextDomain.html#M000130">new (GetText::TextDomain)</a><br />
94
+ <a href="classes/MOFile.html#M000011">next_prime (MOFile)</a><br />
95
+ <a href="classes/GetText.html#M000090">ngettext (GetText)</a><br />
96
+ <a href="classes/GetText/TextDomain.html#M000133">ngettext (GetText::TextDomain)</a><br />
97
+ <a href="classes/GetText/Rails.html#M000117">normalized_locale (GetText::Rails)</a><br />
98
+ <a href="classes/GetText.html#M000091">npgettext (GetText)</a><br />
99
+ <a href="classes/GetText.html#M000110">ns_ (GetText)</a><br />
100
+ <a href="classes/GetText.html#M000094">nsgettext (GetText)</a><br />
101
+ <a href="classes/MOFile.html#M000005">open (MOFile)</a><br />
102
+ <a href="classes/GetText/TextDomainManager.html#M000120">output_charset (GetText::TextDomainManager)</a><br />
103
+ <a href="classes/GetText.html#M000100">output_charset (GetText)</a><br />
104
+ <a href="classes/GetText.html#M000099">output_charset= (GetText)</a><br />
105
+ <a href="classes/GetText/TextDomainManager.html#M000119">output_charset= (GetText::TextDomainManager)</a><br />
106
+ <a href="classes/GetText.html#M000109">p_ (GetText)</a><br />
107
+ <a href="classes/Locale/Object.html#M000059">parse (Locale::Object)</a><br />
108
+ <a href="classes/GetText.html#M000089">pgettext (GetText)</a><br />
109
+ <a href="classes/ActionView/TemplateFinder.html#M000070">pick_template_with_gettext (ActionView::TemplateFinder)</a><br />
110
+ <a href="classes/MOFile.html#M000010">prime? (MOFile)</a><br />
111
+ <a href="classes/GetText.html#M000104">remove_all_textdomains (GetText)</a><br />
112
+ <a href="classes/GetText.html#M000074">rgettext (GetText)</a><br />
113
+ <a href="classes/GetText.html#M000075">rmsgfmt (GetText)</a><br />
114
+ <a href="classes/GetText.html#M000079">rmsgmerge (GetText)</a><br />
115
+ <a href="classes/GetText.html#M000108">s_ (GetText)</a><br />
116
+ <a href="classes/GetText/TextDomain.html#M000134">same_property? (GetText::TextDomain)</a><br />
117
+ <a href="classes/MOFile.html#M000015">save_to_file (MOFile)</a><br />
118
+ <a href="classes/MOFile.html#M000013">save_to_stream (MOFile)</a><br />
119
+ <a href="classes/Locale/Object.html#M000056">script= (Locale::Object)</a><br />
120
+ <a href="classes/Locale.html#M000036">set (Locale)</a><br />
121
+ <a href="classes/Locale.html#M000026">set_cgi (Locale)</a><br />
122
+ <a href="classes/GetText.html#M000076">set_cgi (GetText)</a><br />
123
+ <a href="classes/Locale/SystemCGI.html#M000049">set_cgi (Locale::SystemCGI)</a><br />
124
+ <a href="classes/MOFile.html#M000016">set_comment (MOFile)</a><br />
125
+ <a href="classes/Locale.html#M000034">set_current (Locale)</a><br />
126
+ <a href="classes/Locale.html#M000029">set_default (Locale)</a><br />
127
+ <a href="classes/ActiveRecord/Base.html#M000025">set_error_message_explanation (ActiveRecord::Base)</a><br />
128
+ <a href="classes/ActiveRecord/Base.html#M000024">set_error_message_title (ActiveRecord::Base)</a><br />
129
+ <a href="classes/GetText.html#M000095">set_locale (GetText)</a><br />
130
+ <a href="classes/GetText/TextDomain.html#M000131">set_locale (GetText::TextDomain)</a><br />
131
+ <a href="classes/GetText/TextDomainManager.html#M000126">set_locale (GetText::TextDomainManager)</a><br />
132
+ <a href="classes/GetText.html#M000096">set_locale_all (GetText)</a><br />
133
+ <a href="classes/GetText.html#M000098">set_output_charset (GetText)</a><br />
134
+ <a href="classes/GetText.html#M000105">setlocale (GetText)</a><br />
135
+ <a href="classes/GetText.html#M000088">sgettext (GetText)</a><br />
136
+ <a href="classes/Locale.html#M000031">system (Locale)</a><br />
137
+ <a href="classes/Locale/SystemCGI.html#M000048">system (Locale::SystemCGI)</a><br />
138
+ <a href="classes/Locale/SystemBase.html#M000046">system (Locale::SystemBase)</a><br />
139
+ <a href="classes/Locale.html#M000042">system_module (Locale)</a><br />
140
+ <a href="classes/GetText.html#M000085">textdomain (GetText)</a><br />
141
+ <a href="classes/GetText/TextDomainManager.html#M000122">textdomain (GetText::TextDomainManager)</a><br />
142
+ <a href="classes/GetText.html#M000086">textdomain_to (GetText)</a><br />
143
+ <a href="classes/Locale/Object.html#M000066">to_a (Locale::Object)</a><br />
144
+ <a href="classes/Locale/Object.html#M000065">to_general (Locale::Object)</a><br />
145
+ <a href="classes/Locale/Object.html#M000063">to_iso3066 (Locale::Object)</a><br />
146
+ <a href="classes/Locale/Object.html#M000062">to_posix (Locale::Object)</a><br />
147
+ <a href="classes/Locale/Object.html#M000067">to_s (Locale::Object)</a><br />
148
+ <a href="classes/Locale/Object.html#M000068">to_str (Locale::Object)</a><br />
149
+ <a href="classes/Locale/Object.html#M000064">to_win (Locale::Object)</a><br />
150
+ <a href="classes/ActiveRecord/Base.html#M000021">untranslate (ActiveRecord::Base)</a><br />
151
+ <a href="classes/ActiveRecord/Base.html#M000022">untranslate? (ActiveRecord::Base)</a><br />
152
+ <a href="classes/ActiveRecord/Base.html#M000019">untranslate_all (ActiveRecord::Base)</a><br />
153
+ <a href="classes/ActiveRecord/Base.html#M000020">untranslate_all? (ActiveRecord::Base)</a><br />
154
+ <a href="classes/GetText/ActiveRecordParser.html#M000114">untranslate_column? (GetText::ActiveRecordParser)</a><br />
155
+ <a href="classes/MOFile.html#M000007">update! (MOFile)</a><br />
156
+ <a href="classes/GetText.html#M000073">update_pofiles (GetText)</a><br />
157
+ <a href="classes/Locale/Object.html#M000057">variant= (Locale::Object)</a><br />
154
158
  </div>
155
159
  </div>
156
160
  </body>
data/lib/gettext.rb CHANGED
@@ -10,7 +10,7 @@
10
10
  You may redistribute it and/or modify it under the same
11
11
  license terms as Ruby.
12
12
 
13
- $Id: gettext.rb,v 1.40 2008/05/05 17:38:38 mutoh Exp $
13
+ $Id: gettext.rb,v 1.43 2008/07/26 18:16:28 mutoh Exp $
14
14
  =end
15
15
 
16
16
  require 'rbconfig'
@@ -173,13 +173,14 @@ module GetText
173
173
  @@__cache_target_classes = {}
174
174
 
175
175
  def find_targets(klass) #:nodoc:
176
+ unless (klass.kind_of? Class or klass.kind_of? Module)
177
+ klass = klass.class
178
+ end
176
179
  id = klass.object_id
177
180
  if cached?
178
181
  return @@__cache_target_classes[id] if @@__cache_target_classes[id]
179
182
  end
180
- unless (klass.kind_of? Class or klass.kind_of? Module)
181
- klass = klass.class
182
- end
183
+
183
184
  ret = []
184
185
  ary = klass.name.split(/::/)
185
186
  while(v = ary.shift)
@@ -201,13 +202,13 @@ module GetText
201
202
  @@__cache_bound_target = {}
202
203
 
203
204
  def bound_target(klass = self) # :nodoc:
204
- id = klass.object_id
205
+ ret = (klass.kind_of? Module) ? klass : klass.class
206
+ id = ret.object_id
205
207
  if cached?
206
208
  tgt = @@__cache_bound_target[id]
207
209
  return tgt if tgt
208
210
  end
209
211
 
210
- ret = (klass.kind_of? Module) ? klass : klass.class
211
212
  if ret.name =~ /^\#<|^$/ or ret == GetText
212
213
  #GC for dead object_ids.
213
214
  ret = Object
@@ -303,6 +304,23 @@ module GetText
303
304
  @@__cache_msgids[cached_key] = msg
304
305
  end
305
306
 
307
+ # call-seq:
308
+ # pgettext(msgctxt, msgid)
309
+ # p_(msgctxt, msgid)
310
+ #
311
+ # Translates msgid with msgctxt. This methods is similer with s_().
312
+ # e.g.) p_("File", "New") == s_("File|New")
313
+ # p_("File", "Open") == s_("File|Open")
314
+ #
315
+ # * msgctxt: the message context.
316
+ # * msgid: the message id.
317
+ # * Returns: the localized text by msgid. If there are no localized text,
318
+ # it returns msgid.
319
+ # See: http://www.gnu.org/software/autoconf/manual/gettext/Contexts.html
320
+ def pgettext(msgctxt, msgid)
321
+ sgettext(msgctxt + "\004" + msgid, "\004")
322
+ end
323
+
306
324
  @@__cache_nmsgids = {}
307
325
 
308
326
  # call-seq:
@@ -323,6 +341,28 @@ module GetText
323
341
  nsgettext(arg1, arg2, arg3, nil)
324
342
  end
325
343
 
344
+ # call-seq:
345
+ # npgettext(msgctxt, msgid, msgid_plural, n)
346
+ # npgettext(msgctxt, msgids, n) # msgids = [msgid, msgid_plural]
347
+ # np_(msgctxt, msgid, msgid_plural, n)
348
+ # np_(msgctxt, msgids, n) # msgids = [msgid, msgid_plural]
349
+ #
350
+ # The npgettext is similar to the nsgettext function.
351
+ # e.g.) np_("Special", "An apple", "%{num} Apples", num) == ns_("Special|An apple", "%{num} Apples", num)
352
+ # * msgctxt: the message context.
353
+ # * msgid: the singular form.
354
+ # * msgid_plural: the plural form.
355
+ # * n: a number used to determine the plural form.
356
+ # * Returns: the localized text which key is msgid_plural if n is plural(follow plural-rule) or msgid.
357
+ # "plural-rule" is defined in po-file.
358
+ def npgettext(msgctxt, arg1, arg2 = nil)
359
+ if arg1.kind_of?(Array)
360
+ nsgettext(msgctxt + "\004" + arg1[0], arg1[1], arg2, nil)
361
+ else
362
+ nsgettext(msgctxt + "\004" + arg1, arg2, arg3, nil)
363
+ end
364
+ end
365
+
326
366
  # This function does nothing. But it is required in order to recognize the msgid by rgettext.
327
367
  # * msgid: the message id.
328
368
  # * Returns: msgid.
@@ -549,10 +589,12 @@ module GetText
549
589
  alias :_ :gettext #:nodoc:
550
590
  alias :n_ :ngettext #:nodoc:
551
591
  alias :s_ :sgettext #:nodoc:
592
+ alias :p_ :pgettext #:nodoc:
552
593
  alias :ns_ :nsgettext #:nodoc:
553
594
 
554
595
  module_function :bindtextdomain, :textdomain, :each_textdomain, :cached=, :cached?, :clear_cache,
555
- :N_, :gettext, :_, :ngettext, :n_, :sgettext, :s_, :nsgettext, :ns_, :bound_target, :bound_targets, :find_targets,
596
+ :N_, :gettext, :_, :ngettext, :n_, :sgettext, :s_, :nsgettext, :ns_, :pgettext, :p_,
597
+ :bound_target, :bound_targets, :find_targets,
556
598
  :setlocale, :set_locale, :locale=, :set_locale_all, :locale,
557
599
  :set_output_charset, :output_charset=, :output_charset, :current_textdomain_info, :remove_all_textdomains
558
600
  end