locale 2.0.3 → 2.0.4

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 (69) hide show
  1. data/ChangeLog +6 -0
  2. data/Rakefile +82 -80
  3. data/lib/locale/driver/jruby.rb +4 -10
  4. data/lib/locale/driver/win32.rb +25 -6
  5. data/lib/locale/tag/irregular.rb +1 -1
  6. data/lib/locale/version.rb +1 -1
  7. data/test/test_driver_jruby.rb +43 -0
  8. data/test/test_driver_win32.rb +65 -0
  9. data/test/test_tag.rb +181 -120
  10. metadata +4 -76
  11. data/benchmark/benchmark.rb +0 -34
  12. data/benchmark/benchmark_2.0.1.txt +0 -7
  13. data/doc/classes/Locale.html +0 -1244
  14. data/doc/classes/Locale/Driver.html +0 -374
  15. data/doc/classes/Locale/Driver/CGI.html +0 -536
  16. data/doc/classes/Locale/Driver/Env.html +0 -439
  17. data/doc/classes/Locale/Driver/JRuby.html +0 -389
  18. data/doc/classes/Locale/Driver/Posix.html +0 -430
  19. data/doc/classes/Locale/Driver/Win32.html +0 -398
  20. data/doc/classes/Locale/Driver/Win32Table.html +0 -355
  21. data/doc/classes/Locale/Info.html +0 -585
  22. data/doc/classes/Locale/Info/Language.html +0 -763
  23. data/doc/classes/Locale/Info/Region.html +0 -470
  24. data/doc/classes/Locale/Tag.html +0 -433
  25. data/doc/classes/Locale/Tag/Cldr.html +0 -523
  26. data/doc/classes/Locale/Tag/Common.html +0 -624
  27. data/doc/classes/Locale/Tag/Irregular.html +0 -423
  28. data/doc/classes/Locale/Tag/Posix.html +0 -612
  29. data/doc/classes/Locale/Tag/Rfc.html +0 -581
  30. data/doc/classes/Locale/Tag/Simple.html +0 -721
  31. data/doc/classes/Locale/TagList.html +0 -826
  32. data/doc/classes/Locale/Util.html +0 -506
  33. data/doc/classes/Locale/Util/Memoizable.html +0 -355
  34. data/doc/created.rid +0 -1
  35. data/doc/files/ChangeLog.html +0 -537
  36. data/doc/files/README_rdoc.html +0 -565
  37. data/doc/files/lib/locale/driver/cgi_rb.html +0 -341
  38. data/doc/files/lib/locale/driver/env_rb.html +0 -353
  39. data/doc/files/lib/locale/driver/jruby_rb.html +0 -353
  40. data/doc/files/lib/locale/driver/posix_rb.html +0 -341
  41. data/doc/files/lib/locale/driver/win32_rb.html +0 -348
  42. data/doc/files/lib/locale/driver/win32_table_rb.html +0 -341
  43. data/doc/files/lib/locale/info/language_rb.html +0 -352
  44. data/doc/files/lib/locale/info/region_rb.html +0 -352
  45. data/doc/files/lib/locale/info_rb.html +0 -353
  46. data/doc/files/lib/locale/tag/cldr_rb.html +0 -348
  47. data/doc/files/lib/locale/tag/common_rb.html +0 -348
  48. data/doc/files/lib/locale/tag/irregular_rb.html +0 -348
  49. data/doc/files/lib/locale/tag/posix_rb.html +0 -341
  50. data/doc/files/lib/locale/tag/rfc_rb.html +0 -348
  51. data/doc/files/lib/locale/tag/simple_rb.html +0 -348
  52. data/doc/files/lib/locale/tag_rb.html +0 -378
  53. data/doc/files/lib/locale/taglist_rb.html +0 -348
  54. data/doc/files/lib/locale/util/memoizable_rb.html +0 -359
  55. data/doc/files/lib/locale/version_rb.html +0 -341
  56. data/doc/files/lib/locale_rb.html +0 -363
  57. data/doc/fr_class_index.html +0 -22
  58. data/doc/fr_file_index.html +0 -23
  59. data/doc/fr_method_index.html +0 -99
  60. data/doc/index.html +0 -1
  61. data/doc/rdoc-style.css +0 -320
  62. data/lib/locale/util/memoizable.rb.20090328 +0 -96
  63. data/lib/locale/util/memoizable.rb.old +0 -91
  64. data/replace.rb +0 -21
  65. data/test.rb +0 -28
  66. data/test/test.rb +0 -7
  67. data/test/tmp.txt +0 -20
  68. data/test2.rb +0 -14
  69. data/test3.rb +0 -12
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: locale
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.3
4
+ version: 2.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masao Mutoh
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-05-09 00:00:00 +09:00
12
+ date: 2009-05-23 00:00:00 +09:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -22,72 +22,7 @@ extensions: []
22
22
  extra_rdoc_files: []
23
23
 
24
24
  files:
25
- - test.rb
26
- - replace.rb
27
25
  - ChangeLog
28
- - doc
29
- - doc/index.html
30
- - doc/fr_method_index.html
31
- - doc/created.rid
32
- - doc/fr_class_index.html
33
- - doc/classes
34
- - doc/classes/Locale
35
- - doc/classes/Locale/Util.html
36
- - doc/classes/Locale/Tag
37
- - doc/classes/Locale/Tag/Irregular.html
38
- - doc/classes/Locale/Tag/Simple.html
39
- - doc/classes/Locale/Tag/Rfc.html
40
- - doc/classes/Locale/Tag/Cldr.html
41
- - doc/classes/Locale/Tag/Posix.html
42
- - doc/classes/Locale/Tag/Common.html
43
- - doc/classes/Locale/Info.html
44
- - doc/classes/Locale/Tag.html
45
- - doc/classes/Locale/Info
46
- - doc/classes/Locale/Info/Region.html
47
- - doc/classes/Locale/Info/Language.html
48
- - doc/classes/Locale/TagList.html
49
- - doc/classes/Locale/Util
50
- - doc/classes/Locale/Util/Memoizable.html
51
- - doc/classes/Locale/Driver.html
52
- - doc/classes/Locale/Driver
53
- - doc/classes/Locale/Driver/Win32.html
54
- - doc/classes/Locale/Driver/Win32Table.html
55
- - doc/classes/Locale/Driver/Env.html
56
- - doc/classes/Locale/Driver/Posix.html
57
- - doc/classes/Locale/Driver/CGI.html
58
- - doc/classes/Locale/Driver/JRuby.html
59
- - doc/classes/Locale.html
60
- - doc/files
61
- - doc/files/ChangeLog.html
62
- - doc/files/lib
63
- - doc/files/lib/locale_rb.html
64
- - doc/files/lib/locale
65
- - doc/files/lib/locale/driver
66
- - doc/files/lib/locale/driver/win32_rb.html
67
- - doc/files/lib/locale/driver/win32_table_rb.html
68
- - doc/files/lib/locale/driver/posix_rb.html
69
- - doc/files/lib/locale/driver/cgi_rb.html
70
- - doc/files/lib/locale/driver/jruby_rb.html
71
- - doc/files/lib/locale/driver/env_rb.html
72
- - doc/files/lib/locale/version_rb.html
73
- - doc/files/lib/locale/tag_rb.html
74
- - doc/files/lib/locale/tag
75
- - doc/files/lib/locale/tag/simple_rb.html
76
- - doc/files/lib/locale/tag/rfc_rb.html
77
- - doc/files/lib/locale/tag/posix_rb.html
78
- - doc/files/lib/locale/tag/irregular_rb.html
79
- - doc/files/lib/locale/tag/cldr_rb.html
80
- - doc/files/lib/locale/tag/common_rb.html
81
- - doc/files/lib/locale/info
82
- - doc/files/lib/locale/info/language_rb.html
83
- - doc/files/lib/locale/info/region_rb.html
84
- - doc/files/lib/locale/taglist_rb.html
85
- - doc/files/lib/locale/info_rb.html
86
- - doc/files/lib/locale/util
87
- - doc/files/lib/locale/util/memoizable_rb.html
88
- - doc/files/README_rdoc.html
89
- - doc/rdoc-style.css
90
- - doc/fr_file_index.html
91
26
  - samples
