english_key 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Readme.md +11 -0
- data/lib/english_key.rb +19 -0
- data/lib/english_key/rfc1751.rb +56 -0
- data/lib/english_key/rfc1751_words.rb +143 -0
- metadata +59 -0
data/Readme.md
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
# EnglishKey ([RFC1751](http://tools.ietf.org/html/rfc1751))
|
2
|
+
|
3
|
+
>> EnglishKey.uuid
|
4
|
+
=> "ROTH_EST_ARK_ELLA_IRE_LESS_JUG_ALOE_SITU_PAD_SALK_HUED"
|
5
|
+
>> EnglishKey.uuid
|
6
|
+
=> "JOVE_HAW_MEND_LUST_DRUG_TANK_FOLK_RUSE_BOON_CHIN_RUNG_AVIS"
|
7
|
+
|
8
|
+
>> EnglishKey.decode "YOU CAN BUY WILL A BEER"
|
9
|
+
=> 5134468780530860203
|
10
|
+
>> EnglishKey.encode 5134468780530860203
|
11
|
+
=> "YOU CAN BUY WILL A BEER"
|
data/lib/english_key.rb
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'securerandom'
|
2
|
+
require_relative 'english_key/rfc1751'
|
3
|
+
|
4
|
+
module EnglishKey
|
5
|
+
VERSION = '0.1.0'
|
6
|
+
|
7
|
+
extend self
|
8
|
+
def uuid
|
9
|
+
encode(SecureRandom.random_number(2**128 - 1)).tr(' ', '_')
|
10
|
+
end
|
11
|
+
|
12
|
+
def encode(num)
|
13
|
+
RFC1751.encode num
|
14
|
+
end
|
15
|
+
|
16
|
+
def decode(str)
|
17
|
+
RFC1751.decode str
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,56 @@
|
|
1
|
+
require_relative 'rfc1751_words'
|
2
|
+
module EnglishKey
|
3
|
+
module RFC1751
|
4
|
+
extend self
|
5
|
+
|
6
|
+
ChecksumError = Class.new(ArgumentError)
|
7
|
+
|
8
|
+
def encode(num)
|
9
|
+
split_64bit(num).map {|part| encode_64bit part }.join ' '
|
10
|
+
end
|
11
|
+
|
12
|
+
def decode(words)
|
13
|
+
base_array_to_int( decode_phrases(words).flatten, 2**64)
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def split_64bit(num)
|
19
|
+
parts = []
|
20
|
+
while num > 0
|
21
|
+
parts.unshift num % 2**64
|
22
|
+
num /= 2**64
|
23
|
+
end
|
24
|
+
parts
|
25
|
+
end
|
26
|
+
|
27
|
+
def encode_64bit(num)
|
28
|
+
bits = 63.downto(0).map{|i| num[i] }
|
29
|
+
|
30
|
+
keys = bits.each_slice(11).map {|bit_array| base_array_to_int(bit_array, 2) }
|
31
|
+
|
32
|
+
keys[5] = (keys[5] << 2) + checksum(num)
|
33
|
+
|
34
|
+
keys.map {|idx| WORDS[idx] }
|
35
|
+
end
|
36
|
+
|
37
|
+
def checksum(num)
|
38
|
+
(0..63).step(2).inject(0) { |sum,j| sum + 2*num[j+1] + num[j] } & 3
|
39
|
+
end
|
40
|
+
|
41
|
+
def decode_phrases(words)
|
42
|
+
words.split(/ /).each_slice(6).map { |phrase| decode_phrase phrase }
|
43
|
+
end
|
44
|
+
|
45
|
+
def decode_phrase(phrase)
|
46
|
+
nums = phrase.map{|word| WORDS.index word}
|
47
|
+
decoded = nums.inject(0) { |sum, n| (sum << 11) + n } >> 2
|
48
|
+
raise ChecksumError unless (nums.last & 3) == checksum(decoded)
|
49
|
+
decoded
|
50
|
+
end
|
51
|
+
|
52
|
+
def base_array_to_int(arry, base)
|
53
|
+
arry.reverse.each.with_index.inject(0) {|sum, (n,pwr)| sum + n * base**pwr }
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
@@ -0,0 +1,143 @@
|
|
1
|
+
module EnglishKey
|
2
|
+
module RFC1751
|
3
|
+
WORDS = %w[
|
4
|
+
A ABE ACE ACT AD ADA ADD AGO AID AIM AIR ALL ALP AM AMY AN ANA AND ANN
|
5
|
+
ANT ANY APE APS APT ARC ARE ARK ARM ART AS ASH ASK AT ATE AUG AUK AVE
|
6
|
+
AWE AWK AWL AWN AX AYE BAD BAG BAH BAM BAN BAR BAT BAY BE BED BEE BEG
|
7
|
+
BEN BET BEY BIB BID BIG BIN BIT BOB BOG BON BOO BOP BOW BOY BUB BUD BUG
|
8
|
+
BUM BUN BUS BUT BUY BY BYE CAB CAL CAM CAN CAP CAR CAT CAW COD COG COL
|
9
|
+
CON COO COP COT COW COY CRY CUB CUE CUP CUR CUT DAB DAD DAM DAN DAR DAY
|
10
|
+
DEE DEL DEN DES DEW DID DIE DIG DIN DIP DO DOE DOG DON DOT DOW DRY DUB
|
11
|
+
DUD DUE DUG DUN EAR EAT ED EEL EGG EGO ELI ELK ELM ELY EM END EST ETC
|
12
|
+
EVA EVE EWE EYE FAD FAN FAR FAT FAY FED FEE FEW FIB FIG FIN FIR FIT FLO
|
13
|
+
FLY FOE FOG FOR FRY FUM FUN FUR GAB GAD GAG GAL GAM GAP GAS GAY GEE GEL
|
14
|
+
GEM GET GIG GIL GIN GO GOT GUM GUN GUS GUT GUY GYM GYP HA HAD HAL HAM
|
15
|
+
HAN HAP HAS HAT HAW HAY HE HEM HEN HER HEW HEY HI HID HIM HIP HIS HIT HO
|
16
|
+
HOB HOC HOE HOG HOP HOT HOW HUB HUE HUG HUH HUM HUT I ICY IDA IF IKE ILL
|
17
|
+
INK INN IO ION IQ IRA IRE IRK IS IT ITS IVY JAB JAG JAM JAN JAR JAW JAY
|
18
|
+
JET JIG JIM JO JOB JOE JOG JOT JOY JUG JUT KAY KEG KEN KEY KID KIM KIN
|
19
|
+
KIT LA LAB LAC LAD LAG LAM LAP LAW LAY LEA LED LEE LEG LEN LEO LET LEW
|
20
|
+
LID LIE LIN LIP LIT LO LOB LOG LOP LOS LOT LOU LOW LOY LUG LYE MA MAC
|
21
|
+
MAD MAE MAN MAO MAP MAT MAW MAY ME MEG MEL MEN MET MEW MID MIN MIT MOB
|
22
|
+
MOD MOE MOO MOP MOS MOT MOW MUD MUG MUM MY NAB NAG NAN NAP NAT NAY NE
|
23
|
+
NED NEE NET NEW NIB NIL NIP NIT NO NOB NOD NON NOR NOT NOV NOW NU NUN
|
24
|
+
NUT O OAF OAK OAR OAT ODD ODE OF OFF OFT OH OIL OK OLD ON ONE OR ORB ORE
|
25
|
+
ORR OS OTT OUR OUT OVA OW OWE OWL OWN OX PA PAD PAL PAM PAN PAP PAR PAT
|
26
|
+
PAW PAY PEA PEG PEN PEP PER PET PEW PHI PI PIE PIN PIT PLY PO POD POE
|
27
|
+
POP POT POW PRO PRY PUB PUG PUN PUP PUT QUO RAG RAM RAN RAP RAT RAW RAY
|
28
|
+
REB RED REP RET RIB RID RIG RIM RIO RIP ROB ROD ROE RON ROT ROW ROY RUB
|
29
|
+
RUE RUG RUM RUN RYE SAC SAD SAG SAL SAM SAN SAP SAT SAW SAY SEA SEC SEE
|
30
|
+
SEN SET SEW SHE SHY SIN SIP SIR SIS SIT SKI SKY SLY SO SOB SOD SON SOP
|
31
|
+
SOW SOY SPA SPY SUB SUD SUE SUM SUN SUP TAB TAD TAG TAN TAP TAR TEA TED
|
32
|
+
TEE TEN THE THY TIC TIE TIM TIN TIP TO TOE TOG TOM TON TOO TOP TOW TOY
|
33
|
+
TRY TUB TUG TUM TUN TWO UN UP US USE VAN VAT VET VIE WAD WAG WAR WAS WAY
|
34
|
+
WE WEB WED WEE WET WHO WHY WIN WIT WOK WON WOO WOW WRY WU YAM YAP YAW YE
|
35
|
+
YEA YES YET YOU ABED ABEL ABET ABLE ABUT ACHE ACID ACME ACRE ACTA ACTS
|
36
|
+
ADAM ADDS ADEN AFAR AFRO AGEE AHEM AHOY AIDA AIDE AIDS AIRY AJAR AKIN
|
37
|
+
ALAN ALEC ALGA ALIA ALLY ALMA ALOE ALSO ALTO ALUM ALVA AMEN AMES AMID
|
38
|
+
AMMO AMOK AMOS AMRA ANDY ANEW ANNA ANNE ANTE ANTI AQUA ARAB ARCH AREA
|
39
|
+
ARGO ARID ARMY ARTS ARTY ASIA ASKS ATOM AUNT AURA AUTO AVER AVID AVIS
|
40
|
+
AVON AVOW AWAY AWRY BABE BABY BACH BACK BADE BAIL BAIT BAKE BALD BALE
|
41
|
+
BALI BALK BALL BALM BAND BANE BANG BANK BARB BARD BARE BARK BARN BARR
|
42
|
+
BASE BASH BASK BASS BATE BATH BAWD BAWL BEAD BEAK BEAM BEAN BEAR BEAT
|
43
|
+
BEAU BECK BEEF BEEN BEER BEET BELA BELL BELT BEND BENT BERG BERN BERT
|
44
|
+
BESS BEST BETA BETH BHOY BIAS BIDE BIEN BILE BILK BILL BIND BING BIRD
|
45
|
+
BITE BITS BLAB BLAT BLED BLEW BLOB BLOC BLOT BLOW BLUE BLUM BLUR BOAR
|
46
|
+
BOAT BOCA BOCK BODE BODY BOGY BOHR BOIL BOLD BOLO BOLT BOMB BONA BOND
|
47
|
+
BONE BONG BONN BONY BOOK BOOM BOON BOOT BORE BORG BORN BOSE BOSS BOTH
|
48
|
+
BOUT BOWL BOYD BRAD BRAE BRAG BRAN BRAY BRED BREW BRIG BRIM BROW BUCK
|
49
|
+
BUDD BUFF BULB BULK BULL BUNK BUNT BUOY BURG BURL BURN BURR BURT BURY
|
50
|
+
BUSH BUSS BUST BUSY BYTE CADY CAFE CAGE CAIN CAKE CALF CALL CALM CAME
|
51
|
+
CANE CANT CARD CARE CARL CARR CART CASE CASH CASK CAST CAVE CEIL CELL
|
52
|
+
CENT CERN CHAD CHAR CHAT CHAW CHEF CHEN CHEW CHIC CHIN CHOU CHOW CHUB
|
53
|
+
CHUG CHUM CITE CITY CLAD CLAM CLAN CLAW CLAY CLOD CLOG CLOT CLUB CLUE
|
54
|
+
COAL COAT COCA COCK COCO CODA CODE CODY COED COIL COIN COKE COLA COLD
|
55
|
+
COLT COMA COMB COME COOK COOL COON COOT CORD CORE CORK CORN COST COVE
|
56
|
+
COWL CRAB CRAG CRAM CRAY CREW CRIB CROW CRUD CUBA CUBE CUFF CULL CULT
|
57
|
+
CUNY CURB CURD CURE CURL CURT CUTS DADE DALE DAME DANA DANE DANG DANK
|
58
|
+
DARE DARK DARN DART DASH DATA DATE DAVE DAVY DAWN DAYS DEAD DEAF DEAL
|
59
|
+
DEAN DEAR DEBT DECK DEED DEEM DEER DEFT DEFY DELL DENT DENY DESK DIAL
|
60
|
+
DICE DIED DIET DIME DINE DING DINT DIRE DIRT DISC DISH DISK DIVE DOCK
|
61
|
+
DOES DOLE DOLL DOLT DOME DONE DOOM DOOR DORA DOSE DOTE DOUG DOUR DOVE
|
62
|
+
DOWN DRAB DRAG DRAM DRAW DREW DRUB DRUG DRUM DUAL DUCK DUCT DUEL DUET
|
63
|
+
DUKE DULL DUMB DUNE DUNK DUSK DUST DUTY EACH EARL EARN EASE EAST EASY
|
64
|
+
EBEN ECHO EDDY EDEN EDGE EDGY EDIT EDNA EGAN ELAN ELBA ELLA ELSE EMIL
|
65
|
+
EMIT EMMA ENDS ERIC EROS EVEN EVER EVIL EYED FACE FACT FADE FAIL FAIN
|
66
|
+
FAIR FAKE FALL FAME FANG FARM FAST FATE FAWN FEAR FEAT FEED FEEL FEET
|
67
|
+
FELL FELT FEND FERN FEST FEUD FIEF FIGS FILE FILL FILM FIND FINE FINK
|
68
|
+
FIRE FIRM FISH FISK FIST FITS FIVE FLAG FLAK FLAM FLAT FLAW FLEA FLED
|
69
|
+
FLEW FLIT FLOC FLOG FLOW FLUB FLUE FOAL FOAM FOGY FOIL FOLD FOLK FOND
|
70
|
+
FONT FOOD FOOL FOOT FORD FORE FORK FORM FORT FOSS FOUL FOUR FOWL FRAU
|
71
|
+
FRAY FRED FREE FRET FREY FROG FROM FUEL FULL FUME FUND FUNK FURY FUSE
|
72
|
+
FUSS GAFF GAGE GAIL GAIN GAIT GALA GALE GALL GALT GAME GANG GARB GARY
|
73
|
+
GASH GATE GAUL GAUR GAVE GAWK GEAR GELD GENE GENT GERM GETS GIBE GIFT
|
74
|
+
GILD GILL GILT GINA GIRD GIRL GIST GIVE GLAD GLEE GLEN GLIB GLOB GLOM
|
75
|
+
GLOW GLUE GLUM GLUT GOAD GOAL GOAT GOER GOES GOLD GOLF GONE GONG GOOD
|
76
|
+
GOOF GORE GORY GOSH GOUT GOWN GRAB GRAD GRAY GREG GREW GREY GRID GRIM
|
77
|
+
GRIN GRIT GROW GRUB GULF GULL GUNK GURU GUSH GUST GWEN GWYN HAAG HAAS
|
78
|
+
HACK HAIL HAIR HALE HALF HALL HALO HALT HAND HANG HANK HANS HARD HARK
|
79
|
+
HARM HART HASH HAST HATE HATH HAUL HAVE HAWK HAYS HEAD HEAL HEAR HEAT
|
80
|
+
HEBE HECK HEED HEEL HEFT HELD HELL HELM HERB HERD HERE HERO HERS HESS
|
81
|
+
HEWN HICK HIDE HIGH HIKE HILL HILT HIND HINT HIRE HISS HIVE HOBO HOCK
|
82
|
+
HOFF HOLD HOLE HOLM HOLT HOME HONE HONK HOOD HOOF HOOK HOOT HORN HOSE
|
83
|
+
HOST HOUR HOVE HOWE HOWL HOYT HUCK HUED HUFF HUGE HUGH HUGO HULK HULL
|
84
|
+
HUNK HUNT HURD HURL HURT HUSH HYDE HYMN IBIS ICON IDEA IDLE IFFY INCA
|
85
|
+
INCH INTO IONS IOTA IOWA IRIS IRMA IRON ISLE ITCH ITEM IVAN JACK JADE
|
86
|
+
JAIL JAKE JANE JAVA JEAN JEFF JERK JESS JEST JIBE JILL JILT JIVE JOAN
|
87
|
+
JOBS JOCK JOEL JOEY JOHN JOIN JOKE JOLT JOVE JUDD JUDE JUDO JUDY JUJU
|
88
|
+
JUKE JULY JUNE JUNK JUNO JURY JUST JUTE KAHN KALE KANE KANT KARL KATE
|
89
|
+
KEEL KEEN KENO KENT KERN KERR KEYS KICK KILL KIND KING KIRK KISS KITE
|
90
|
+
KLAN KNEE KNEW KNIT KNOB KNOT KNOW KOCH KONG KUDO KURD KURT KYLE LACE
|
91
|
+
LACK LACY LADY LAID LAIN LAIR LAKE LAMB LAME LAND LANE LANG LARD LARK
|
92
|
+
LASS LAST LATE LAUD LAVA LAWN LAWS LAYS LEAD LEAF LEAK LEAN LEAR LEEK
|
93
|
+
LEER LEFT LEND LENS LENT LEON LESK LESS LEST LETS LIAR LICE LICK LIED
|
94
|
+
LIEN LIES LIEU LIFE LIFT LIKE LILA LILT LILY LIMA LIMB LIME LIND LINE
|
95
|
+
LINK LINT LION LISA LIST LIVE LOAD LOAF LOAM LOAN LOCK LOFT LOGE LOIS
|
96
|
+
LOLA LONE LONG LOOK LOON LOOT LORD LORE LOSE LOSS LOST LOUD LOVE LOWE
|
97
|
+
LUCK LUCY LUGE LUKE LULU LUND LUNG LURA LURE LURK LUSH LUST LYLE LYNN
|
98
|
+
LYON LYRA MACE MADE MAGI MAID MAIL MAIN MAKE MALE MALI MALL MALT MANA
|
99
|
+
MANN MANY MARC MARE MARK MARS MART MARY MASH MASK MASS MAST MATE MATH
|
100
|
+
MAUL MAYO MEAD MEAL MEAN MEAT MEEK MEET MELD MELT MEMO MEND MENU MERT
|
101
|
+
MESH MESS MICE MIKE MILD MILE MILK MILL MILT MIMI MIND MINE MINI MINK
|
102
|
+
MINT MIRE MISS MIST MITE MITT MOAN MOAT MOCK MODE MOLD MOLE MOLL MOLT
|
103
|
+
MONA MONK MONT MOOD MOON MOOR MOOT MORE MORN MORT MOSS MOST MOTH MOVE
|
104
|
+
MUCH MUCK MUDD MUFF MULE MULL MURK MUSH MUST MUTE MUTT MYRA MYTH NAGY
|
105
|
+
NAIL NAIR NAME NARY NASH NAVE NAVY NEAL NEAR NEAT NECK NEED NEIL NELL
|
106
|
+
NEON NERO NESS NEST NEWS NEWT NIBS NICE NICK NILE NINA NINE NOAH NODE
|
107
|
+
NOEL NOLL NONE NOOK NOON NORM NOSE NOTE NOUN NOVA NUDE NULL NUMB OATH
|
108
|
+
OBEY OBOE ODIN OHIO OILY OINT OKAY OLAF OLDY OLGA OLIN OMAN OMEN OMIT
|
109
|
+
ONCE ONES ONLY ONTO ONUS ORAL ORGY OSLO OTIS OTTO OUCH OUST OUTS OVAL
|
110
|
+
OVEN OVER OWLY OWNS QUAD QUIT QUOD RACE RACK RACY RAFT RAGE RAID RAIL
|
111
|
+
RAIN RAKE RANK RANT RARE RASH RATE RAVE RAYS READ REAL REAM REAR RECK
|
112
|
+
REED REEF REEK REEL REID REIN RENA REND RENT REST RICE RICH RICK RIDE
|
113
|
+
RIFT RILL RIME RING RINK RISE RISK RITE ROAD ROAM ROAR ROBE ROCK RODE
|
114
|
+
ROIL ROLL ROME ROOD ROOF ROOK ROOM ROOT ROSA ROSE ROSS ROSY ROTH ROUT
|
115
|
+
ROVE ROWE ROWS RUBE RUBY RUDE RUDY RUIN RULE RUNG RUNS RUNT RUSE RUSH
|
116
|
+
RUSK RUSS RUST RUTH SACK SAFE SAGE SAID SAIL SALE SALK SALT SAME SAND
|
117
|
+
SANE SANG SANK SARA SAUL SAVE SAYS SCAN SCAR SCAT SCOT SEAL SEAM SEAR
|
118
|
+
SEAT SEED SEEK SEEM SEEN SEES SELF SELL SEND SENT SETS SEWN SHAG SHAM
|
119
|
+
SHAW SHAY SHED SHIM SHIN SHOD SHOE SHOT SHOW SHUN SHUT SICK SIDE SIFT
|
120
|
+
SIGH SIGN SILK SILL SILO SILT SINE SING SINK SIRE SITE SITS SITU SKAT
|
121
|
+
SKEW SKID SKIM SKIN SKIT SLAB SLAM SLAT SLAY SLED SLEW SLID SLIM SLIT
|
122
|
+
SLOB SLOG SLOT SLOW SLUG SLUM SLUR SMOG SMUG SNAG SNOB SNOW SNUB SNUG
|
123
|
+
SOAK SOAR SOCK SODA SOFA SOFT SOIL SOLD SOME SONG SOON SOOT SORE SORT
|
124
|
+
SOUL SOUR SOWN STAB STAG STAN STAR STAY STEM STEW STIR STOW STUB STUN
|
125
|
+
SUCH SUDS SUIT SULK SUMS SUNG SUNK SURE SURF SWAB SWAG SWAM SWAN SWAT
|
126
|
+
SWAY SWIM SWUM TACK TACT TAIL TAKE TALE TALK TALL TANK TASK TATE TAUT
|
127
|
+
TEAL TEAM TEAR TECH TEEM TEEN TEET TELL TEND TENT TERM TERN TESS TEST
|
128
|
+
THAN THAT THEE THEM THEN THEY THIN THIS THUD THUG TICK TIDE TIDY TIED
|
129
|
+
TIER TILE TILL TILT TIME TINA TINE TINT TINY TIRE TOAD TOGO TOIL TOLD
|
130
|
+
TOLL TONE TONG TONY TOOK TOOL TOOT TORE TORN TOTE TOUR TOUT TOWN TRAG
|
131
|
+
TRAM TRAY TREE TREK TRIG TRIM TRIO TROD TROT TROY TRUE TUBA TUBE TUCK
|
132
|
+
TUFT TUNA TUNE TUNG TURF TURN TUSK TWIG TWIN TWIT ULAN UNIT URGE USED
|
133
|
+
USER USES UTAH VAIL VAIN VALE VARY VASE VAST VEAL VEDA VEIL VEIN VEND
|
134
|
+
VENT VERB VERY VETO VICE VIEW VINE VISE VOID VOLT VOTE WACK WADE WAGE
|
135
|
+
WAIL WAIT WAKE WALE WALK WALL WALT WAND WANE WANG WANT WARD WARM WARN
|
136
|
+
WART WASH WAST WATS WATT WAVE WAVY WAYS WEAK WEAL WEAN WEAR WEED WEEK
|
137
|
+
WEIR WELD WELL WELT WENT WERE WERT WEST WHAM WHAT WHEE WHEN WHET WHOA
|
138
|
+
WHOM WICK WIFE WILD WILL WIND WINE WING WINK WINO WIRE WISE WISH WITH
|
139
|
+
WOLF WONT WOOD WOOL WORD WORE WORK WORM WORN WOVE WRIT WYNN YALE YANG
|
140
|
+
YANK YARD YARN YAWL YAWN YEAH YEAR YELL YOGA YOKE
|
141
|
+
]
|
142
|
+
end
|
143
|
+
end
|
metadata
ADDED
@@ -0,0 +1,59 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: english_key
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Will Leinweber
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2011-12-04 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rspec
|
16
|
+
requirement: &70230265656860 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ~>
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '2'
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *70230265656860
|
25
|
+
description: RFC1751 for Ruby. A Convention for Human-Readable 128-bit Keys
|
26
|
+
email: will@bitfission.com
|
27
|
+
executables: []
|
28
|
+
extensions: []
|
29
|
+
extra_rdoc_files: []
|
30
|
+
files:
|
31
|
+
- lib/english_key/rfc1751.rb
|
32
|
+
- lib/english_key/rfc1751_words.rb
|
33
|
+
- lib/english_key.rb
|
34
|
+
- Readme.md
|
35
|
+
homepage: http://github.com/will/english_key
|
36
|
+
licenses: []
|
37
|
+
post_install_message:
|
38
|
+
rdoc_options: []
|
39
|
+
require_paths:
|
40
|
+
- lib
|
41
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - ! '>='
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '0'
|
47
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
48
|
+
none: false
|
49
|
+
requirements:
|
50
|
+
- - ! '>='
|
51
|
+
- !ruby/object:Gem::Version
|
52
|
+
version: '0'
|
53
|
+
requirements: []
|
54
|
+
rubyforge_project:
|
55
|
+
rubygems_version: 1.8.6
|
56
|
+
signing_key:
|
57
|
+
specification_version: 3
|
58
|
+
summary: RFC1751 for Ruby
|
59
|
+
test_files: []
|