numonic 0.0.1
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/LICENSE +22 -0
- data/README.md +80 -0
- data/bin/numonic +26 -0
- data/numonic.gemspec +16 -0
- metadata +51 -0
data/LICENSE
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright 2013 Dafydd Crosby (dafydd@dafyddcrosby.com)
|
2
|
+
All rights reserved.
|
3
|
+
|
4
|
+
Redistribution and use in source and binary forms, with or without
|
5
|
+
modification, are permitted provided that the following conditions are met:
|
6
|
+
|
7
|
+
1. Redistributions of source code must retain the above copyright notice, this
|
8
|
+
list of conditions and the following disclaimer.
|
9
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
10
|
+
this list of conditions and the following disclaimer in the documentation
|
11
|
+
and/or other materials provided with the distribution.
|
12
|
+
|
13
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
14
|
+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
15
|
+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
16
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
|
17
|
+
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
18
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
19
|
+
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
20
|
+
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
21
|
+
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
22
|
+
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/README.md
ADDED
@@ -0,0 +1,80 @@
|
|
1
|
+
# Numonic
|
2
|
+
|
3
|
+
The human brain has trouble remembering long numbers. Take for example:
|
4
|
+
|
5
|
+
9285 9495 3463 8841
|
6
|
+
|
7
|
+
Not very easy to remember quickly, is it? But how about the phrase:
|
8
|
+
|
9
|
+
painful purple marjoram favorite
|
10
|
+
|
11
|
+
Nonsensical, but still easier to remember. As you might be guessing now, there
|
12
|
+
is a system that turns numbers into mnemonics so that you can remember phone
|
13
|
+
numbers, credit card numbers, and any other long number sequence you would
|
14
|
+
like to remember.
|
15
|
+
|
16
|
+
## System
|
17
|
+
|
18
|
+
The trick is to break the number apart into consonants, and then make words
|
19
|
+
out of the consonants. If you slowly talk out the words, you'll find that
|
20
|
+
the sibling consonants for a number have a same 'mouth-feel' to them
|
21
|
+
(if you've ever studied lip-reading, you'll catch on right away!)
|
22
|
+
|
23
|
+
0 - z, s, and soft c
|
24
|
+
1 - t, d
|
25
|
+
2 - n
|
26
|
+
3 - m
|
27
|
+
4 - r
|
28
|
+
5 - l
|
29
|
+
6 - j, sh, ch, g
|
30
|
+
7 - k, hard c, hard g
|
31
|
+
8 - f, v, ph
|
32
|
+
9 - p, b
|
33
|
+
|
34
|
+
* vowels have no value ('onomatopoeia' == 2319)
|
35
|
+
* silent letters are discarded ('sign' == 02, not 062)
|
36
|
+
* w, h, and y have no value ('widely' == 15, 'whirlybird' == 45941)
|
37
|
+
* double letters count as one ('sally' == 05, not 055)
|
38
|
+
|
39
|
+
You can turn these words into phrases, so that the first 10 digits of pi
|
40
|
+
can be remembered as:
|
41
|
+
|
42
|
+
Mutter tulip Nietzche lame
|
43
|
+
|
44
|
+
## Installation
|
45
|
+
|
46
|
+
`gem install numonic`
|
47
|
+
|
48
|
+
## Using numonic
|
49
|
+
|
50
|
+
Numonic helps you learn the system quickly, and can give you mnemonic
|
51
|
+
ideas easily. Say you really want to remember your friend Jenny's number.
|
52
|
+
Just type in:
|
53
|
+
|
54
|
+
`numonic 8675309`
|
55
|
+
|
56
|
+
And you get 'fjklmzp'. Start mouthing out the consonants, and you get
|
57
|
+
something like 'fudge kill maze pie'. Awesome! Serve me up a slice of that!
|
58
|
+
|
59
|
+
Have trouble remembering your license plate? Numonic simply keeps any letters
|
60
|
+
that you put in, so:
|
61
|
+
|
62
|
+
`numonic BDR-529`
|
63
|
+
|
64
|
+
becomes
|
65
|
+
|
66
|
+
bdr-lnp
|
67
|
+
|
68
|
+
which can be turned into
|
69
|
+
|
70
|
+
butter low nap
|
71
|
+
|
72
|
+
Got a really long list of numbers in a file? Numonic also accepts STDIN
|
73
|
+
|
74
|
+
`cat list_o_numbers.txt | numonic`
|
75
|
+
|
76
|
+
As you might imagine, having a strong vocabulary can help you come up with
|
77
|
+
really colorful phrases that make it easy to memorize long numbers.
|
78
|
+
|
79
|
+
Further reading:
|
80
|
+
"The Memory Book" by Harry Lorayne & Jerry Lucas
|
data/bin/numonic
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
numonics = {
|
4
|
+
'0' => 'z',
|
5
|
+
'1' => 't',
|
6
|
+
'2' => 'n',
|
7
|
+
'3' => 'm',
|
8
|
+
'4' => 'r',
|
9
|
+
'5' => 'l',
|
10
|
+
'6' => 'j',
|
11
|
+
'7' => 'k',
|
12
|
+
'8' => 'f',
|
13
|
+
'9' => 'p',
|
14
|
+
}
|
15
|
+
|
16
|
+
unless ARGV.empty?
|
17
|
+
num = ARGF.argv.join(" ")
|
18
|
+
else
|
19
|
+
num = ARGF.read.chomp
|
20
|
+
end
|
21
|
+
|
22
|
+
num.to_s.split('').each { |d|
|
23
|
+
print numonics.include?(d) ? numonics[d] : d
|
24
|
+
}
|
25
|
+
puts ""
|
26
|
+
STDOUT.flush
|
data/numonic.gemspec
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
Gem::Specification.new do |gem|
|
3
|
+
gem.name = "numonic"
|
4
|
+
gem.authors = ["Dafydd Crosby"]
|
5
|
+
gem.description = %q{Easily memorize long numbers using mnemonics}
|
6
|
+
gem.summary = %q{Numonic translates numbers into consonants so that you can make phrases to remember them}
|
7
|
+
|
8
|
+
gem.email = "dafydd@dafyddcrosby.com"
|
9
|
+
gem.homepage = "https://github.com/dafyddcrosby/numonic"
|
10
|
+
|
11
|
+
gem.license = 'bsd' # The (three-clause) BSD License
|
12
|
+
|
13
|
+
gem.files = `git ls-files`.split($\)
|
14
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
15
|
+
gem.version = "0.0.1"
|
16
|
+
end
|
metadata
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: numonic
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Dafydd Crosby
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-10-09 00:00:00.000000000 Z
|
13
|
+
dependencies: []
|
14
|
+
description: Easily memorize long numbers using mnemonics
|
15
|
+
email: dafydd@dafyddcrosby.com
|
16
|
+
executables:
|
17
|
+
- numonic
|
18
|
+
extensions: []
|
19
|
+
extra_rdoc_files: []
|
20
|
+
files:
|
21
|
+
- LICENSE
|
22
|
+
- README.md
|
23
|
+
- bin/numonic
|
24
|
+
- numonic.gemspec
|
25
|
+
homepage: https://github.com/dafyddcrosby/numonic
|
26
|
+
licenses:
|
27
|
+
- bsd
|
28
|
+
post_install_message:
|
29
|
+
rdoc_options: []
|
30
|
+
require_paths:
|
31
|
+
- lib
|
32
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
requirements: []
|
45
|
+
rubyforge_project:
|
46
|
+
rubygems_version: 1.8.24
|
47
|
+
signing_key:
|
48
|
+
specification_version: 3
|
49
|
+
summary: Numonic translates numbers into consonants so that you can make phrases to
|
50
|
+
remember them
|
51
|
+
test_files: []
|