92
27
  - samples/sample_info.rb
93
28
  - samples/rack
@@ -102,9 +37,6 @@ files:
102
37
  - samples/cgi/http.rb
103
38
  - samples/cgi/README
104
39
  - setup.rb
105
- - benchmark
106
- - benchmark/benchmark_2.0.1.txt
107
- - benchmark/benchmark.rb
108
40
  - COPYING
109
41
  - lib
110
42
  - lib/locale
@@ -130,26 +62,22 @@ files:
130
62
  - lib/locale/info/region.rb
131
63
  - lib/locale/taglist.rb
132
64
  - lib/locale/util
133
- - lib/locale/util/memoizable.rb.20090328
134
- - lib/locale/util/memoizable.rb.old
135
65
  - lib/locale/util/memoizable.rb
136
66
  - lib/locale/data
137
67
  - lib/locale/data/regions.tab.gz
138
68
  - lib/locale/data/languages.tab.gz
139
69
  - lib/locale.rb
140
70
  - README.rdoc
141
- - test3.rb
142
71
  - test
143
- - test/test.rb
144
72
  - test/test_detect_general.rb
73
+ - test/test_driver_win32.rb
74
+ - test/test_driver_jruby.rb
145
75
  - test/test_info.rb
146
76
  - test/test_memoizable.rb
147
- - test/tmp.txt
148
77
  - test/test_thread.rb
149
78
  - test/test_taglist.rb
150
79
  - test/test_tag.rb
151
80
  - test/test_detect_cgi.rb
152
- - test2.rb
153
81
  - Rakefile
154
82
  has_rdoc: true
155
83
  homepage: http://locale.rubyforge.org/
