rufus-mnemo 1.1.1 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.txt +11 -0
- data/CREDITS.txt +11 -0
- data/LICENSE.txt +21 -0
- data/Rakefile +85 -0
- data/doc/rdoc-style.css +320 -0
- data/lib/rufus/mnemo.rb +16 -24
- data/rufus-mnemo.gemspec +59 -0
- metadata +55 -13
data/CHANGELOG.txt
ADDED
data/CREDITS.txt
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
Copyright (c) 2007-2010, John Mettraux, jmettraux@gmail.com
|
3
|
+
|
4
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
|
+
of this software and associated documentation files (the "Software"), to deal
|
6
|
+
in the Software without restriction, including without limitation the rights
|
7
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
+
copies of the Software, and to permit persons to whom the Software is
|
9
|
+
furnished to do so, subject to the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be included in
|
12
|
+
all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
15
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
16
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
17
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
18
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
19
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
20
|
+
THE SOFTWARE.
|
21
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,85 @@
|
|
1
|
+
|
2
|
+
require 'rubygems'
|
3
|
+
require 'rake'
|
4
|
+
|
5
|
+
|
6
|
+
load 'lib/rufus/mnemo.rb'
|
7
|
+
|
8
|
+
|
9
|
+
#
|
10
|
+
# CLEAN
|
11
|
+
|
12
|
+
require 'rake/clean'
|
13
|
+
CLEAN.include('pkg', 'tmp', 'html')
|
14
|
+
task :default => [ :clean ]
|
15
|
+
|
16
|
+
|
17
|
+
#
|
18
|
+
# GEM
|
19
|
+
|
20
|
+
require 'jeweler'
|
21
|
+
|
22
|
+
Jeweler::Tasks.new do |gem|
|
23
|
+
|
24
|
+
gem.version = Rufus::Mnemo::VERSION
|
25
|
+
gem.name = 'rufus-mnemo'
|
26
|
+
gem.summary = 'Turning (large) integers into japanese sounding words and vice versa'
|
27
|
+
gem.description = %{
|
28
|
+
Turning (large) integers into japanese sounding words and vice versa'
|
29
|
+
}
|
30
|
+
gem.email = 'jmettraux@gmail.com'
|
31
|
+
gem.homepage = 'http://github.com/jmettraux/rufus-mnemo/'
|
32
|
+
gem.authors = [ 'John Mettraux' ]
|
33
|
+
gem.rubyforge_project = 'rufus'
|
34
|
+
|
35
|
+
gem.test_file = 'test/test.rb'
|
36
|
+
|
37
|
+
#gem.add_dependency 'rufus-json', '>= 0.2.5'
|
38
|
+
gem.add_development_dependency 'rake'
|
39
|
+
gem.add_development_dependency 'jeweler'
|
40
|
+
|
41
|
+
# gemspec spec : http://www.rubygems.org/read/chapter/20
|
42
|
+
end
|
43
|
+
Jeweler::GemcutterTasks.new
|
44
|
+
|
45
|
+
|
46
|
+
#
|
47
|
+
# DOC
|
48
|
+
|
49
|
+
#begin
|
50
|
+
# require 'yard'
|
51
|
+
# YARD::Rake::YardocTask.new do |doc|
|
52
|
+
# doc.options = [
|
53
|
+
# '-o', 'html/rufus-cloche', '--title',
|
54
|
+
# "rufus-cloche #{Rufus::Cloche::VERSION}"
|
55
|
+
# ]
|
56
|
+
# end
|
57
|
+
#rescue LoadError
|
58
|
+
# task :yard do
|
59
|
+
# abort "YARD is not available : sudo gem install yard"
|
60
|
+
# end
|
61
|
+
#end
|
62
|
+
|
63
|
+
#
|
64
|
+
# make sure to have rdoc 2.5.x to run that
|
65
|
+
#
|
66
|
+
require 'rake/rdoctask'
|
67
|
+
Rake::RDocTask.new do |rd|
|
68
|
+
rd.main = 'README.txt'
|
69
|
+
rd.rdoc_dir = 'rdoc/rufus-mnemo'
|
70
|
+
rd.rdoc_files.include('README.rdoc', 'CHANGELOG.txt', 'lib/**/*.rb')
|
71
|
+
rd.title = "rufus-mnemo #{Rufus::Mnemo::VERSION}"
|
72
|
+
end
|
73
|
+
|
74
|
+
|
75
|
+
#
|
76
|
+
# TO THE WEB
|
77
|
+
|
78
|
+
task :upload_rdoc => [ :clean, :rdoc ] do
|
79
|
+
|
80
|
+
account = 'jmettraux@rubyforge.org'
|
81
|
+
webdir = '/var/www/gforge-projects/rufus'
|
82
|
+
|
83
|
+
sh "rsync -azv -e ssh rdoc/rufus-mnemo #{account}:#{webdir}/"
|
84
|
+
end
|
85
|
+
|
data/doc/rdoc-style.css
ADDED
@@ -0,0 +1,320 @@
|
|
1
|
+
html, body {
|
2
|
+
height: 100%; }
|
3
|
+
|
4
|
+
body {
|
5
|
+
font-family: Helvetica Neue, Helvetica, sans-serif;
|
6
|
+
font-size: 85%;
|
7
|
+
margin: 0;
|
8
|
+
padding: 0;
|
9
|
+
background: white;
|
10
|
+
color: black; }
|
11
|
+
|
12
|
+
#wrapper {
|
13
|
+
min-height: 100%;
|
14
|
+
height: auto !important;
|
15
|
+
height: 100%;
|
16
|
+
margin: 0 auto -43px; }
|
17
|
+
|
18
|
+
#footer-push {
|
19
|
+
height: 43px; }
|
20
|
+
|
21
|
+
div.header, #footer {
|
22
|
+
background: #eee; }
|
23
|
+
|
24
|
+
#footer {
|
25
|
+
border-top: 1px solid silver;
|
26
|
+
margin-top: 12px;
|
27
|
+
padding: 0 2em;
|
28
|
+
line-height: 30px;
|
29
|
+
text-align: center;
|
30
|
+
font-variant: small-caps;
|
31
|
+
font-size: 95%; }
|
32
|
+
|
33
|
+
.clearing:after {
|
34
|
+
content: ".";
|
35
|
+
visibility: hidden;
|
36
|
+
height: 0;
|
37
|
+
display: block;
|
38
|
+
clear: both; }
|
39
|
+
* html .clearing {
|
40
|
+
height: 1px; }
|
41
|
+
.clearing *:first-child + html {
|
42
|
+
overflow: hidden; }
|
43
|
+
|
44
|
+
h1, h2, h3, h4, h5, h6 {
|
45
|
+
margin: 0;
|
46
|
+
font-weight: normal; }
|
47
|
+
|
48
|
+
a {
|
49
|
+
color: #0b3e71; }
|
50
|
+
a:hover {
|
51
|
+
background: #336699;
|
52
|
+
text-decoration: none;
|
53
|
+
color: #eef; }
|
54
|
+
|
55
|
+
#diagram img {
|
56
|
+
border: 0; }
|
57
|
+
|
58
|
+
#description a, .method .description a, .header a {
|
59
|
+
color: #336699; }
|
60
|
+
#description a:hover, .method .description a:hover, .header a:hover {
|
61
|
+
color: #eee; }
|
62
|
+
#description h1 a, #description h2 a, #description h3 a, #description h4 a, #description h5 a, #description h6 a, .method .description h1 a, .method .description h2 a, .method .description h3 a, .method .description h4 a, .method .description h5 a, .method .description h6 a, .header h1 a, .header h2 a, .header h3 a, .header h4 a, .header h5 a, .header h6 a {
|
63
|
+
color: #0b3e71; }
|
64
|
+
|
65
|
+
ol {
|
66
|
+
margin: 0;
|
67
|
+
padding: 0;
|
68
|
+
list-style: none; }
|
69
|
+
ol li {
|
70
|
+
margin-left: 0;
|
71
|
+
white-space: nowrap; }
|
72
|
+
ol li.other {
|
73
|
+
display: none; }
|
74
|
+
|
75
|
+
ol.expanded li.other {
|
76
|
+
display: list-item; }
|
77
|
+
|
78
|
+
table {
|
79
|
+
margin-bottom: 1em;
|
80
|
+
font-size: 1em;
|
81
|
+
border-collapse: collapse; }
|
82
|
+
table td, table th {
|
83
|
+
padding: .4em .8em; }
|
84
|
+
table thead {
|
85
|
+
background-color: #e8e8e8; }
|
86
|
+
table thead th {
|
87
|
+
font-variant: small-caps;
|
88
|
+
color: #666666; }
|
89
|
+
table tr {
|
90
|
+
border-bottom: 1px solid silver; }
|
91
|
+
|
92
|
+
#index a.show, div.header a.show {
|
93
|
+
text-decoration: underline;
|
94
|
+
font-style: italic;
|
95
|
+
color: #666666; }
|
96
|
+
#index a.show:after, div.header a.show:after {
|
97
|
+
content: " ..."; }
|
98
|
+
#index a.show:hover, div.header a.show:hover {
|
99
|
+
color: black;
|
100
|
+
background: #ffe; }
|
101
|
+
|
102
|
+
#index {
|
103
|
+
font: 85%/1.2 Helvetica neue, Helvetica, sans-serif; }
|
104
|
+
#index a {
|
105
|
+
text-decoration: none; }
|
106
|
+
#index h1 {
|
107
|
+
padding: .2em .5em .1em;
|
108
|
+
background: #ccc;
|
109
|
+
font: small-caps 1.2em Helvetica Neue, Helvetica, sans-serif;
|
110
|
+
color: #333;
|
111
|
+
border-bottom: 1px solid gray; }
|
112
|
+
#index form {
|
113
|
+
margin: 0;
|
114
|
+
padding: 0; }
|
115
|
+
#index form input {
|
116
|
+
margin: .4em;
|
117
|
+
margin-bottom: 0;
|
118
|
+
width: 90%; }
|
119
|
+
#index form #search.untouched {
|
120
|
+
color: #777777; }
|
121
|
+
#index ol {
|
122
|
+
padding: .4em .5em; }
|
123
|
+
#index ol li {
|
124
|
+
white-space: nowrap; }
|
125
|
+
#index #index-entries li a {
|
126
|
+
padding: 1px 2px; }
|
127
|
+
#index #index-entries.classes {
|
128
|
+
font-size: 1.1em; }
|
129
|
+
#index #index-entries.classes ol {
|
130
|
+
padding: 0; }
|
131
|
+
#index #index-entries.classes span.nodoc {
|
132
|
+
display: none; }
|
133
|
+
#index #index-entries.classes span.nodoc, #index #index-entries.classes a {
|
134
|
+
font-weight: bold; }
|
135
|
+
#index #index-entries.classes .parent {
|
136
|
+
font-weight: normal; }
|
137
|
+
#index #index-entries.methods li, #index #search-results.methods li {
|
138
|
+
margin-bottom: 0.2em; }
|
139
|
+
#index #index-entries.methods li a .method_name, #index #search-results.methods li a .method_name {
|
140
|
+
margin-right: 0.25em; }
|
141
|
+
#index #index-entries.methods li a .module_name, #index #search-results.methods li a .module_name {
|
142
|
+
color: #666666; }
|
143
|
+
#index #index-entries.methods li a:hover .module_name, #index #search-results.methods li a:hover .module_name {
|
144
|
+
color: #ddd; }
|
145
|
+
|
146
|
+
div.header {
|
147
|
+
font-size: 80%;
|
148
|
+
padding: .5em 2%;
|
149
|
+
font-family: Helvetica, sans-serif;
|
150
|
+
border-bottom: 1px solid silver; }
|
151
|
+
div.header .name {
|
152
|
+
font-size: 1.6em;
|
153
|
+
font-family: Helvetica, sans-serif; }
|
154
|
+
div.header .name .type {
|
155
|
+
color: #666666;
|
156
|
+
font-size: 80%;
|
157
|
+
font-variant: small-caps; }
|
158
|
+
div.header h1.name {
|
159
|
+
font-size: 2.2em; }
|
160
|
+
div.header .paths, div.header .last-update, div.header .parent {
|
161
|
+
color: #666666; }
|
162
|
+
div.header .last-update .datetime {
|
163
|
+
color: #484848; }
|
164
|
+
div.header .parent {
|
165
|
+
margin-top: .3em; }
|
166
|
+
div.header .parent strong {
|
167
|
+
font-weight: normal;
|
168
|
+
color: #484848; }
|
169
|
+
|
170
|
+
#content {
|
171
|
+
padding: 12px 2%; }
|
172
|
+
div.class #content {
|
173
|
+
position: relative;
|
174
|
+
width: 72%; }
|
175
|
+
#content pre, #content .method .synopsis {
|
176
|
+
font: 14px Monaco, DejaVu Sans Mono , Bitstream Vera Sans Mono , Courier New , monospace; }
|
177
|
+
#content pre {
|
178
|
+
color: black;
|
179
|
+
background: #eee;
|
180
|
+
border: 1px solid silver;
|
181
|
+
padding: .5em .8em;
|
182
|
+
overflow: auto; }
|
183
|
+
#content p code, #content p tt, #content li code, #content li tt, #content dl code, #content dl tt {
|
184
|
+
font: 14px Monaco, DejaVu Sans Mono , Bitstream Vera Sans Mono , Courier New , monospace;
|
185
|
+
background: #ffffe3;
|
186
|
+
padding: 2px 3px;
|
187
|
+
line-height: 1.4; }
|
188
|
+
#content h1 code, #content h1 tt, #content h2 code, #content h2 tt, #content h3 code, #content h3 tt, #content h4 code, #content h4 tt, #content h5 code, #content h5 tt, #content h6 code, #content h6 tt {
|
189
|
+
font-size: 1.1em; }
|
190
|
+
#content #text {
|
191
|
+
position: relative; }
|
192
|
+
#content #description p {
|
193
|
+
margin-top: .5em; }
|
194
|
+
#content #description h1, #content #description h2, #content #description h3, #content #description h4, #content #description h5, #content #description h6 {
|
195
|
+
font-family: Helvetica Neue, Helvetica, sans-serif; }
|
196
|
+
#content #description h1 {
|
197
|
+
font-size: 2.2em;
|
198
|
+
margin-bottom: .2em;
|
199
|
+
border-bottom: 3px double #d8d8d8;
|
200
|
+
padding-bottom: .1em; }
|
201
|
+
#content #description h2 {
|
202
|
+
font-size: 1.8em;
|
203
|
+
color: #0e3062;
|
204
|
+
margin: .8em 0 .3em 0; }
|
205
|
+
#content #description h3 {
|
206
|
+
font-size: 1.6em;
|
207
|
+
margin: .8em 0 .3em 0;
|
208
|
+
color: #666666; }
|
209
|
+
#content #description h4 {
|
210
|
+
font-size: 1.4em;
|
211
|
+
margin: .8em 0 .3em 0; }
|
212
|
+
#content #description h5 {
|
213
|
+
font-size: 1.2em;
|
214
|
+
margin: .8em 0 .3em 0;
|
215
|
+
color: #0e3062; }
|
216
|
+
#content #description h6 {
|
217
|
+
font-size: 1.0em;
|
218
|
+
margin: .8em 0 .3em 0;
|
219
|
+
color: #666666; }
|
220
|
+
#content #description ul, #content #description ol, #content .method .description ul, #content .method .description ol {
|
221
|
+
margin: .8em 0;
|
222
|
+
padding-left: 1.5em; }
|
223
|
+
#content #description ol, #content .method .description ol {
|
224
|
+
list-style: decimal; }
|
225
|
+
#content #description ol li, #content .method .description ol li {
|
226
|
+
white-space: normal; }
|
227
|
+
|
228
|
+
#method-list {
|
229
|
+
position: absolute;
|
230
|
+
top: 0px;
|
231
|
+
right: -33%;
|
232
|
+
width: 28%;
|
233
|
+
background: #eee;
|
234
|
+
border: 1px solid silver;
|
235
|
+
padding: .4em 1%;
|
236
|
+
overflow: hidden; }
|
237
|
+
#method-list h2 {
|
238
|
+
font-size: 1.3em; }
|
239
|
+
#method-list h3 {
|
240
|
+
font-variant: small-caps;
|
241
|
+
text-transform: capitalize;
|
242
|
+
font-family: Helvetica Neue, Helvetica, sans-serif;
|
243
|
+
color: #666;
|
244
|
+
font-size: 1.1em; }
|
245
|
+
#method-list ol {
|
246
|
+
padding: 0 0 .5em .5em; }
|
247
|
+
|
248
|
+
#context {
|
249
|
+
border-top: 1px dashed silver;
|
250
|
+
margin-top: 1em;
|
251
|
+
margin-bottom: 1em; }
|
252
|
+
|
253
|
+
#context h2, #section h2 {
|
254
|
+
font: small-caps 1.2em Helvetica Neue, Helvetica, sans-serif;
|
255
|
+
color: #444;
|
256
|
+
margin: 1em 0 .2em 0; }
|
257
|
+
|
258
|
+
#methods .method {
|
259
|
+
border: 1px solid silver;
|
260
|
+
margin-top: .5em;
|
261
|
+
background: #eee; }
|
262
|
+
#methods .method .synopsis {
|
263
|
+
color: black;
|
264
|
+
background: silver;
|
265
|
+
padding: .2em 1em; }
|
266
|
+
#methods .method .synopsis .name {
|
267
|
+
font-weight: bold; }
|
268
|
+
#methods .method .synopsis a {
|
269
|
+
text-decoration: none; }
|
270
|
+
#methods .method .description {
|
271
|
+
padding: 0 1em; }
|
272
|
+
#methods .method .description pre {
|
273
|
+
background: #f8f8f8; }
|
274
|
+
#methods .method .source {
|
275
|
+
margin: .5em 0; }
|
276
|
+
#methods .method .source-toggle {
|
277
|
+
font-size: 85%;
|
278
|
+
margin-left: 1em; }
|
279
|
+
#methods .public-class {
|
280
|
+
background: #ffffe4; }
|
281
|
+
#methods .public-instance .synopsis {
|
282
|
+
color: #eee;
|
283
|
+
background: #336699; }
|
284
|
+
|
285
|
+
#content .method .source pre {
|
286
|
+
font-size: 90%;
|
287
|
+
background: #262626;
|
288
|
+
color: #ffdead;
|
289
|
+
margin: 1em;
|
290
|
+
padding: 0.5em;
|
291
|
+
border: 1px dashed #999;
|
292
|
+
overflow: auto; }
|
293
|
+
#content .method .source pre .ruby-constant {
|
294
|
+
color: #7fffd4;
|
295
|
+
background: transparent; }
|
296
|
+
#content .method .source pre .ruby-keyword {
|
297
|
+
color: #00ffff;
|
298
|
+
background: transparent; }
|
299
|
+
#content .method .source pre .ruby-ivar {
|
300
|
+
color: #eedd82;
|
301
|
+
background: transparent; }
|
302
|
+
#content .method .source pre .ruby-operator {
|
303
|
+
color: #00ffee;
|
304
|
+
background: transparent; }
|
305
|
+
#content .method .source pre .ruby-identifier {
|
306
|
+
color: #ffdead;
|
307
|
+
background: transparent; }
|
308
|
+
#content .method .source pre .ruby-node {
|
309
|
+
color: #ffa07a;
|
310
|
+
background: transparent; }
|
311
|
+
#content .method .source pre .ruby-comment {
|
312
|
+
color: #b22222;
|
313
|
+
font-weight: bold;
|
314
|
+
background: transparent; }
|
315
|
+
#content .method .source pre .ruby-regexp {
|
316
|
+
color: #ffa07a;
|
317
|
+
background: transparent; }
|
318
|
+
#content .method .source pre .ruby-value {
|
319
|
+
color: #7fffd4;
|
320
|
+
background: transparent; }
|
data/lib/rufus/mnemo.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#--
|
2
|
-
# Copyright (c) 2007-
|
2
|
+
# Copyright (c) 2007-2010, John Mettraux, jmettraux@gmail.com
|
3
3
|
#
|
4
4
|
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
5
5
|
# of this software and associated documentation files (the "Software"), to deal
|
@@ -68,7 +68,7 @@ module Rufus
|
|
68
68
|
#
|
69
69
|
module Mnemo
|
70
70
|
|
71
|
-
VERSION = '1.
|
71
|
+
VERSION = '1.2.0'
|
72
72
|
|
73
73
|
V = %w[ a e i o u ]
|
74
74
|
C = %w[ b d g h j k m n p r s t z ]
|
@@ -101,7 +101,7 @@ module Rufus
|
|
101
101
|
|
102
102
|
# Turns the given integer into a Mnemo word.
|
103
103
|
#
|
104
|
-
def
|
104
|
+
def self.from_integer (integer)
|
105
105
|
|
106
106
|
return "#{NEG}#{from_integer(-integer)}" if integer < 0
|
107
107
|
|
@@ -111,7 +111,7 @@ module Rufus
|
|
111
111
|
|
112
112
|
# Turns the given Mnemo word to its equivalent integer.
|
113
113
|
#
|
114
|
-
def
|
114
|
+
def self.to_integer (string)
|
115
115
|
|
116
116
|
s = from_special(string)
|
117
117
|
to_i(s)
|
@@ -120,7 +120,7 @@ module Rufus
|
|
120
120
|
# Turns a simple syllable into the equivalent number.
|
121
121
|
# For example Mnemo::to_number("fu") will yield 19.
|
122
122
|
#
|
123
|
-
def
|
123
|
+
def self.to_number (syllable)
|
124
124
|
|
125
125
|
SYL.each_with_index do |s, index|
|
126
126
|
return index if syllable == s
|
@@ -132,7 +132,7 @@ module Rufus
|
|
132
132
|
# For example, "tsunashima" will be split into
|
133
133
|
# [ "tsu", "na", "shi", "ma" ]
|
134
134
|
#
|
135
|
-
def
|
135
|
+
def self.split (word)
|
136
136
|
|
137
137
|
word = from_special(word)
|
138
138
|
a = string_split(word)
|
@@ -143,7 +143,7 @@ module Rufus
|
|
143
143
|
# Returns if the string is a Mnemo word, like "fugu" or
|
144
144
|
# "toriyamanobashi".
|
145
145
|
#
|
146
|
-
def
|
146
|
+
def self.is_mnemo_word (string)
|
147
147
|
|
148
148
|
begin
|
149
149
|
to_integer(string)
|
@@ -155,7 +155,7 @@ module Rufus
|
|
155
155
|
|
156
156
|
private
|
157
157
|
|
158
|
-
def
|
158
|
+
def self.string_split (s, result=[])
|
159
159
|
|
160
160
|
return result if s.length < 1
|
161
161
|
|
@@ -164,30 +164,22 @@ module Rufus
|
|
164
164
|
string_split(s[2..-1], result)
|
165
165
|
end
|
166
166
|
|
167
|
-
def
|
167
|
+
def self.a_to_special (a)
|
168
168
|
|
169
|
-
a.collect
|
170
|
-
SPECIAL.each do |a, b|
|
171
|
-
if syl == a
|
172
|
-
syl = b
|
173
|
-
break
|
174
|
-
end
|
175
|
-
end
|
176
|
-
syl
|
177
|
-
end
|
169
|
+
a.collect { |syl| SPECIAL.find { |aa, bb| syl == bb } || syl }
|
178
170
|
end
|
179
171
|
|
180
|
-
def
|
172
|
+
def self.to_special (s)
|
181
173
|
|
182
|
-
SPECIAL.inject(s) { |
|
174
|
+
SPECIAL.inject(s) { |ss, (a, b)| ss.gsub(a, b) }
|
183
175
|
end
|
184
176
|
|
185
|
-
def
|
177
|
+
def self.from_special (s)
|
186
178
|
|
187
|
-
SPECIAL.inject(s) { |
|
179
|
+
SPECIAL.inject(s) { |ss, (a, b)| ss.gsub(b, a) }
|
188
180
|
end
|
189
181
|
|
190
|
-
def
|
182
|
+
def self.from_i (integer)
|
191
183
|
|
192
184
|
return '' if integer == 0
|
193
185
|
|
@@ -201,7 +193,7 @@ module Rufus
|
|
201
193
|
from_i(rest) + SYL[mod]
|
202
194
|
end
|
203
195
|
|
204
|
-
def
|
196
|
+
def self.to_i (s)
|
205
197
|
|
206
198
|
return 0 if s.length == 0
|
207
199
|
|
data/rufus-mnemo.gemspec
ADDED
@@ -0,0 +1,59 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = %q{rufus-mnemo}
|
8
|
+
s.version = "1.2.0"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["John Mettraux"]
|
12
|
+
s.date = %q{2010-11-22}
|
13
|
+
s.description = %q{
|
14
|
+
Turning (large) integers into japanese sounding words and vice versa'
|
15
|
+
}
|
16
|
+
s.email = %q{jmettraux@gmail.com}
|
17
|
+
s.extra_rdoc_files = [
|
18
|
+
"LICENSE.txt",
|
19
|
+
"README.txt"
|
20
|
+
]
|
21
|
+
s.files = [
|
22
|
+
"CHANGELOG.txt",
|
23
|
+
"CREDITS.txt",
|
24
|
+
"LICENSE.txt",
|
25
|
+
"README.txt",
|
26
|
+
"Rakefile",
|
27
|
+
"doc/rdoc-style.css",
|
28
|
+
"lib/rufus-mnemo.rb",
|
29
|
+
"lib/rufus/mnemo.rb",
|
30
|
+
"rufus-mnemo.gemspec",
|
31
|
+
"test/test.rb"
|
32
|
+
]
|
33
|
+
s.homepage = %q{http://github.com/jmettraux/rufus-mnemo/}
|
34
|
+
s.rdoc_options = ["--charset=UTF-8"]
|
35
|
+
s.require_paths = ["lib"]
|
36
|
+
s.rubyforge_project = %q{rufus}
|
37
|
+
s.rubygems_version = %q{1.3.7}
|
38
|
+
s.summary = %q{Turning (large) integers into japanese sounding words and vice versa}
|
39
|
+
s.test_files = [
|
40
|
+
"test/test.rb"
|
41
|
+
]
|
42
|
+
|
43
|
+
if s.respond_to? :specification_version then
|
44
|
+
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
45
|
+
s.specification_version = 3
|
46
|
+
|
47
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
48
|
+
s.add_development_dependency(%q<rake>, [">= 0"])
|
49
|
+
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
50
|
+
else
|
51
|
+
s.add_dependency(%q<rake>, [">= 0"])
|
52
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
53
|
+
end
|
54
|
+
else
|
55
|
+
s.add_dependency(%q<rake>, [">= 0"])
|
56
|
+
s.add_dependency(%q<jeweler>, [">= 0"])
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
metadata
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rufus-mnemo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 1
|
7
|
+
- 2
|
8
|
+
- 0
|
9
|
+
version: 1.2.0
|
5
10
|
platform: ruby
|
6
11
|
authors:
|
7
12
|
- John Mettraux
|
@@ -9,48 +14,85 @@ autorequire:
|
|
9
14
|
bindir: bin
|
10
15
|
cert_chain: []
|
11
16
|
|
12
|
-
date:
|
17
|
+
date: 2010-11-22 00:00:00 +09:00
|
13
18
|
default_executable:
|
14
|
-
dependencies:
|
15
|
-
|
16
|
-
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
21
|
+
name: rake
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
25
|
+
requirements:
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
segments:
|
29
|
+
- 0
|
30
|
+
version: "0"
|
31
|
+
type: :development
|
32
|
+
version_requirements: *id001
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: jeweler
|
35
|
+
prerelease: false
|
36
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
37
|
+
none: false
|
38
|
+
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
segments:
|
42
|
+
- 0
|
43
|
+
version: "0"
|
44
|
+
type: :development
|
45
|
+
version_requirements: *id002
|
46
|
+
description: "\n\
|
47
|
+
Turning (large) integers into japanese sounding words and vice versa'\n "
|
17
48
|
email: jmettraux@gmail.com
|
18
49
|
executables: []
|
19
50
|
|
20
51
|
extensions: []
|
21
52
|
|
22
53
|
extra_rdoc_files:
|
54
|
+
- LICENSE.txt
|
23
55
|
- README.txt
|
24
56
|
files:
|
25
|
-
-
|
57
|
+
- CHANGELOG.txt
|
58
|
+
- CREDITS.txt
|
59
|
+
- LICENSE.txt
|
60
|
+
- README.txt
|
61
|
+
- Rakefile
|
62
|
+
- doc/rdoc-style.css
|
26
63
|
- lib/rufus-mnemo.rb
|
64
|
+
- lib/rufus/mnemo.rb
|
65
|
+
- rufus-mnemo.gemspec
|
27
66
|
- test/test.rb
|
28
|
-
- README.txt
|
29
67
|
has_rdoc: true
|
30
|
-
homepage: http://
|
68
|
+
homepage: http://github.com/jmettraux/rufus-mnemo/
|
31
69
|
licenses: []
|
32
70
|
|
33
71
|
post_install_message:
|
34
|
-
rdoc_options:
|
35
|
-
|
72
|
+
rdoc_options:
|
73
|
+
- --charset=UTF-8
|
36
74
|
require_paths:
|
37
75
|
- lib
|
38
76
|
required_ruby_version: !ruby/object:Gem::Requirement
|
77
|
+
none: false
|
39
78
|
requirements:
|
40
79
|
- - ">="
|
41
80
|
- !ruby/object:Gem::Version
|
81
|
+
segments:
|
82
|
+
- 0
|
42
83
|
version: "0"
|
43
|
-
version:
|
44
84
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
85
|
+
none: false
|
45
86
|
requirements:
|
46
87
|
- - ">="
|
47
88
|
- !ruby/object:Gem::Version
|
89
|
+
segments:
|
90
|
+
- 0
|
48
91
|
version: "0"
|
49
|
-
version:
|
50
92
|
requirements: []
|
51
93
|
|
52
94
|
rubyforge_project: rufus
|
53
|
-
rubygems_version: 1.3.
|
95
|
+
rubygems_version: 1.3.7
|
54
96
|
signing_key:
|
55
97
|
specification_version: 3
|
56
98
|
summary: Turning (large) integers into japanese sounding words and vice versa
|