locale 0.9.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog +5 -0
- data/{README → README.rdoc} +6 -3
- data/Rakefile +5 -4
- data/lib/locale/driver/cgi.rb +4 -6
- data/lib/locale/driver/win32_table.rb +1 -1
- data/lib/locale/version.rb +1 -1
- data/replace.rb +21 -0
- data/test/test_detect_general.rb +5 -1
- metadata +6 -66
- data/doc/classes/Locale/Driver.html +0 -375
- data/doc/classes/Locale/Driver/CGI.html +0 -502
- data/doc/classes/Locale/Driver/Env.html +0 -440
- data/doc/classes/Locale/Driver/JRuby.html +0 -390
- data/doc/classes/Locale/Driver/Posix.html +0 -431
- data/doc/classes/Locale/Driver/Win32.html +0 -398
- data/doc/classes/Locale/Driver/Win32Table.html +0 -356
- data/doc/classes/Locale/Info.html +0 -586
- data/doc/classes/Locale/Info/Language.html +0 -764
- data/doc/classes/Locale/Info/Region.html +0 -470
- data/doc/classes/Locale/Tag/Cldr.html +0 -547
- data/doc/classes/Locale/Tag/Common.html +0 -655
- data/doc/classes/Locale/Tag/Illegular.html +0 -424
- data/doc/classes/Locale/Tag/Posix.html +0 -612
- data/doc/classes/Locale/Tag/Rfc.html +0 -610
- data/doc/classes/Locale/Tag/Simple.html +0 -684
- data/doc/classes/Locale/TagList.html +0 -783
- data/doc/classes/Locale/Util.html +0 -476
- data/doc/classes/Locale/Util/Memoizable.html +0 -356
- data/doc/created.rid +0 -1
- data/doc/files/ChangeLog.html +0 -497
- data/doc/files/README.html +0 -525
- data/doc/files/lib/locale/driver/cgi_rb.html +0 -342
- data/doc/files/lib/locale/driver/env_rb.html +0 -354
- data/doc/files/lib/locale/driver/jruby_rb.html +0 -359
- data/doc/files/lib/locale/driver/posix_rb.html +0 -349
- data/doc/files/lib/locale/driver/win32_rb.html +0 -359
- data/doc/files/lib/locale/driver/win32_table_rb.html +0 -342
- data/doc/files/lib/locale/info/language_rb.html +0 -353
- data/doc/files/lib/locale/info/region_rb.html +0 -353
- data/doc/files/lib/locale/info_rb.html +0 -354
- data/doc/files/lib/locale/tag/cldr_rb.html +0 -342
- data/doc/files/lib/locale/tag/common_rb.html +0 -342
- data/doc/files/lib/locale/tag/illegular_rb.html +0 -349
- data/doc/files/lib/locale/tag/posix_rb.html +0 -342
- data/doc/files/lib/locale/tag/rfc_rb.html +0 -342
- data/doc/files/lib/locale/tag/simple_rb.html +0 -349
- data/doc/files/lib/locale/tag_rb.html +0 -374
- data/doc/files/lib/locale/taglist_rb.html +0 -342
- data/doc/files/lib/locale/util/memoizable_rb.html +0 -360
- data/doc/files/lib/locale/version_rb.html +0 -342
- data/doc/files/lib/locale_rb.html +0 -379
- data/doc/fr_class_index.html +0 -20
- data/doc/fr_file_index.html +0 -23
- data/doc/fr_method_index.html +0 -80
- data/doc/index.html +0 -1
- data/doc/rdoc-style.css +0 -320
data/ChangeLog
CHANGED
data/{README → README.rdoc}
RENAMED
@@ -2,6 +2,9 @@
|
|
2
2
|
|
3
3
|
Ruby-Locale is the pure ruby library which provides basic and general purpose
|
4
4
|
APIs for localization.
|
5
|
+
It aims to support all environments which ruby works and all kind of programs
|
6
|
+
(GUI, WWW, library, etc), and becomes the hub of other i18n/l10n libs/apps to
|
7
|
+
handle major locale ID standards.
|
5
8
|
|
6
9
|
* Manage Locale ID(Language Tag)
|
7
10
|
* Each thread has a Locale ID.
|
@@ -49,8 +52,8 @@ This program is licenced under the same licence as Ruby.
|
|
49
52
|
|
50
53
|
* locale/language.rb, locale/region.rb,
|
51
54
|
locale/data/language.tab.gz, locale/data/region.tab.gz:
|
52
|
-
* Copyright (C) 2006 Antonio Terceiro
|
53
|
-
* Copyright (C) 2008 Masao Mutoh <
|
55
|
+
* Copyright (C) 2006 Brian Pontarelli, Antonio Terceiro
|
56
|
+
* Copyright (C) 2008 Masao Mutoh <mutomasa at gmail.com>
|
54
57
|
|
55
58
|
* setup.rb version 3.4.1
|
56
59
|
* Copyright (C) 2000-2005 Minero Aoki <aamine at loveruby.net>
|
@@ -97,4 +100,4 @@ This program is licenced under the same licence as Ruby.
|
|
97
100
|
* ISO 3166
|
98
101
|
|
99
102
|
== Maintainer
|
100
|
-
Masao Mutoh <
|
103
|
+
Masao Mutoh <mutomasa at gmail.com>
|
data/Rakefile
CHANGED
@@ -8,8 +8,8 @@ require 'rake/gempackagetask'
|
|
8
8
|
|
9
9
|
require 'locale/version'
|
10
10
|
|
11
|
-
desc "Default Task"
|
12
|
-
task :default => [ :test ]
|
11
|
+
#desc "Default Task"
|
12
|
+
#task :default => [ :test ]
|
13
13
|
|
14
14
|
PKG_VERSION = Locale::VERSION
|
15
15
|
|
@@ -40,7 +40,7 @@ spec = Gem::Specification.new do |s|
|
|
40
40
|
s.version = PKG_VERSION
|
41
41
|
s.summary = 'Ruby-Locale is the pure ruby library which provides basic APIs for localization.'
|
42
42
|
s.author = 'Masao Mutoh'
|
43
|
-
s.email = '
|
43
|
+
s.email = 'mutomasa at gmail.com'
|
44
44
|
s.homepage = 'http://locale.rubyforge.org/'
|
45
45
|
s.rubyforge_project = "locale"
|
46
46
|
s.files = FileList['**/*'].to_a.select{|v| v !~ /pkg|CVS/}
|
@@ -69,9 +69,10 @@ task :release => [ :package ] do
|
|
69
69
|
require 'rubyforge'
|
70
70
|
|
71
71
|
rubyforge = RubyForge.new
|
72
|
+
rubyforge.configure
|
72
73
|
rubyforge.login
|
73
74
|
rubyforge.add_release("locale", "locale",
|
74
|
-
|
75
|
+
PKG_VERSION,
|
75
76
|
"pkg/locale-#{PKG_VERSION}.gem",
|
76
77
|
"pkg/ruby-locale-#{PKG_VERSION}.tar.gz")
|
77
78
|
end
|
data/lib/locale/driver/cgi.rb
CHANGED
@@ -35,12 +35,10 @@ module Locale
|
|
35
35
|
locales = Locale::TagList.new
|
36
36
|
|
37
37
|
# QUERY_STRING "lang"
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
locales << Locale::Tag.parse(lang)
|
43
|
-
end
|
38
|
+
langs = cgi_.params["lang"]
|
39
|
+
if langs
|
40
|
+
langs.each do |lang|
|
41
|
+
locales << Locale::Tag.parse(lang)
|
44
42
|
end
|
45
43
|
end
|
46
44
|
|
data/lib/locale/version.rb
CHANGED
data/replace.rb
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
Dir.glob("**/*") do |v|
|
2
|
+
lines = []
|
3
|
+
changed = false
|
4
|
+
next if File.directory? v
|
5
|
+
IO.foreach(v) {|line|
|
6
|
+
if line =~ /mutoh(at|@)highway.ne.jp/
|
7
|
+
lines << line.gsub(/mutoh( at |@)highway.ne.jp/, "mutomasa at gmail.com")
|
8
|
+
changed = true
|
9
|
+
else
|
10
|
+
lines << line
|
11
|
+
end
|
12
|
+
}
|
13
|
+
if changed
|
14
|
+
out = open(v, "w")
|
15
|
+
lines.each {|l|
|
16
|
+
out.write l
|
17
|
+
}
|
18
|
+
out.close
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
data/test/test_detect_general.rb
CHANGED
@@ -59,7 +59,7 @@ class TestDetectGeneral < Test::Unit::TestCase
|
|
59
59
|
assert_equal "eucJP", Locale.charset
|
60
60
|
end
|
61
61
|
|
62
|
-
def
|
62
|
+
def test_lang_complex
|
63
63
|
ENV["LC_ALL"] = "zh_CN.UTF-8" # Ignored.
|
64
64
|
ENV["LC_MESSAGES"] = "ko_KR.UTF-8" #Ingored.
|
65
65
|
ENV["LANG"] = "en_US.UTF-8" # Ignored.
|
@@ -113,9 +113,13 @@ class TestDetectGeneral < Test::Unit::TestCase
|
|
113
113
|
assert_equal nil, lang.charset
|
114
114
|
assert_equal Locale::Tag::Posix.new("cs", "CZ"), lang
|
115
115
|
|
116
|
+
=begin
|
117
|
+
This test doesn't work any environment such as Ubuntu.
|
118
|
+
Because this method gets the system locale via "locale -a" command.
|
116
119
|
if /linux|bsd/ =~ RUBY_PLATFORM
|
117
120
|
assert_equal "ISO-8859-2", Locale.charset
|
118
121
|
end
|
122
|
+
=end
|
119
123
|
end
|
120
124
|
|
121
125
|
def test_default
|
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: 0.
|
4
|
+
version: 2.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Masao Mutoh
|
@@ -9,12 +9,12 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date:
|
12
|
+
date: 2009-03-21 00:00:00 +09:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|
16
16
|
description: Ruby-Locale is the pure ruby library which provides basic APIs for localization.
|
17
|
-
email:
|
17
|
+
email: mutomasa at gmail.com
|
18
18
|
executables: []
|
19
19
|
|
20
20
|
extensions: []
|
@@ -22,68 +22,8 @@ extensions: []
|
|
22
22
|
extra_rdoc_files: []
|
23
23
|
|
24
24
|
files:
|
25
|
+
- replace.rb
|
25
26
|
- ChangeLog
|
26
|
-
- doc
|
27
|
-
- doc/index.html
|
28
|
-
- doc/fr_method_index.html
|
29
|
-
- doc/created.rid
|
30
|
-
- doc/fr_class_index.html
|
31
|
-
- doc/classes
|
32
|
-
- doc/classes/Locale
|
33
|
-
- doc/classes/Locale/Util.html
|
34
|
-
- doc/classes/Locale/Tag
|
35
|
-
- doc/classes/Locale/Tag/Simple.html
|
36
|
-
- doc/classes/Locale/Tag/Rfc.html
|
37
|
-
- doc/classes/Locale/Tag/Illegular.html
|
38
|
-
- doc/classes/Locale/Tag/Cldr.html
|
39
|
-
- doc/classes/Locale/Tag/Posix.html
|
40
|
-
- doc/classes/Locale/Tag/Common.html
|
41
|
-
- doc/classes/Locale/Info.html
|
42
|
-
- doc/classes/Locale/Info
|
43
|
-
- doc/classes/Locale/Info/Region.html
|
44
|
-
- doc/classes/Locale/Info/Language.html
|
45
|
-
- doc/classes/Locale/TagList.html
|
46
|
-
- doc/classes/Locale/Util
|
47
|
-
- doc/classes/Locale/Util/Memoizable.html
|
48
|
-
- doc/classes/Locale/Driver.html
|
49
|
-
- doc/classes/Locale/Driver
|
50
|
-
- doc/classes/Locale/Driver/Win32.html
|
51
|
-
- doc/classes/Locale/Driver/Win32Table.html
|
52
|
-
- doc/classes/Locale/Driver/Env.html
|
53
|
-
- doc/classes/Locale/Driver/Posix.html
|
54
|
-
- doc/classes/Locale/Driver/CGI.html
|
55
|
-
- doc/classes/Locale/Driver/JRuby.html
|
56
|
-
- doc/files
|
57
|
-
- doc/files/ChangeLog.html
|
58
|
-
- doc/files/lib
|
59
|
-
- doc/files/lib/locale_rb.html
|
60
|
-
- doc/files/lib/locale
|
61
|
-
- doc/files/lib/locale/driver
|
62
|
-
- doc/files/lib/locale/driver/win32_rb.html
|
63
|
-
- doc/files/lib/locale/driver/win32_table_rb.html
|
64
|
-
- doc/files/lib/locale/driver/posix_rb.html
|
65
|
-
- doc/files/lib/locale/driver/cgi_rb.html
|
66
|
-
- doc/files/lib/locale/driver/jruby_rb.html
|
67
|
-
- doc/files/lib/locale/driver/env_rb.html
|
68
|
-
- doc/files/lib/locale/version_rb.html
|
69
|
-
- doc/files/lib/locale/tag_rb.html
|
70
|
-
- doc/files/lib/locale/tag
|
71
|
-
- doc/files/lib/locale/tag/illegular_rb.html
|
72
|
-
- doc/files/lib/locale/tag/simple_rb.html
|
73
|
-
- doc/files/lib/locale/tag/rfc_rb.html
|
74
|
-
- doc/files/lib/locale/tag/posix_rb.html
|
75
|
-
- doc/files/lib/locale/tag/cldr_rb.html
|
76
|
-
- doc/files/lib/locale/tag/common_rb.html
|
77
|
-
- doc/files/lib/locale/info
|
78
|
-
- doc/files/lib/locale/info/language_rb.html
|
79
|
-
- doc/files/lib/locale/info/region_rb.html
|
80
|
-
- doc/files/lib/locale/taglist_rb.html
|
81
|
-
- doc/files/lib/locale/info_rb.html
|
82
|
-
- doc/files/lib/locale/util
|
83
|
-
- doc/files/lib/locale/util/memoizable_rb.html
|
84
|
-
- doc/files/README.html
|
85
|
-
- doc/rdoc-style.css
|
86
|
-
- doc/fr_file_index.html
|
87
27
|
- samples
|
88
28
|
- samples/sample_info.rb
|
89
29
|
- samples/sample_1.rb
|
@@ -124,7 +64,7 @@ files:
|
|
124
64
|
- lib/locale/data/regions.tab.gz
|
125
65
|
- lib/locale/data/languages.tab.gz
|
126
66
|
- lib/locale.rb
|
127
|
-
- README
|
67
|
+
- README.rdoc
|
128
68
|
- test
|
129
69
|
- test/test_detect_general.rb
|
130
70
|
- test/test_info.rb
|
@@ -154,7 +94,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
154
94
|
requirements: []
|
155
95
|
|
156
96
|
rubyforge_project: locale
|
157
|
-
rubygems_version: 1.
|
97
|
+
rubygems_version: 1.3.1
|
158
98
|
signing_key:
|
159
99
|
specification_version: 2
|
160
100
|
summary: Ruby-Locale is the pure ruby library which provides basic APIs for localization.
|
@@ -1,375 +0,0 @@
|
|
1
|
-
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><meta content="text/html; charset=utf-8" http-equiv="Content-Type"/><title>Module: Locale::Driver</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::Driver
|
320
|
-
</h1></span>
|
321
|
-
</div><div class="clear"></div><div id="left">
|
322
|
-
|
323
|
-
<div class="navigation darker top" id="defined_in"><h3>Defined in</h3>
|
324
|
-
|
325
|
-
<a href="../../files/lib/locale/driver/env_rb.html">lib/locale/driver/env.rb</a>
|
326
|
-
|
327
|
-
|
328
|
-
<a href="../../files/lib/locale/driver/jruby_rb.html">lib/locale/driver/jruby.rb</a>
|
329
|
-
|
330
|
-
|
331
|
-
<a href="../../files/lib/locale/driver/posix_rb.html">lib/locale/driver/posix.rb</a>
|
332
|
-
|
333
|
-
|
334
|
-
<a href="../../files/lib/locale/driver/win32_table_rb.html">lib/locale/driver/win32_table.rb</a>
|
335
|
-
|
336
|
-
|
337
|
-
<a href="../../files/lib/locale/driver/win32_rb.html">lib/locale/driver/win32.rb</a>
|
338
|
-
|
339
|
-
|
340
|
-
<a href="../../files/lib/locale/driver/cgi_rb.html">lib/locale/driver/cgi.rb</a>
|
341
|
-
|
342
|
-
</div>
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
<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 onclick="toggle('class'); toggleText('class_link'); return false;" href="#" id="class_link">Hide...</a></div><div class="clear"></div><div id="class"><form><label for="filter_class">Filter: </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 onclick="toggle('file'); toggleText('file_link'); return false;" href="#" id="file_link">Hide...</a></div><div class="clear"></div><div id="file"><form><label for="filter_file">Filter: </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 onclick="toggle('method'); toggleText('method_link'); return false;" href="#" id="method_link">Show...</a></div><div class="clear"></div><div id="method"><form><label for="filter_method">Filter: </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">
|
347
|
-
<h1 id="item_name">Module: Locale::Driver</h1>
|
348
|
-
|
349
|
-
<div id="description"><p>
|
350
|
-
<a href="Driver.html">Locale::Driver</a> module for <a
|
351
|
-
href="Driver/CGI.html">CGI</a>. Detect the user locales and the charset
|
352
|
-
from <a href="Driver/CGI.html">CGI</a> parameters. This is a low-level
|
353
|
-
class. Application shouldn‘t use this directly.
|
354
|
-
</p>
|
355
|
-
</div>
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
<p></p>
|
361
|
-
|
362
|
-
<h1>Child modules and classes</h1><p>Module <a href="Driver/CGI.html" class="link">Locale::Driver::CGI</a><br />
|
363
|
-
Module <a href="Driver/Env.html" class="link">Locale::Driver::Env</a><br />
|
364
|
-
Module <a href="Driver/JRuby.html" class="link">Locale::Driver::JRuby</a><br />
|
365
|
-
Module <a href="Driver/Posix.html" class="link">Locale::Driver::Posix</a><br />
|
366
|
-
Module <a href="Driver/Win32.html" class="link">Locale::Driver::Win32</a><br />
|
367
|
-
Module <a href="Driver/Win32Table.html" class="link">Locale::Driver::Win32Table</a><br />
|
368
|
-
</p>
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
</div><div class="clear" id="footer">Generated on Jan 21, 2008 / Allison 2 © 2007 <a href="http://cloudbur.st">Cloudburst, LLC</a></div></div></body></html>
|