@@ -1,34 +0,0 @@
1
- #$LOAD_PATH.unshift "../lib"
2
-
3
- require 'benchmark'
4
- require 'locale'
5
- def memory
6
- GC.start
7
- pid = Process.pid
8
- map = `pmap -d #{pid}`
9
- map.split("\n").last.strip.squeeze(' ').split(' ')[3].to_i
10
- end
11
-
12
- size = memory
13
-
14
- Benchmark.bm(18){|x|
15
- x.report("Locale.default="){ 50000.times{|i|
16
- Locale.default = "ja-JP"
17
- } }
18
- x.report("Locale.default=(parse)"){ 50000.times{|i|
19
- Locale.default = Locale::Tag::Posix.parse("ja-JP.eucJP")
20
- } }
21
- x.report("Locale.default=(new)"){ 50000.times{|i|
22
- Locale.default = Locale::Tag::Posix.new("ja", "JP", "eucJP")
23
- } }
24
- Locale.default = nil
25
- x.report("Locale.candidates"){ 50000.times{|i|
26
- Locale.candidates
27
- } }
28
- Locale.default = nil
29
- x.report("Locale.current"){ 50000.times{|i|
30
- Locale.current
31
- } }
32
- }
33
-
34
- p "memory: #{memory - size}"
@@ -1,7 +0,0 @@
1
- user system total real
2
- Locale.default= 0.960000 0.010000 0.970000 ( 0.975299)
3
- Locale.default=(parse) 0.620000 0.000000 0.620000 ( 0.632838)
4
- Locale.default=(new) 0.840000 0.000000 0.840000 ( 0.839074)
5
- Locale.candidates 0.650000 0.000000 0.650000 ( 0.659982)
6
- Locale.current 0.120000 0.000000 0.120000 ( 0.112794)
7
- "memory: 5856"
@@ -1,1244 +0,0 @@
1
- <html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"/><title>Module: Locale</title><link type="text/css" href=".././rdoc-style.css" media="screen" rel="stylesheet"/><script type="text/javascript">
2
- // Allison template
3
- // Copyright 2007, 2008 Cloudburst, LLC. Licensed under the AFL 3. See the included LICENSE file.
4
-
5
- var href_base = '.././rdoc-style.css'.replace(/(.*\/).*/, '$1'); // inline js is good for something
6
-
7
- function $(id) {
8
- if (document.getElementById)
9
- elem = document.getElementById(id);
10
- else if ( document.all )
11
- elem = eval("document.all." + id);
12
- else
13
- return false;
14
- return elem;
15
- }
16
-
17
- function toggle(id) {
18
- elem = $(id);
19
- elemStyle = elem.style;
20
- if (elemStyle.display == "block") {
21
- elemStyle.display = "none"
22
- } else {
23
- elemStyle.display = "block"
24
- }
25
- return true;
26
- }
27
-
28
- function toggleText(id) {
29
- elem = $(id)
30
- if (m = elem.innerHTML.match(/(Hide)(.*)/)) {
31
- elem.innerHTML = "Show" + m[2];
32
- } else if (m = elem.innerHTML.match(/(Show)(.*)/)) {
33
- elem.innerHTML = "Hide" + m[2];
34
- }
35
- return true;
36
- }
37
-
38
- function span(s, klass) {
39
- return '<span class="' + klass + '">' + s + '</span>';
40
- }
41
-
42
- function highlightSymbols() {
43
- pres = document.getElementsByTagName('pre');
44
- for(var i = 0; i < pres.length; i++) {
45
- pre = pres[i];
46
- spans = pre.getElementsByTagName('span');
47
- for(var k = 0; k < spans.length; k++) {
48
- span = spans[k];
49
- if (span.className.match(/ruby-identifier/)) {
50
- if (span.innerHTML.match(/^:/)) {
51
- span.className += " ruby-symbol";
52
- }
53
- }
54
- }
55
- }
56
- }
57
-
58
- function hasClass(obj) {
59
- var result = false;
60
- if (obj.getAttributeNode("class") != null) {
61
- result = obj.getAttributeNode("class").value;
62
- }
63
- return result;
64
- }
65
-
66
- function stripe() {
67
- var even = true;
68
- var color = "#e4ebed";
69
- var tables = document.getElementsByTagName('table');
70
- if (tables.length == 0) { return; }
71
- for (var h = 0; h < tables.length; h++) {
72
- var trs = tables[h].getElementsByTagName("tr");
73
- for (var i = 0; i < trs.length; i++) {
74
- var tds = trs[i].getElementsByTagName("td");
75
- for (var j = 0; j < tds.length; j++) {
76
- if (hasClass(tds[j]) != "first") {
77
- var mytd = tds[j];
78
- if (even) {
79
- mytd.style.backgroundColor = color;
80
- }
81
- }
82
- }
83
- even = ! even;
84
- }
85
- }
86
- }
87
-
88
- function ajaxGet(url) {
89
- url = (href_base + url).replace('/./', '/')
90
- var req = false;
91
-
92
- if (window.ActiveXObject) {
93
- try {
94
- // stupid hack because IE7 disables local Ajax with the native xmlhttprequest object
95
- // for security purposes. Yet ActiveX still works. Thanks, Microsoft. I hate you. Die.
96
- req = new ActiveXObject("MSXML2.XMLHTTP.3.0");
97
- } catch (e) {
98
- try {
99
- /* IE 6 and maybe 5, don't know, don't care */
100
- req = new ActiveXObject("Msxml2.XMLHTTP");
101
- } catch (e) {
102
- try {
103
- req = new ActiveXObject("Microsoft.XMLHTTP");
104
- } catch (e) {
105
- req = false;
106
- }
107
- }
108
- }
109
- }
110
-
111
- /* real browsers */
112
- if (!req && window.XMLHttpRequest) {
113
- try {
114
- req = new XMLHttpRequest();
115
- } catch (e) {
116
- req = false;
117
- }
118
- }
119
-
120
- if (req) {
121
- req.open('GET', url, false);
122
- req.send(null);
123
- return req.responseText;
124
- } else {
125
- return "Ajax error";
126
- }
127
- }
128
-
129
-
130
- function addEvent(elm, evType, fn, useCapture) {
131
- if (elm.addEventListener) {
132
- elm.addEventListener(evType, fn, useCapture);
133
- return true;
134
- } else if (elm.attachEvent) {
135
- var r = elm.attachEvent('on' + evType, fn);
136
- return r;
137
- } else {
138
- elm['on' + evType] = fn;
139
- }
140
- }
141
-
142
- function insertIndices() {
143
- pages = ["class", "file", "method"]
144
- for (x in pages) {
145
- $(pages[x]).innerHTML += ajaxGet('fr_' + pages[x] + '_index.html').replace(/(href=")/g, '$1' + href_base);
146
- }
147
- /* mouseoverify method links */
148
- links = $('method').getElementsByTagName('a');
149
- for (var x = 0; x < links.length; x++) {
150
- if (m = links[x].innerHTML.match(/(.*)\s\((.*)\)/)) {
151
- links[x].innerHTML = m[1] + '<br>';
152
- links[x].title = m[2];
153
- }
154
- }
155
- /* this is stupid */
156
- $('class').style.display = "block";
157
- $('file').style.display = "block";
158
-
159
- /* has to be here because IE7 does not guarantee the onLoad callback order */
160
- abbreviateIndicesInner(["class", "file"], 25, "a");
161
- /* same, linkTitle() depends on the class link list */
162
- linkTitle();
163
- }
164
-
165
- function abbreviateIndices() {
166
- var ids = ["defined_in", "child_of", "includes", "requires", "method", "methods"];
167
- abbreviateIndicesInner(ids, 25, 'a');
168
- abbreviateIndicesInner(ids, 25, 'span');
169
- }
170
-
171
- function abbreviateIndicesInner(indices, amount, tag) {
172
- for (var x = 0; x < indices.length; x++) {
173
- var the_index = $(indices[x]);
174
- if (the_index) {
175
- links = the_index.getElementsByTagName(tag);
176
- for (var y = 0; y < links.length; y++) {
177
- var link = links[y];
178
- if (link.getElementsByTagName('span').length == 0 && link.getElementsByTagName('a').length == 0) {
179
- // avoid nesting
180
- link.innerHTML = link.innerHTML.replace(/<br>|\n/gi, '');
181
- link.title = link.innerHTML;
182
- link.innerHTML = abbreviate(link.innerHTML, amount) + '<br>';
183
- }
184
- }
185
- }
186
- }
187
- }
188
-
189
- function linkTitle() {
190
-
191
- /* grab the correct title element from the index */
192
- var index_page = ajaxGet('index.html');
193
- title_text = index_page.match(/<title>(.*)<\/title>/m)[1];
194
- document.title = title_text + " - " + document.title;
195
- var p = $('header').getElementsByTagName('p')[0]
196
- if (p.innerHTML.match(/^\s*$/)) {
197
- p.innerHTML = title_text;
198
- } else {
199
- p.innerHTML = title_text + ": " + p.innerHTML;
200
- }
201
-
202
- /* set the link properly */
203
- title_link = index_page.match(/<a\s+href="(.*?)"/)[1];
204
- var element = $('title');
205
- var item_type = "";
206
- var item_name = "";
207
- if (m = element.innerHTML.match(/(Class:|Module:|File:)\s*(.*)/)) {
208
- item_type = m[1];
209
- item_name = m[2];
210
- } else {
211
- item_name = element.innerHTML;
212
- }
213
- element.innerHTML = '<a href="' + href_base + title_link + '">' + item_type + " " + abbreviate(item_name, 45) + '</a>';
214
- element.getElementsByTagName('a')[0].title = item_name
215
-
216
- /* breadcrumb navigation */
217
- items = item_name.split("::");
218
- items_new = item_name.split("::");
219
- file_links = $('class').getElementsByTagName('a');
220
- for (var x = 0; x < items.length - 1; x++ ){
221
- var item = items[x];
222
- link = ("/classes/" + items.slice(0,x).join("/") + "/" + item + ".html").replace('//', '/');
223
- regex = new RegExp(RegExp.escape(link) + '$');
224
- for (var y = 0; y < file_links.length; y++) {
225
- if (file_links[y].href.match(regex)) {
226
- items_new[x] = '<a href="' + href_base + link + '">' + item + '</a>';
227
- break;
228
- }
229
- }
230
- }
231
- $('item_name').innerHTML = item_type + ' ' + items_new.join(" :: ");
232
- }
233
-
234
- function abbreviate(s, size) {
235
- while (s.length > size) {
236
- var old_s = s;
237
- s = s.replace(/\s|\n/mg, '');
238
- s = s.replace(/([A-Z])[a-z]+/m, '$1');
239
- if (!s || old_s == s) {
240
- return "..." + s.substring(s.length - size, s.length);
241
- }
242
- }
243
- return s;
244
- }
245
-
246
- function disableSubmit(event) {
247
- var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
248
- if (keyCode == 13) {
249
- return false;
250
- } else {
251
- return true;
252
- }
253
- }
254
-
255
- function filterList(id, s, event) {
256
-
257
- /* some weak escaping */
258
- s = s.replace(/[^\w\d\.\_\-\/\:\=\[\]\?\!]/g, '');
259
- s = RegExp.escape(s);
260
-
261
- var show_all = false;
262
- if (s.match(/^\s*$/)) {
263
- show_all = true;
264
- }
265
-
266
- links = $(id).getElementsByTagName('a')
267
- regex = new RegExp(s, 'i');
268
-
269
- for (var x = 0; x < links.length; x++) {
270
- var link = links[x];
271
- if (show_all) {
272
- link.style.display = 'inline';
273
- } else {
274
- if (link.innerHTML.match(regex)) {
275
- link.style.display = 'inline';
276
- } else {
277
- link.style.display = 'none';
278
- }
279
- }
280
- }
281
- return true;
282
- }
283
-
284
- RegExp.escape = function(text) {
285
- if (!arguments.callee.sRE) {
286
- var specials = ['/', '.', '*', '+', '?', '|', '(', ')', '[', ']', '{', '}', '\\'];
287
- arguments.callee.sRE = new RegExp(
288
- '(\\' + specials.join('|\\') + ')', 'g'
289
- );
290
- }
291
- return text.replace(arguments.callee.sRE, '\\$1');
292
- }
293
-
294
- function hacks() {
295
- // show the spacer if necessary,
296
- divs = document.getElementsByTagName('div');
297
- for(var x = 0; x < divs.length; x++) {
298
- if (divs[x].className && divs[x].className.match(/top/)) {
299
- document.getElementById('spacer').style.display = 'block';
300
- }
301
- }
302
- // remove extra colons from tables
303
- tds = document.getElementsByTagName('td');
304
- for(var x = 0; x < tds.length; x++) {
305
- str = tds[x].innerHTML
306
- if (str.charAt(str.length - 1) == ":") {
307
- tds[x].innerHTML = str.slice(0, str.length - 1)
308
- }
309
- }
310
- }
311
-
312
- addEvent(window, 'load', insertIndices, false);
313
- addEvent(window, 'load', abbreviateIndices, false);
314
- addEvent(window, 'load', stripe, false);
315
- addEvent(window, 'load', highlightSymbols, false);
316
- addEvent(window, 'load', hacks, false);
317
- </script></head><body><div id="container"><div class="curve" id="preheader_curve_0"></div><div class="curve" id="preheader_curve_1"></div><div class="curve" id="preheader_curve_2"></div><div class="curve" id="preheader_curve_3"></div><div class="curve" id="preheader_curve_4"></div><div class="curve" id="preheader_curve_5"></div><div id="header"><p>
318
- </p><span><h1 id="title">
319
- Module: Locale
320
- </h1></span></div><div class="clear"></div><div id="left">
321
-
322
- <div class="navigation darker top" id="defined_in"><h3>Defined in</h3>
323
-
324
- <a href="../files/lib/locale/driver/env_rb.html">lib/locale/driver/env.rb</a>
325
-
326
-
327
- <a href="../files/lib/locale/driver/jruby_rb.html">lib/locale/driver/jruby.rb</a>
328
-
329
-
330
- <a href="../files/lib/locale/driver/posix_rb.html">lib/locale/driver/posix.rb</a>
331
-
332
-
333
- <a href="../files/lib/locale/driver/win32_table_rb.html">lib/locale/driver/win32_table.rb</a>
334
-
335
-
336
- <a href="../files/lib/locale/driver/win32_rb.html">lib/locale/driver/win32.rb</a>
337
-
338
-
339
- <a href="../files/lib/locale/driver/cgi_rb.html">lib/locale/driver/cgi.rb</a>
340
-
341
-
342
- <a href="../files/lib/locale/version_rb.html">lib/locale/version.rb</a>
343
-
344
-
345
- <a href="../files/lib/locale/tag_rb.html">lib/locale/tag.rb</a>
346
-
347
-
348
- <a href="../files/lib/locale/tag/cldr_rb.html">lib/locale/tag/cldr.rb</a>
349
-
350
-
351
- <a href="../files/lib/locale/tag/common_rb.html">lib/locale/tag/common.rb</a>
352
-
353
-
354
- <a href="../files/lib/locale/tag/rfc_rb.html">lib/locale/tag/rfc.rb</a>
355
-
356
-
357
- <a href="../files/lib/locale/tag/irregular_rb.html">lib/locale/tag/irregular.rb</a>
358
-
359
-
360
- <a href="../files/lib/locale/tag/posix_rb.html">lib/locale/tag/posix.rb</a>
361
-
362
-
363
- <a href="../files/lib/locale/tag/simple_rb.html">lib/locale/tag/simple.rb</a>
364
-
365
-
366
- <a href="../files/lib/locale/info/language_rb.html">lib/locale/info/language.rb</a>
367
-
368
-
369
- <a href="../files/lib/locale/info/region_rb.html">lib/locale/info/region.rb</a>
370
-
371
-
372
- <a href="../files/lib/locale/taglist_rb.html">lib/locale/taglist.rb</a>
373
-
374
-
375
- <a href="../files/lib/locale/util/memoizable_rb.html">lib/locale/util/memoizable.rb</a>
376
-
377
-
378
- <a href="../files/lib/locale_rb.html">lib/locale.rb</a>
379
-
380
- </div>
381
-
382
- <div class="navigation top" id="includes"><h3>Includes</h3>
383
-
384
-
385
- <a href='Locale/Util/Memoizable.html'>
386
- Locale::Util::Memoizable<br/>
387
- </a>
388
-
389
-
390
- </div>
391
-
392
-
393
- <div class="navigation top" id="methods"><h3>Methods</h3>
394
-
395
-
396
- <a href='#M000017'>
397
- app_language_tags<br/>
398
- </a>
399
-
400
-
401
-
402
-
403
- <a href='#M000012'>
404
- candidates<br/>
405
- </a>
406
-
407
-
408
-
409
-
410
- <a href='#M000003'>
411
- cgi=<br/>
412
- </a>
413
-
414
-
415
-
416
-
417
- <a href='#M000013'>
418
- charset<br/>
419
- </a>
420
-
421
-
422
-
423
-
424
- <a href='#M000014'>
425
- clear<br/>
426
- </a>
427
-
428
-
429
-
430
-
431
- <a href='#M000015'>
432
- clear_all<br/>
433
- </a>
434
-
435
-
436
-
437
-
438
- <a href='#M000011'>
439
- current<br/>
440
- </a>
441
-
442
-
443
-
444
-
445
- <a href='#M000010'>
446
- current=<br/>
447
- </a>
448
-
449
-
450
-
451
-
452
- <a href='#M000008'>
453
- default<br/>
454
- </a>
455
-
456
-
457
-
458
-
459
- <a href='#M000007'>
460
- default=<br/>
461
- </a>
462
-
463
-
464
-
465
-
466
- <a href='#M000005'>
467
- driver_module<br/>
468
- </a>
469
-
470
-
471
-
472
-
473
- <a href='#M000004'>
474
- init<br/>
475
- </a>
476
-
477
-
478
-
479
-
480
- <a href='#M000016'>
481
- set_app_language_tags<br/>
482
- </a>
483
-
484
-
485
-
486
-
487
- <a href='#M000002'>
488
- set_cgi<br/>
489
- </a>
490
-
491
-
492
-
493
-
494
- <a href='#M000009'>
495
- set_current<br/>
496
- </a>
497
-
498
-
499
-
500
-
501
- <a href='#M000006'>
502
- set_default<br/>
503
- </a>
504
-
505
-
506
-
507
-
508
- <a href='#M000001'>
509
- set_request<br/>
510
- </a>
511
-
512
-
513
- </div>
514
- <div id="spacer"></div><div class="navigation darker index" id="class_wrapper"><div class="list_header"><h3>All classes</h3></div><div class="list_header_link"><a href="#" onclick="toggle('class'); toggleText('class_link'); return false;" id="class_link">Hide...</a></div><div class="clear"></div><div id="class"><form><label for="filter_class">Filter:&nbsp;&nbsp;</label><input type="text" onKeyUp="return filterList('class', this.value, event);" onKeyPress="return disableSubmit(event);" id="filter_class"></input></form></div></div><div class="navigation darker index" id="file_wrapper"><div class="list_header"><h3>All files</h3></div><div class="list_header_link"><a href="#" onclick="toggle('file'); toggleText('file_link'); return false;" id="file_link">Hide...</a></div><div class="clear"></div><div id="file"><form><label for="filter_file">Filter:&nbsp;&nbsp;</label><input type="text" onKeyUp="return filterList('file', this.value, event);" onKeyPress="return disableSubmit(event);" id="filter_file"></input></form></div></div><div class="navigation darker index" id="method_wrapper"><div class="list_header"><h3>All methods</h3></div><div class="list_header_link"><a href="#" onclick="toggle('method'); toggleText('method_link'); return false;" id="method_link">Show...</a></div><div class="clear"></div><div id="method"><form><label for="filter_method">Filter:&nbsp;&nbsp;</label><input type="text" onKeyUp="return filterList('method', this.value, event);" onKeyPress="return disableSubmit(event);" id="filter_method"></input></form></div></div></div><div id="content">
515
- <h1 id="item_name">Module: Locale</h1>
516
-
517
- <div id="description"><p>
518
- <a href="Locale.html">Locale</a> module manages the locale informations of
519
- the application. These functions are the most important APIs in this
520
- library. Almost of all i18n/l10n programs use this APIs only.
521
- </p>
522
- </div>
523
-
524
-
525
-
526
-
527
- <p></p>
528
-
529
- <h1>Child modules and classes</h1><p>Module <a href="Locale/Driver.html" class="link">Locale::Driver</a><br />
530
- Module <a href="Locale/Info.html" class="link">Locale::Info</a><br />
531
- Module <a href="Locale/Tag.html" class="link">Locale::Tag</a><br />
532
- Module <a href="Locale/Util.html" class="link">Locale::Util</a><br />
533
- Class <a href="Locale/TagList.html" class="link">Locale::TagList</a><br />
534
- </p>
535
-
536
- <h1>Constants</h1><p><table><tr><th>Name</th><th>Value</th></tr>
537
- <tr>
538
- <td class="highlight">VERSION</td>
539
-
540
- <td class="normal">&quot;2.0.3&quot;</td>
541
-
542
-
543
-
544
- </tr>
545
- <tr>
546
- <td class="highlight">ROOT</td>
547
-
548
- <td class="normal">File.dirname(__FILE__)</td>
549
-
550
-
551
-
552
- </tr>
553
- </table></p>
554
-
555
-
556
-
557
-
558
- <h1>Public Instance Methods</h1>
559
-
560
-
561
- <a class="small" name="M000017"><br/></a>
562
- <div class="method_block"><h3>
563
- <a href='#M000017'>
564
-
565
-
566
- app_language_tags
567
-
568
- ()
569
-
570
- </a>
571
- </h3>
572
- <p>
573
- Returns the <a href="Locale.html#M000017">app_language_tags</a>. Default is
574
- nil. See <a href="Locale.html#M000016">set_app_language_tags</a> for more
575
- details.
576
- </p>
577
-
578
- <p class="source_link" id="M000017-show-link"><a href="#" onclick="toggle('M000017-source'); toggleText('M000017-link'); return false;" id="M000017-link">Show source...</a></p><div class="source" id="M000017-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 325</span>
579
- 325: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">app_language_tags</span>
580
- 326: <span class="ruby-ivar">@@app_language_tags</span>
581
- 327: <span class="ruby-keyword kw">end</span></pre></div>
582
- </div>
583
-
584
- <a class="small" name="M000012"><br/></a>
585
- <div class="method_block"><h3>
586
- <a href='#M000012'>
587
-
588
-
589
- candidates
590
-
591
- (options = {})
592
-
593
- </a>
594
- </h3>
595
- <p>
596
- Returns the language tags which are variations of the <a
597
- href="Locale.html#M000011">current</a> locales order by priority.
598
- </p>
599
- <p>
600
- For example, if the <a href="Locale.html#M000011">current</a> locales are
601
- [&quot;fr&quot;, &quot;ja_JP&quot;, &quot;en_US&quot;,
602
- &quot;en-Latn-GB-VARIANT&quot;], then returns [&quot;fr&quot;,
603
- &quot;ja_JP&quot;, &quot;en_US&quot;, &quot;en-Latn-GB-VARIANT&quot;,
604
- &quot;en_Latn_GB&quot;, &quot;en_GB&quot;, &quot;ja&quot;, &quot;en&quot;].
605
- &quot;en&quot; is the <a href="Locale.html#M000008">default</a> locale(You
606
- can change it using <a href="Locale.html#M000006">set_default</a>). The <a
607
- href="Locale.html#M000008">default</a> locale is added at the end of the
608
- list even if it isn&#8216;t exist.
609
- </p>
610
- <p>
611
- Usually, this method is used to find the locale data as the path(or a kind
612
- of IDs).
613
- </p>
614
- <ul>
615
- <li>options: options as a Hash or nil.
616
-
617
- <ul>
618
- <li>:supported_language_tags - An Array of the language tags order by the
619
- priority. This option restricts the locales which are supported by the
620
- library/application. Default is nil if you don&#8216;t need to restrict the
621
- locales.
622
-
623
- <pre>
624
- (e.g.1) [&quot;fr_FR&quot;, &quot;en_GB&quot;, &quot;en_US&quot;, ...]
625
- </pre>
626
- </li>
627
- <li>:type - The type of language tag. :common, :rfc, :cldr, :posix and :simple
628
- are available. Default value is :common
629
-
630
- </li>
631
- </ul>
632
- </li>
633
- </ul>
634
-
635
- <p class="source_link" id="M000012-show-link"><a href="#" onclick="toggle('M000012-source'); toggleText('M000012-link'); return false;" id="M000012-link">Show source...</a></p><div class="source" id="M000012-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 211</span>
636
- 211: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">candidates</span>(<span class="ruby-identifier">options</span> = {})
637
- 212: <span class="ruby-identifier">opts</span> = {<span class="ruby-identifier">:supported_language_tags</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">:current</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">current</span>,
638
- 213: <span class="ruby-identifier">:type</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">:common</span>}.<span class="ruby-identifier">merge</span>(<span class="ruby-identifier">options</span>)
639
- 214:
640
- 215: <span class="ruby-keyword kw">if</span> <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:candidates_caches</span>]
641
- 216: <span class="ruby-identifier">cache</span> = <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:candidates_caches</span>][<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">hash</span>]
642
- 217: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">cache</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">cache</span>
643
- 218: <span class="ruby-keyword kw">else</span>
644
- 219: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:candidates_caches</span>] = {}
645
- 220: <span class="ruby-keyword kw">end</span>
646
- 221: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:candidates_caches</span>][<span class="ruby-identifier">opts</span>.<span class="ruby-identifier">hash</span>] =
647
- 222: <span class="ruby-identifier">collect_candidates</span>(<span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:type</span>], <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:current</span>],
648
- 223: <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:supported_language_tags</span>])
649
- 224: <span class="ruby-keyword kw">end</span></pre></div>
650
- </div>
651
-
652
- <a class="small" name="M000003"><br/></a>
653
- <div class="method_block"><h3>
654
- <a href='#M000003'>
655
-
656
-
657
- cgi=
658
-
659
- (cgi)
660
-
661
- </a>
662
- </h3>
663
- <p>
664
- Sets a CGI object.This is the convenient function of <a
665
- href="Locale.html#M000001">set_request</a>().
666
- </p>
667
- <p>
668
- This method is appeared when <a
669
- href="Locale.html#M000004">Locale.init</a>(:driver =&gt; :cgi) is called.
670
- </p>
671
- <ul>
672
- <li>cgi: CGI object
673
-
674
- </li>
675
- <li>Returns: cgi
676
-
677
- </li>
678
- </ul>
679
-
680
- <p class="source_link" id="M000003-show-link"><a href="#" onclick="toggle('M000003-source'); toggleText('M000003-link'); return false;" id="M000003-link">Show source...</a></p><div class="source" id="M000003-source"><pre> <span class="ruby-comment cmt"># File lib/locale/driver/cgi.rb, line 132</span>
681
- 132: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cgi=</span>(<span class="ruby-identifier">cgi</span>)
682
- 133: <span class="ruby-identifier">set_cgi</span>(<span class="ruby-identifier">cgi</span>)
683
- 134: <span class="ruby-identifier">cgi</span>
684
- 135: <span class="ruby-keyword kw">end</span></pre></div>
685
- </div>
686
-
687
- <a class="small" name="M000013"><br/></a>
688
- <div class="method_block"><h3>
689
- <a href='#M000013'>
690
-
691
-
692
- charset
693
-
694
- ()
695
-
696
- </a>
697
- </h3>
698
- <p>
699
- Gets the <a href="Locale.html#M000011">current</a> <a
700
- href="Locale.html#M000013">charset</a>.
701
- </p>
702
- <p>
703
- This returns the <a href="Locale.html#M000011">current</a> user/system <a
704
- href="Locale.html#M000013">charset</a>. This value is read only, so you
705
- can&#8216;t set it by yourself.
706
- </p>
707
- <ul>
708
- <li>Returns: the <a href="Locale.html#M000011">current</a> <a
709
- href="Locale.html#M000013">charset</a>.
710
-
711
- </li>
712
- </ul>
713
-
714
- <p class="source_link" id="M000013-show-link"><a href="#" onclick="toggle('M000013-source'); toggleText('M000013-link'); return false;" id="M000013-link">Show source...</a></p><div class="source" id="M000013-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 270</span>
715
- 270: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">charset</span>
716
- 271: <span class="ruby-identifier">driver_module</span>.<span class="ruby-identifier">charset</span> <span class="ruby-operator">||</span> <span class="ruby-value str">&quot;UTF-8&quot;</span>
717
- 272: <span class="ruby-keyword kw">end</span></pre></div>
718
- </div>
719
-
720
- <a class="small" name="M000014"><br/></a>
721
- <div class="method_block"><h3>
722
- <a href='#M000014'>
723
-
724
-
725
- clear
726
-
727
- ()
728
-
729
- </a>
730
- </h3>
731
- <p>
732
- Clear <a href="Locale.html#M000011">current</a> locale.
733
- </p>
734
- <ul>
735
- <li>Returns: self
736
-
737
- </li>
738
- </ul>
739
-
740
- <p class="source_link" id="M000014-show-link"><a href="#" onclick="toggle('M000014-source'); toggleText('M000014-link'); return false;" id="M000014-link">Show source...</a></p><div class="source" id="M000014-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 277</span>
741
- 277: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clear</span>
742
- 278: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:current_languages</span>] = <span class="ruby-keyword kw">nil</span>
743
- 279: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:candidates_caches</span>] = <span class="ruby-keyword kw">nil</span>
744
- 280: <span class="ruby-keyword kw">self</span>
745
- 281: <span class="ruby-keyword kw">end</span></pre></div>
746
- </div>
747
-
748
- <a class="small" name="M000015"><br/></a>
749
- <div class="method_block"><h3>
750
- <a href='#M000015'>
751
-
752
-
753
- clear_all
754
-
755
- ()
756
-
757
- </a>
758
- </h3>
759
- <p>
760
- Clear all locales and charsets of all threads. This doesn&#8216;t <a
761
- href="Locale.html#M000014">clear</a> the <a
762
- href="Locale.html#M000008">default</a> and <a
763
- href="Locale.html#M000017">app_language_tags</a>. Use <a
764
- href="Locale.html#M000008">Locale.default</a> = nil to unset the <a
765
- href="Locale.html#M000008">default</a> locale.
766
- </p>
767
- <ul>
768
- <li>Returns: self
769
-
770
- </li>
771
- </ul>
772
-
773
- <p class="source_link" id="M000015-show-link"><a href="#" onclick="toggle('M000015-source'); toggleText('M000015-link'); return false;" id="M000015-link">Show source...</a></p><div class="source" id="M000015-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 287</span>
774
- 287: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">clear_all</span>
775
- 288: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">list</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">thread</span><span class="ruby-operator">|</span>
776
- 289: <span class="ruby-identifier">thread</span>[<span class="ruby-identifier">:current_languages</span>] = <span class="ruby-keyword kw">nil</span>
777
- 290: <span class="ruby-identifier">thread</span>[<span class="ruby-identifier">:candidates_caches</span>] = <span class="ruby-keyword kw">nil</span>
778
- 291: <span class="ruby-keyword kw">end</span>
779
- 292: <span class="ruby-identifier">memoize_clear</span>
780
- 293: <span class="ruby-keyword kw">self</span>
781
- 294: <span class="ruby-keyword kw">end</span></pre></div>
782
- </div>
783
-
784
- <a class="small" name="M000011"><br/></a>
785
- <div class="method_block"><h3>
786
- <a href='#M000011'>
787
-
788
-
789
- current
790
-
791
- ()
792
-
793
- </a>
794
- </h3>
795
- <p>
796
- Gets the <a href="Locale.html#M000011">current</a> locales (<a
797
- href="Locale/Tag.html">Locale::Tag</a>&#8216;s class). If the <a
798
- href="Locale.html#M000011">current</a> locale is not set, this returns
799
- system/default locale.
800
- </p>
801
- <p>
802
- This method returns the <a href="Locale.html#M000011">current</a> language
803
- tags even if it isn&#8216;t included in <a
804
- href="Locale.html#M000017">app_language_tags</a>.
805
- </p>
806
- <p>
807
- Usually, the programs should use <a
808
- href="Locale.html#M000012">Locale.candidates</a> to find the correct
809
- locale, not this method.
810
- </p>
811
- <ul>
812
- <li>Returns: an Array of the <a href="Locale.html#M000011">current</a> locales
813
- (<a href="Locale/Tag.html">Locale::Tag</a>&#8216;s class).
814
-
815
- </li>
816
- </ul>
817
-
818
- <p class="source_link" id="M000011-show-link"><a href="#" onclick="toggle('M000011-source'); toggleText('M000011-link'); return false;" id="M000011-link">Show source...</a></p><div class="source" id="M000011-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 176</span>
819
- 176: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current</span>
820
- 177: <span class="ruby-keyword kw">unless</span> <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:current_languages</span>]
821
- 178: <span class="ruby-identifier">loc</span> = <span class="ruby-identifier">driver_module</span>.<span class="ruby-identifier">locales</span>
822
- 179: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:current_languages</span>] = <span class="ruby-identifier">loc</span> <span class="ruby-value">? </span><span class="ruby-identifier">loc</span> <span class="ruby-operator">:</span> <span class="ruby-constant">Locale</span><span class="ruby-operator">::</span><span class="ruby-constant">TagList</span>.<span class="ruby-identifier">new</span>([<span class="ruby-identifier">default</span>])
823
- 180: <span class="ruby-keyword kw">end</span>
824
- 181: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:current_languages</span>]
825
- 182: <span class="ruby-keyword kw">end</span></pre></div>
826
- </div>
827
-
828
- <a class="small" name="M000010"><br/></a>
829
- <div class="method_block"><h3>
830
- <a href='#M000010'>
831
-
832
-
833
- current=
834
-
835
- (tag)
836
-
837
- </a>
838
- </h3>
839
- <p>
840
- Sets a <a href="Locale.html#M000011">current</a> locale. This is a single
841
- argument version of <a href="Locale.html#M000009">Locale.set_current</a>.
842
- </p>
843
- <ul>
844
- <li>tag: the language tag such as &quot;ja-JP&quot;
845
-
846
- </li>
847
- <li>Returns: an Array of the <a href="Locale.html#M000011">current</a> locale
848
- (<a href="Locale/Tag.html">Locale::Tag</a>&#8216;s class).
849
-
850
- <pre>
851
- Locale.current = &quot;ja-JP&quot;
852
- Locale.current = &quot;ja_JP.eucJP&quot;
853
- </pre>
854
- </li>
855
- </ul>
856
-
857
- <p class="source_link" id="M000010-show-link"><a href="#" onclick="toggle('M000010-source'); toggleText('M000010-link'); return false;" id="M000010-link">Show source...</a></p><div class="source" id="M000010-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 163</span>
858
- 163: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">current=</span>(<span class="ruby-identifier">tag</span>)
859
- 164: <span class="ruby-identifier">set_current</span>(<span class="ruby-identifier">tag</span>)
860
- 165: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:current_languages</span>]
861
- 166: <span class="ruby-keyword kw">end</span></pre></div>
862
- </div>
863
-
864
- <a class="small" name="M000008"><br/></a>
865
- <div class="method_block"><h3>
866
- <a href='#M000008'>
867
-
868
-
869
- default
870
-
871
- ()
872
-
873
- </a>
874
- </h3>
875
- <p>
876
- Gets the <a href="Locale.html#M000008">default</a> locale(language tag).
877
- </p>
878
- <p>
879
- If the <a href="Locale.html#M000008">default</a> language tag is not set,
880
- this returns nil.
881
- </p>
882
- <ul>
883
- <li>Returns: the <a href="Locale.html#M000008">default</a> locale (<a
884
- href="Locale/Tag.html">Locale::Tag</a>&#8216;s class).
885
-
886
- </li>
887
- </ul>
888
-
889
- <p class="source_link" id="M000008-show-link"><a href="#" onclick="toggle('M000008-source'); toggleText('M000008-link'); return false;" id="M000008-link">Show source...</a></p><div class="source" id="M000008-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 125</span>
890
- 125: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">default</span>
891
- 126: <span class="ruby-ivar">@@default_tag</span> <span class="ruby-operator">||</span> <span class="ruby-constant">DEFAULT_LANGUAGE_TAG</span>
892
- 127: <span class="ruby-keyword kw">end</span></pre></div>
893
- </div>
894
-
895
- <a class="small" name="M000007"><br/></a>
896
- <div class="method_block"><h3>
897
- <a href='#M000007'>
898
-
899
-
900
- default=
901
-
902
- (tag)
903
-
904
- </a>
905
- </h3>
906
- <p>
907
- Same as <a href="Locale.html#M000006">Locale.set_default</a>.
908
- </p>
909
- <ul>
910
- <li>locale: the <a href="Locale.html#M000008">default</a> locale (<a
911
- href="Locale/Tag.html">Locale::Tag</a>&#8216;s class) or a String such as
912
- &quot;ja-JP&quot;.
913
-
914
- </li>
915
- <li>Returns: locale.
916
-
917
- </li>
918
- </ul>
919
-
920
- <p class="source_link" id="M000007-show-link"><a href="#" onclick="toggle('M000007-source'); toggleText('M000007-link'); return false;" id="M000007-link">Show source...</a></p><div class="source" id="M000007-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 115</span>
921
- 115: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">default=</span>(<span class="ruby-identifier">tag</span>)
922
- 116: <span class="ruby-identifier">set_default</span>(<span class="ruby-identifier">tag</span>)
923
- 117: <span class="ruby-ivar">@@default_tag</span>
924
- 118: <span class="ruby-keyword kw">end</span></pre></div>
925
- </div>
926
-
927
- <a class="small" name="M000005"><br/></a>
928
- <div class="method_block"><h3>
929
- <a href='#M000005'>
930
-
931
-
932
- driver_module
933
-
934
- ()
935
-
936
- </a>
937
- </h3>
938
- <p>
939
- Gets the driver module.
940
- </p>
941
- <p>
942
- Usually you don&#8216;t need to call this method.
943
- </p>
944
- <ul>
945
- <li>Returns: the driver module.
946
-
947
- </li>
948
- </ul>
949
-
950
- <p class="source_link" id="M000005-show-link"><a href="#" onclick="toggle('M000005-source'); toggleText('M000005-link'); return false;" id="M000005-link">Show source...</a></p><div class="source" id="M000005-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 88</span>
951
- 88: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">driver_module</span>
952
- 89: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@@locale_driver_module</span>
953
- 90: <span class="ruby-constant">Locale</span>.<span class="ruby-identifier">init</span>
954
- 91: <span class="ruby-keyword kw">end</span>
955
- 92: <span class="ruby-ivar">@@locale_driver_module</span>
956
- 93: <span class="ruby-keyword kw">end</span></pre></div>
957
- </div>
958
-
959
- <a class="small" name="M000004"><br/></a>
960
- <div class="method_block"><h3>
961
- <a href='#M000004'>
962
-
963
-
964
- init
965
-
966
- (opts = {})
967
-
968
- </a>
969
- </h3>
970
- <p>
971
- Initialize <a href="Locale.html">Locale</a> library. Usually, you
972
- don&#8216;t need to call this directly, because this is called when <a
973
- href="Locale.html">Locale</a>&#8216;s methods are called.
974
- </p>
975
- <p>
976
- If you use this library with CGI or the kind of CGI. You need to call <a
977
- href="Locale.html#M000004">Locale.init</a>(:driver =&gt; :cgi).
978
- </p>
979
- <h4>For Framework designers/programers:</h4>
980
- <p>
981
- If your framework is for WWW, call this once like: <a
982
- href="Locale.html#M000004">Locale.init</a>(:driver =&gt; :cgi).
983
- </p>
984
- <h4>To Application programers:</h4>
985
- <p>
986
- If your framework doesn&#8216;t use ruby-locale and the application is for
987
- WWW, call this once like: <a
988
- href="Locale.html#M000004">Locale.init</a>(:driver =&gt; :cgi).
989
- </p>
990
- <h4>To Library authors:</h4>
991
- <p>
992
- Don&#8216;t call this, even if your application is only for WWW.
993
- </p>
994
- <ul>
995
- <li>opts: Options as a Hash.
996
-
997
- <ul>
998
- <li>:driver - The driver. :cgi if you use <a href="Locale.html">Locale</a>
999
- module with CGI, nil if you use system locale.
1000
-
1001
- <pre>
1002
- (ex) Locale.init(:driver =&gt; :cgi)
1003
- </pre>
1004
- </li>
1005
- </ul>
1006
- </li>
1007
- </ul>
1008
-
1009
- <p class="source_link" id="M000004-show-link"><a href="#" onclick="toggle('M000004-source'); toggleText('M000004-link'); return false;" id="M000004-link">Show source...</a></p><div class="source" id="M000004-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 69</span>
1010
- 69: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">init</span>(<span class="ruby-identifier">opts</span> = {})
1011
- 70: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:driver</span>]
1012
- 71: <span class="ruby-identifier">require_driver</span> <span class="ruby-identifier">opts</span>[<span class="ruby-identifier">:driver</span>]
1013
- 72: <span class="ruby-keyword kw">else</span>
1014
- 73: <span class="ruby-keyword kw">if</span> <span class="ruby-regexp re">/cygwin|mingw|win32/</span> <span class="ruby-operator">=~</span> <span class="ruby-constant">RUBY_PLATFORM</span>
1015
- 74: <span class="ruby-identifier">require_driver</span> <span class="ruby-value str">'win32'</span>
1016
- 75: <span class="ruby-keyword kw">elsif</span> <span class="ruby-regexp re">/java/</span> <span class="ruby-operator">=~</span> <span class="ruby-constant">RUBY_PLATFORM</span>
1017
- 76: <span class="ruby-identifier">require_driver</span> <span class="ruby-value str">'jruby'</span>
1018
- 77: <span class="ruby-keyword kw">else</span>
1019
- 78: <span class="ruby-identifier">require_driver</span> <span class="ruby-value str">'posix'</span>
1020
- 79: <span class="ruby-keyword kw">end</span>
1021
- 80: <span class="ruby-keyword kw">end</span>
1022
- 81: <span class="ruby-keyword kw">end</span></pre></div>
1023
- </div>
1024
-
1025
- <a class="small" name="M000016"><br/></a>
1026
- <div class="method_block"><h3>
1027
- <a href='#M000016'>
1028
-
1029
-
1030
- set_app_language_tags
1031
-
1032
- (*tags)
1033
-
1034
- </a>
1035
- </h3>
1036
- <p>
1037
- Set the language tags which is supported by the Application. This value is
1038
- same with supported_language_tags in <a
1039
- href="Locale.html#M000012">Locale.candidates</a> to restrict the result but
1040
- is the global setting. If you set a language tag, the application works as
1041
- the single locale application.
1042
- </p>
1043
- <p>
1044
- If the <a href="Locale.html#M000011">current</a> locale is not included in
1045
- <a href="Locale.html#M000017">app_language_tags</a>, <a
1046
- href="Locale.html#M000008">Locale.default</a> value is used. Use <a
1047
- href="Locale.html#M000006">Locale.set_default</a>() to set correct language
1048
- if &quot;en&quot; is not included in the language tags.
1049
- </p>
1050
- <p>
1051
- Set nil if <a href="Locale.html#M000014">clear</a> the value.
1052
- </p>
1053
- <p>
1054
- Note that the libraries/plugins shouldn&#8216;t set this value.
1055
- </p>
1056
- <pre>
1057
- (e.g.) Locale.set_app_language_tags(&quot;fr_FR&quot;, &quot;en-GB&quot;, &quot;en_US&quot;, ...)
1058
- </pre>
1059
-
1060
- <p class="source_link" id="M000016-show-link"><a href="#" onclick="toggle('M000016-source'); toggleText('M000016-link'); return false;" id="M000016-link">Show source...</a></p><div class="source" id="M000016-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 313</span>
1061
- 313: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_app_language_tags</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">tags</span>)
1062
- 314: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tags</span>[<span class="ruby-value">0</span>]
1063
- 315: <span class="ruby-ivar">@@app_language_tags</span> = <span class="ruby-identifier">tags</span>.<span class="ruby-identifier">collect</span>{<span class="ruby-operator">|</span><span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-constant">Locale</span><span class="ruby-operator">::</span><span class="ruby-constant">Tag</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-identifier">v</span>)}
1064
- 316: <span class="ruby-keyword kw">else</span>
1065
- 317: <span class="ruby-ivar">@@app_language_tags</span> = <span class="ruby-keyword kw">nil</span>
1066
- 318: <span class="ruby-keyword kw">end</span>
1067
- 319:
1068
- 320: <span class="ruby-identifier">clear_all</span>
1069
- 321: <span class="ruby-keyword kw">self</span>
1070
- 322: <span class="ruby-keyword kw">end</span></pre></div>
1071
- </div>
1072
-
1073
- <a class="small" name="M000002"><br/></a>
1074
- <div class="method_block"><h3>
1075
- <a href='#M000002'>
1076
-
1077
-
1078
- set_cgi
1079
-
1080
- (cgi)
1081
-
1082
- </a>
1083
- </h3>
1084
- <p>
1085
- Sets a CGI object. This is the convenient function of <a
1086
- href="Locale.html#M000001">set_request</a>().
1087
- </p>
1088
- <p>
1089
- This method is appeared when <a
1090
- href="Locale.html#M000004">Locale.init</a>(:driver =&gt; :cgi) is called.
1091
- </p>
1092
- <ul>
1093
- <li>cgi: CGI object
1094
-
1095
- </li>
1096
- <li>Returns: self
1097
-
1098
- </li>
1099
- </ul>
1100
-
1101
- <p class="source_link" id="M000002-show-link"><a href="#" onclick="toggle('M000002-source'); toggleText('M000002-link'); return false;" id="M000002-link">Show source...</a></p><div class="source" id="M000002-source"><pre> <span class="ruby-comment cmt"># File lib/locale/driver/cgi.rb, line 120</span>
1102
- 120: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_cgi</span>(<span class="ruby-identifier">cgi</span>)
1103
- 121: <span class="ruby-identifier">set_request</span>(<span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">params</span>[<span class="ruby-value str">&quot;lang&quot;</span>], <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">cookies</span>[<span class="ruby-value str">&quot;lang&quot;</span>],
1104
- 122: <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">accept_language</span>, <span class="ruby-identifier">cgi</span>.<span class="ruby-identifier">accept_charset</span>)
1105
- 123: <span class="ruby-keyword kw">self</span>
1106
- 124: <span class="ruby-keyword kw">end</span></pre></div>
1107
- </div>
1108
-
1109
- <a class="small" name="M000009"><br/></a>
1110
- <div class="method_block"><h3>
1111
- <a href='#M000009'>
1112
-
1113
-
1114
- set_current
1115
-
1116
- (*tags)
1117
-
1118
- </a>
1119
- </h3>
1120
- <p>
1121
- Sets the locales of the <a href="Locale.html#M000011">current</a> thread
1122
- order by the priority. Each thread has a <a
1123
- href="Locale.html#M000011">current</a> locales. The system locale/default
1124
- locale is used if the thread doesn&#8216;t have <a
1125
- href="Locale.html#M000011">current</a> locales.
1126
- </p>
1127
- <ul>
1128
- <li>tag: Locale::Language::Tag&#8216;s class or the language tag as a String.
1129
- nil if you need to <a href="Locale.html#M000014">clear</a> <a
1130
- href="Locale.html#M000011">current</a> locales.
1131
-
1132
- </li>
1133
- <li><a href="Locale.html#M000013">charset</a>: the <a
1134
- href="Locale.html#M000013">charset</a> (override the <a
1135
- href="Locale.html#M000013">charset</a> even if the locale name has <a
1136
- href="Locale.html#M000013">charset</a>) or nil.
1137
-
1138
- </li>
1139
- <li>Returns: self
1140
-
1141
- </li>
1142
- </ul>
1143
- <p>
1144
- (e.g.)
1145
- </p>
1146
- <pre>
1147
- Locale.set_current(&quot;ja_JP.eucJP&quot;)
1148
- Locale.set_current(&quot;ja-JP&quot;)
1149
- Locale.set_current(&quot;en_AU&quot;, &quot;en_US&quot;, ...)
1150
- Locale.set_current(Locale::Tag::Simple.new(&quot;ja&quot;, &quot;JP&quot;), ...)
1151
- </pre>
1152
-
1153
- <p class="source_link" id="M000009-show-link"><a href="#" onclick="toggle('M000009-source'); toggleText('M000009-link'); return false;" id="M000009-link">Show source...</a></p><div class="source" id="M000009-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 143</span>
1154
- 143: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_current</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">tags</span>)
1155
- 144: <span class="ruby-identifier">languages</span> = <span class="ruby-keyword kw">nil</span>
1156
- 145: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tags</span>[<span class="ruby-value">0</span>]
1157
- 146: <span class="ruby-identifier">languages</span> = <span class="ruby-constant">Locale</span><span class="ruby-operator">::</span><span class="ruby-constant">TagList</span>.<span class="ruby-identifier">new</span>
1158
- 147: <span class="ruby-identifier">tags</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">tag</span><span class="ruby-operator">|</span>
1159
- 148: <span class="ruby-identifier">languages</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">create_language_tag</span>(<span class="ruby-identifier">tag</span>)
1160
- 149: <span class="ruby-keyword kw">end</span>
1161
- 150: <span class="ruby-keyword kw">end</span>
1162
- 151: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:current_languages</span>] = <span class="ruby-identifier">languages</span>
1163
- 152: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">current</span>[<span class="ruby-identifier">:candidates_caches</span>] = <span class="ruby-keyword kw">nil</span>
1164
- 153: <span class="ruby-keyword kw">self</span>
1165
- 154: <span class="ruby-keyword kw">end</span></pre></div>
1166
- </div>
1167
-
1168
- <a class="small" name="M000006"><br/></a>
1169
- <div class="method_block"><h3>
1170
- <a href='#M000006'>
1171
-
1172
-
1173
- set_default
1174
-
1175
- (tag)
1176
-
1177
- </a>
1178
- </h3>
1179
- <p>
1180
- Sets the <a href="Locale.html#M000008">default</a> locale as the language
1181
- tag (<a href="Locale/Tag.html">Locale::Tag</a>&#8216;s class or String(such
1182
- as &quot;ja_JP&quot;)).
1183
- </p>
1184
- <ul>
1185
- <li>tag: the <a href="Locale.html#M000008">default</a> language_tag
1186
-
1187
- </li>
1188
- <li>Returns: self.
1189
-
1190
- </li>
1191
- </ul>
1192
-
1193
- <p class="source_link" id="M000006-show-link"><a href="#" onclick="toggle('M000006-source'); toggleText('M000006-link'); return false;" id="M000006-link">Show source...</a></p><div class="source" id="M000006-source"><pre> <span class="ruby-comment cmt"># File lib/locale.rb, line 102</span>
1194
- 102: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_default</span>(<span class="ruby-identifier">tag</span>)
1195
- 103: <span class="ruby-constant">Thread</span>.<span class="ruby-identifier">list</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">thread</span><span class="ruby-operator">|</span>
1196
- 104: <span class="ruby-identifier">thread</span>[<span class="ruby-identifier">:current_languages</span>] = <span class="ruby-keyword kw">nil</span>
1197
- 105: <span class="ruby-identifier">thread</span>[<span class="ruby-identifier">:candidates_caches</span>] = <span class="ruby-keyword kw">nil</span>
1198
- 106: <span class="ruby-keyword kw">end</span>
1199
- 107: <span class="ruby-ivar">@@default_tag</span> = <span class="ruby-identifier">create_language_tag</span>(<span class="ruby-identifier">tag</span>)
1200
- 108: <span class="ruby-keyword kw">self</span>
1201
- 109: <span class="ruby-keyword kw">end</span></pre></div>
1202
- </div>
1203
-
1204
- <a class="small" name="M000001"><br/></a>
1205
- <div class="method_block"><h3>
1206
- <a href='#M000001'>
1207
-
1208
-
1209
- set_request
1210
-
1211
- (query_langs, cookie_langs, accept_language, accept_charset)
1212
-
1213
- </a>
1214
- </h3>
1215
- <p>
1216
- Sets a request values for lang/charset.
1217
- </p>
1218
- <ul>
1219
- <li>query_langs: An Array of QUERY_STRING value &quot;lang&quot;.
1220
-
1221
- </li>
1222
- <li>cookie_langs: An Array of cookie value &quot;lang&quot;.
1223
-
1224
- </li>
1225
- <li>accept_language: The value of HTTP_ACCEPT_LANGUAGE
1226
-
1227
- </li>
1228
- <li>accept_charset: The value of HTTP_ACCEPT_CHARSET
1229
-
1230
- </li>
1231
- </ul>
1232
-
1233
- <p class="source_link" id="M000001-show-link"><a href="#" onclick="toggle('M000001-source'); toggleText('M000001-link'); return false;" id="M000001-link">Show source...</a></p><div class="source" id="M000001-source"><pre> <span class="ruby-comment cmt"># File lib/locale/driver/cgi.rb, line 109</span>
1234
- 109: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_request</span>(<span class="ruby-identifier">query_langs</span>, <span class="ruby-identifier">cookie_langs</span>, <span class="ruby-identifier">accept_language</span>, <span class="ruby-identifier">accept_charset</span>)
1235
- 110: <span class="ruby-ivar">@@locale_driver_module</span>.<span class="ruby-identifier">set_request</span>(<span class="ruby-identifier">query_langs</span>, <span class="ruby-identifier">cookie_langs</span>, <span class="ruby-identifier">accept_language</span>, <span class="ruby-identifier">accept_charset</span>)
1236
- 111: <span class="ruby-keyword kw">self</span>
1237
- 112: <span class="ruby-keyword kw">end</span></pre></div>
1238
- </div>
1239
-
1240
-
1241
-
1242
-
1243
-
1244
- </div><div class="clear" id="footer">Generated on May 9, 2009 / Allison 2 &copy; 2007 <a href="http://cloudbur.st">Cloudburst, LLC</a></div></div></body></html>