region-spotter 1.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/CHANGELOG.mdown +10 -0
- data/Gemfile +6 -0
- data/Gemfile.lock +42 -0
- data/README.mdown +64 -0
- data/Rakefile +26 -0
- data/app.gemspec +19 -0
- data/data/argentina/misiones.rb +9 -0
- data/data/australia/new_south_wales.rb +16 -0
- data/data/australia/queensland.rb +8 -0
- data/data/australia/western.rb +8 -0
- data/data/belgium/wallonia.rb +8 -0
- data/data/bermuda/ireland_island.rb +4 -0
- data/data/bolivia/cochabamba.rb +8 -0
- data/data/bolivia/santa_cruz.rb +8 -0
- data/data/brazil/amazonas.rb +4 -0
- data/data/brazil/mato_grosso_do_sul.rb +8 -0
- data/data/brazil/parana.rb +9 -0
- data/data/brazil/sao_paulo.rb +9 -0
- data/data/bulgaria/montana.rb +8 -0
- data/data/canada/alberta.rb +20 -0
- data/data/canada/british_columbia.rb +9 -0
- data/data/canada/manitoba.rb +7 -0
- data/data/canada/new_brunswick.rb +4 -0
- data/data/canada/newfoundland_and_labrador.rb +8 -0
- data/data/canada/northwest_territories.rb +4 -0
- data/data/canada/nova_scotia.rb +5 -0
- data/data/canada/nunavut.rb +5 -0
- data/data/canada/ontario.rb +28 -0
- data/data/canada/prince_edward_island.rb +5 -0
- data/data/canada/quebec.rb +3 -0
- data/data/canada/saskatchewan.rb +5 -0
- data/data/canada/yukon.rb +5 -0
- data/data/chile/bio_bio.rb +25 -0
- data/data/colombia/amazonas.rb +4 -0
- data/data/colombia/caqueta.rb +9 -0
- data/data/colombia/meta.rb +9 -0
- data/data/colombia/valle_del_cauca.rb +9 -0
- data/data/costa_rica/guanacaste.rb +8 -0
- data/data/cuba/camaguey.rb +9 -0
- data/data/cuba/ciego_de_avila.rb +8 -0
- data/data/cuba/las_tunas.rb +10 -0
- data/data/cuba/matanzas.rb +9 -0
- data/data/france/burgundy.rb +8 -0
- data/data/honduras/copan.rb +8 -0
- data/data/honduras/santa_barbara.rb +8 -0
- data/data/hong_kong/yau_tsim_mong.rb +8 -0
- data/data/india/andra_pradesh.rb +8 -0
- data/data/india/bihar.rb +12 -0
- data/data/iran/semnan.rb +19 -0
- data/data/italy/all.rb +4 -0
- data/data/japan/kagoshima.rb +8 -0
- data/data/kiribati/kirimati.rb +13 -0
- data/data/liberia/maryland.rb +8 -0
- data/data/malaysia/pahang.rb +4 -0
- data/data/mexico/nuevo_leon.rb +13 -0
- data/data/mexico/sinaloa.rb +8 -0
- data/data/nigeria/lagos.rb +8 -0
- data/data/northern_mariana_islands/saipan.rb +9 -0
- data/data/papua_new_guinea/new_ireland.rb +4 -0
- data/data/peru/amazonas.rb +15 -0
- data/data/philippines/guimaras.rb +7 -0
- data/data/philippines/pampanga.rb +10 -0
- data/data/poland/lubusz.rb +8 -0
- data/data/portugal/beja.rb +10 -0
- data/data/puerto_rico/florida.rb +5 -0
- data/data/regions.rb +480 -0
- data/data/solomon_islands/central.rb +8 -0
- data/data/solomon_islands/western.rb +9 -0
- data/data/south_africa/eastern_cape.rb +8 -0
- data/data/south_africa/gauteng.rb +4 -0
- data/data/south_africa/limpopo.rb +8 -0
- data/data/spain/aragon.rb +15 -0
- data/data/spain/canary_islands.rb +14 -0
- data/data/switzerland/valais.rb +12 -0
- data/data/united_kingdom/england.rb +52 -0
- data/data/united_kingdom/england/bedfordshire.rb +240 -0
- data/data/united_kingdom/england/berkshire.rb +17 -0
- data/data/united_kingdom/england/buckinghamshire.rb +23 -0
- data/data/united_kingdom/england/cambridgeshire.rb +17 -0
- data/data/united_kingdom/england/cheshire.rb +23 -0
- data/data/united_kingdom/england/cornwall.rb +47 -0
- data/data/united_kingdom/england/cumbria.rb +36 -0
- data/data/united_kingdom/england/derbyshire.rb +39 -0
- data/data/united_kingdom/england/devon.rb +51 -0
- data/data/united_kingdom/england/dorset.rb +25 -0
- data/data/united_kingdom/england/durham.rb +26 -0
- data/data/united_kingdom/england/east_riding_of_yorkshire.rb +17 -0
- data/data/united_kingdom/england/east_sussex.rb +24 -0
- data/data/united_kingdom/england/essex.rb +67 -0
- data/data/united_kingdom/england/gloucestershire.rb +35 -0
- data/data/united_kingdom/england/greater_manchester.rb +56 -0
- data/data/united_kingdom/england/hampshire.rb +36 -0
- data/data/united_kingdom/england/herefordshire.rb +9 -0
- data/data/united_kingdom/england/hertfordshire.rb +27 -0
- data/data/united_kingdom/england/isle_of_wight.rb +14 -0
- data/data/united_kingdom/england/kent.rb +45 -0
- data/data/united_kingdom/england/lancashire.rb +39 -0
- data/data/united_kingdom/england/leicestershire.rb +17 -0
- data/data/united_kingdom/england/lincolnshire.rb +42 -0
- data/data/united_kingdom/england/merseyside.rb +25 -0
- data/data/united_kingdom/england/norfolk.rb +32 -0
- data/data/united_kingdom/england/north_yorkshire.rb +46 -0
- data/data/united_kingdom/england/northamptonshire.rb +20 -0
- data/data/united_kingdom/england/northumberland.rb +18 -0
- data/data/united_kingdom/england/nottinghamshire.rb +28 -0
- data/data/united_kingdom/england/oxfordshire.rb +23 -0
- data/data/united_kingdom/england/rutland.rb +6 -0
- data/data/united_kingdom/england/shropshire.rb +26 -0
- data/data/united_kingdom/england/somerset.rb +19 -0
- data/data/united_kingdom/england/south_gloucestershire.rb +4 -0
- data/data/united_kingdom/england/south_yorkshire.rb +25 -0
- data/data/united_kingdom/england/staffordshire.rb +29 -0
- data/data/united_kingdom/england/suffolk.rb +32 -0
- data/data/united_kingdom/england/surrey.rb +33 -0
- data/data/united_kingdom/england/tyne_and_wear.rb +31 -0
- data/data/united_kingdom/england/warwickshire.rb +14 -0
- data/data/united_kingdom/england/west_midlands.rb +39 -0
- data/data/united_kingdom/england/west_sussex.rb +20 -0
- data/data/united_kingdom/england/west_yorkshire.rb +46 -0
- data/data/united_kingdom/england/wiltshire.rb +24 -0
- data/data/united_kingdom/england/worcestershire.rb +17 -0
- data/data/united_kingdom/england/yorkshire.rb +4 -0
- data/data/united_kingdom/wales.rb +8 -0
- data/data/united_states/alabama.rb +13 -0
- data/data/united_states/alaska.rb +9 -0
- data/data/united_states/arizona.rb +9 -0
- data/data/united_states/arkansas.rb +306 -0
- data/data/united_states/arkansas/arkansas/all.rb +17 -0
- data/data/united_states/arkansas/ashley/all.rb +12 -0
- data/data/united_states/arkansas/baxter/all.rb +16 -0
- data/data/united_states/arkansas/benton/all.rb +35 -0
- data/data/united_states/arkansas/boone/all.rb +17 -0
- data/data/united_states/arkansas/bradley/all.rb +11 -0
- data/data/united_states/arkansas/calhoun/all.rb +4 -0
- data/data/united_states/arkansas/carroll/all.rb +11 -0
- data/data/united_states/arkansas/chicot/all.rb +8 -0
- data/data/united_states/arkansas/clark/all.rb +11 -0
- data/data/united_states/arkansas/clay/all.rb +15 -0
- data/data/united_states/arkansas/cleburne/all.rb +14 -0
- data/data/united_states/arkansas/cleveland/all.rb +7 -0
- data/data/united_states/arkansas/columbia/all.rb +9 -0
- data/data/united_states/arkansas/conway/all.rb +14 -0
- data/data/united_states/arkansas/craighead/all.rb +16 -0
- data/data/united_states/arkansas/crawford/all.rb +15 -0
- data/data/united_states/arkansas/crittenden/all.rb +15 -0
- data/data/united_states/arkansas/cross/all.rb +10 -0
- data/data/united_states/arkansas/dallas/all.rb +5 -0
- data/data/united_states/arkansas/desha/all.rb +15 -0
- data/data/united_states/arkansas/drew/all.rb +10 -0
- data/data/united_states/arkansas/faulkner/all.rb +15 -0
- data/data/united_states/arkansas/franklin/all.rb +9 -0
- data/data/united_states/arkansas/fulton/all.rb +15 -0
- data/data/united_states/arkansas/garland/all.rb +17 -0
- data/data/united_states/arkansas/grant/all.rb +6 -0
- data/data/united_states/arkansas/greene/all.rb +12 -0
- data/data/united_states/arkansas/hempstead/all.rb +14 -0
- data/data/united_states/arkansas/hot_spring/all.rb +12 -0
- data/data/united_states/arkansas/howard/all.rb +12 -0
- data/data/united_states/arkansas/independence/all.rb +21 -0
- data/data/united_states/arkansas/izard/all.rb +17 -0
- data/data/united_states/arkansas/jackson/all.rb +15 -0
- data/data/united_states/arkansas/jefferson/all.rb +17 -0
- data/data/united_states/arkansas/johnson/all.rb +13 -0
- data/data/united_states/arkansas/lafayette/all.rb +6 -0
- data/data/united_states/arkansas/lawrence/all.rb +17 -0
- data/data/united_states/arkansas/lee/all.rb +9 -0
- data/data/united_states/arkansas/lincoln/all.rb +7 -0
- data/data/united_states/arkansas/little_river/all.rb +7 -0
- data/data/united_states/arkansas/logan/all.rb +17 -0
- data/data/united_states/arkansas/lonoke/all.rb +18 -0
- data/data/united_states/arkansas/madison/all.rb +15 -0
- data/data/united_states/arkansas/marion/all.rb +10 -0
- data/data/united_states/arkansas/miller/all.rb +13 -0
- data/data/united_states/arkansas/mississippi/all.rb +36 -0
- data/data/united_states/arkansas/monroe/all.rb +11 -0
- data/data/united_states/arkansas/montgomery/all.rb +12 -0
- data/data/united_states/arkansas/nevada/all.rb +11 -0
- data/data/united_states/arkansas/newton/all.rb +13 -0
- data/data/united_states/arkansas/ouachita/all.rb +10 -0
- data/data/united_states/arkansas/perry/all.rb +8 -0
- data/data/united_states/arkansas/phillips/all.rb +20 -0
- data/data/united_states/arkansas/pike/all.rb +10 -0
- data/data/united_states/arkansas/poinsett/all.rb +17 -0
- data/data/united_states/arkansas/polk/all.rb +14 -0
- data/data/united_states/arkansas/pope/all.rb +50 -0
- data/data/united_states/arkansas/prairie/all.rb +8 -0
- data/data/united_states/arkansas/pulaski/all.rb +26 -0
- data/data/united_states/arkansas/randolph/all.rb +7 -0
- data/data/united_states/arkansas/saline/all.rb +16 -0
- data/data/united_states/arkansas/scott/all.rb +10 -0
- data/data/united_states/arkansas/searcy/all.rb +12 -0
- data/data/united_states/arkansas/sebastian/all.rb +11 -0
- data/data/united_states/arkansas/sevier/all.rb +6 -0
- data/data/united_states/arkansas/sharp/all.rb +13 -0
- data/data/united_states/arkansas/st_francis/all.rb +14 -0
- data/data/united_states/arkansas/stone/all.rb +20 -0
- data/data/united_states/arkansas/union/all.rb +14 -0
- data/data/united_states/arkansas/van_buren/all.rb +15 -0
- data/data/united_states/arkansas/washington/all.rb +70 -0
- data/data/united_states/arkansas/white/all.rb +26 -0
- data/data/united_states/arkansas/woodruff/all.rb +7 -0
- data/data/united_states/arkansas/yell/all.rb +20 -0
- data/data/united_states/california.rb +348 -0
- data/data/united_states/california/alameda/all.rb +55 -0
- data/data/united_states/california/alpine/all.rb +39 -0
- data/data/united_states/california/amador/all.rb +114 -0
- data/data/united_states/california/butte/all.rb +90 -0
- data/data/united_states/california/calaveras/all.rb +54 -0
- data/data/united_states/california/colusa/all.rb +27 -0
- data/data/united_states/california/contra_costa/all.rb +171 -0
- data/data/united_states/california/del_norte/all.rb +33 -0
- data/data/united_states/california/el_dorado/all.rb +90 -0
- data/data/united_states/california/fresno/all.rb +147 -0
- data/data/united_states/california/glenn/all.rb +21 -0
- data/data/united_states/california/humbolt/all.rb +186 -0
- data/data/united_states/california/imperial/all.rb +102 -0
- data/data/united_states/california/inyo/all.rb +63 -0
- data/data/united_states/california/kern/all.rb +186 -0
- data/data/united_states/california/kings/all.rb +54 -0
- data/data/united_states/california/lake/all.rb +54 -0
- data/data/united_states/california/lassen/all.rb +54 -0
- data/data/united_states/california/los_angeles/all.rb +267 -0
- data/data/united_states/california/madera/all.rb +63 -0
- data/data/united_states/california/marin/all.rb +120 -0
- data/data/united_states/california/mariposa/all.rb +63 -0
- data/data/united_states/california/mendocino/all.rb +111 -0
- data/data/united_states/california/merced/all.rb +72 -0
- data/data/united_states/california/modoc/all.rb +48 -0
- data/data/united_states/california/mono/all.rb +48 -0
- data/data/united_states/california/monterey/all.rb +96 -0
- data/data/united_states/california/napa/all.rb +171 -0
- data/data/united_states/california/nevada/all.rb +168 -0
- data/data/united_states/california/orange/all.rb +159 -0
- data/data/united_states/california/placer/all.rb +243 -0
- data/data/united_states/california/plumas/all.rb +228 -0
- data/data/united_states/california/riverside/all.rb +342 -0
- data/data/united_states/california/sacramento/all.rb +118 -0
- data/data/united_states/california/san_benito/all.rb +37 -0
- data/data/united_states/california/san_bernardino/all.rb +345 -0
- data/data/united_states/california/san_diego/all.rb +237 -0
- data/data/united_states/california/san_joaquin/all.rb +121 -0
- data/data/united_states/california/san_luis_obispo/all.rb +127 -0
- data/data/united_states/california/san_mateo/all.rb +115 -0
- data/data/united_states/california/santa_barbara/all.rb +91 -0
- data/data/united_states/california/santa_clara/all.rb +112 -0
- data/data/united_states/california/santa_cruz/all.rb +102 -0
- data/data/united_states/california/shasta/all.rb +102 -0
- data/data/united_states/california/sierra/all.rb +66 -0
- data/data/united_states/california/siskiyou/all.rb +97 -0
- data/data/united_states/california/solano/all.rb +55 -0
- data/data/united_states/california/sonoma/all.rb +168 -0
- data/data/united_states/california/stanislaus/all.rb +142 -0
- data/data/united_states/california/sutter/all.rb +40 -0
- data/data/united_states/california/tehama/all.rb +58 -0
- data/data/united_states/california/trinity/all.rb +49 -0
- data/data/united_states/california/tulare/all.rb +246 -0
- data/data/united_states/california/tuolumne/all.rb +97 -0
- data/data/united_states/california/ventura/all.rb +123 -0
- data/data/united_states/california/yolo/all.rb +168 -0
- data/data/united_states/california/yuba/all.rb +141 -0
- data/data/united_states/colorado.rb +13 -0
- data/data/united_states/connecticut.rb +5 -0
- data/data/united_states/delaware.rb +5 -0
- data/data/united_states/florida.rb +25 -0
- data/data/united_states/georgia.rb +8 -0
- data/data/united_states/idaho.rb +4 -0
- data/data/united_states/illinois.rb +48 -0
- data/data/united_states/indiana.rb +60 -0
- data/data/united_states/iowa.rb +29 -0
- data/data/united_states/kansas.rb +455 -0
- data/data/united_states/kansas/allen/all.rb +14 -0
- data/data/united_states/kansas/anderson/all.rb +7 -0
- data/data/united_states/kansas/atchison/all.rb +8 -0
- data/data/united_states/kansas/barber/all.rb +17 -0
- data/data/united_states/kansas/barton/all.rb +13 -0
- data/data/united_states/kansas/bourbon/all.rb +8 -0
- data/data/united_states/kansas/brown/all.rb +11 -0
- data/data/united_states/kansas/butler/all.rb +18 -0
- data/data/united_states/kansas/chase/all.rb +9 -0
- data/data/united_states/kansas/chautauqua/all.rb +7 -0
- data/data/united_states/kansas/cherokee/all.rb +10 -0
- data/data/united_states/kansas/cheyenne/all.rb +2 -0
- data/data/united_states/kansas/clark/all.rb +4 -0
- data/data/united_states/kansas/clay/all.rb +9 -0
- data/data/united_states/kansas/cloud/all.rb +13 -0
- data/data/united_states/kansas/coffey/all.rb +6 -0
- data/data/united_states/kansas/comanche/all.rb +4 -0
- data/data/united_states/kansas/cowley/all.rb +14 -0
- data/data/united_states/kansas/crawford/all.rb +19 -0
- data/data/united_states/kansas/decatur/all.rb +6 -0
- data/data/united_states/kansas/dickinson/all.rb +23 -0
- data/data/united_states/kansas/doniphan/all.rb +11 -0
- data/data/united_states/kansas/douglas/all.rb +19 -0
- data/data/united_states/kansas/edwards/all.rb +5 -0
- data/data/united_states/kansas/elk/all.rb +5 -0
- data/data/united_states/kansas/ellis/all.rb +9 -0
- data/data/united_states/kansas/ellsworth/all.rb +5 -0
- data/data/united_states/kansas/finney/all.rb +16 -0
- data/data/united_states/kansas/ford/all.rb +8 -0
- data/data/united_states/kansas/franklin/all.rb +10 -0
- data/data/united_states/kansas/geary/all.rb +6 -0
- data/data/united_states/kansas/gove/all.rb +6 -0
- data/data/united_states/kansas/graham/all.rb +5 -0
- data/data/united_states/kansas/grant/all.rb +5 -0
- data/data/united_states/kansas/gray/all.rb +5 -0
- data/data/united_states/kansas/greeley/all.rb +2 -0
- data/data/united_states/kansas/greenwood/all.rb +10 -0
- data/data/united_states/kansas/hamilton/all.rb +3 -0
- data/data/united_states/kansas/harper/all.rb +7 -0
- data/data/united_states/kansas/harvey/all.rb +7 -0
- data/data/united_states/kansas/haskell/all.rb +2 -0
- data/data/united_states/kansas/hodgeman/all.rb +2 -0
- data/data/united_states/kansas/jackson/all.rb +9 -0
- data/data/united_states/kansas/jefferson/all.rb +16 -0
- data/data/united_states/kansas/jewell/all.rb +9 -0
- data/data/united_states/kansas/johnson/all.rb +22 -0
- data/data/united_states/kansas/kearny/all.rb +2 -0
- data/data/united_states/kansas/kingman/all.rb +10 -0
- data/data/united_states/kansas/kiowa/all.rb +5 -0
- data/data/united_states/kansas/labette/all.rb +10 -0
- data/data/united_states/kansas/lane/all.rb +2 -0
- data/data/united_states/kansas/leavenworth/all.rb +8 -0
- data/data/united_states/kansas/lincoln/all.rb +5 -0
- data/data/united_states/kansas/linn/all.rb +10 -0
- data/data/united_states/kansas/logan/all.rb +4 -0
- data/data/united_states/kansas/lyon/all.rb +10 -0
- data/data/united_states/kansas/marion/all.rb +17 -0
- data/data/united_states/kansas/marshall/all.rb +12 -0
- data/data/united_states/kansas/mcpherson/all.rb +11 -0
- data/data/united_states/kansas/meade/all.rb +3 -0
- data/data/united_states/kansas/miami/all.rb +7 -0
- data/data/united_states/kansas/mitchell/all.rb +9 -0
- data/data/united_states/kansas/montgomery/all.rb +10 -0
- data/data/united_states/kansas/morris/all.rb +9 -0
- data/data/united_states/kansas/morton/all.rb +4 -0
- data/data/united_states/kansas/nemaha/all.rb +9 -0
- data/data/united_states/kansas/neosho/all.rb +7 -0
- data/data/united_states/kansas/ness/all.rb +7 -0
- data/data/united_states/kansas/norton/all.rb +7 -0
- data/data/united_states/kansas/osage/all.rb +11 -0
- data/data/united_states/kansas/osborne/all.rb +6 -0
- data/data/united_states/kansas/ottawa/all.rb +6 -0
- data/data/united_states/kansas/pawnee/all.rb +4 -0
- data/data/united_states/kansas/phillips/all.rb +10 -0
- data/data/united_states/kansas/pottawatomie/all.rb +14 -0
- data/data/united_states/kansas/pratt/all.rb +8 -0
- data/data/united_states/kansas/rawlins/all.rb +4 -0
- data/data/united_states/kansas/reno/all.rb +15 -0
- data/data/united_states/kansas/republic/all.rb +11 -0
- data/data/united_states/kansas/rice/all.rb +15 -0
- data/data/united_states/kansas/riley/all.rb +7 -0
- data/data/united_states/kansas/rooks/all.rb +7 -0
- data/data/united_states/kansas/rush/all.rb +9 -0
- data/data/united_states/kansas/russell/all.rb +13 -0
- data/data/united_states/kansas/saline/all.rb +15 -0
- data/data/united_states/kansas/scott/all.rb +5 -0
- data/data/united_states/kansas/sedgwick/all.rb +28 -0
- data/data/united_states/kansas/seward/all.rb +2 -0
- data/data/united_states/kansas/shawnee/all.rb +12 -0
- data/data/united_states/kansas/sheridan/all.rb +2 -0
- data/data/united_states/kansas/sherman/all.rb +3 -0
- data/data/united_states/kansas/smith/all.rb +7 -0
- data/data/united_states/kansas/stafford/all.rb +6 -0
- data/data/united_states/kansas/stanton/all.rb +3 -0
- data/data/united_states/kansas/stevens/all.rb +2 -0
- data/data/united_states/kansas/sumner/all.rb +14 -0
- data/data/united_states/kansas/thomas/all.rb +7 -0
- data/data/united_states/kansas/trego/all.rb +3 -0
- data/data/united_states/kansas/wabaunsee/all.rb +10 -0
- data/data/united_states/kansas/wallace/all.rb +3 -0
- data/data/united_states/kansas/washington/all.rb +12 -0
- data/data/united_states/kansas/wichita/all.rb +2 -0
- data/data/united_states/kansas/wilson/all.rb +7 -0
- data/data/united_states/kansas/woodson/all.rb +5 -0
- data/data/united_states/kansas/wyandotte/all.rb +5 -0
- data/data/united_states/kentucky.rb +21 -0
- data/data/united_states/louisiana.rb +16 -0
- data/data/united_states/maine.rb +36 -0
- data/data/united_states/massachusetts.rb +20 -0
- data/data/united_states/michigan.rb +20 -0
- data/data/united_states/minnesota.rb +50 -0
- data/data/united_states/mississippi.rb +12 -0
- data/data/united_states/missouri.rb +26 -0
- data/data/united_states/montana.rb +4 -0
- data/data/united_states/nebraska.rb +12 -0
- data/data/united_states/nevada.rb +8 -0
- data/data/united_states/new_hampshire.rb +8 -0
- data/data/united_states/new_jersey.rb +24 -0
- data/data/united_states/new_mexico.rb +13 -0
- data/data/united_states/new_york.rb +76 -0
- data/data/united_states/north_carolina.rb +25 -0
- data/data/united_states/north_dakota.rb +12 -0
- data/data/united_states/ohio.rb +38 -0
- data/data/united_states/oklahoma.rb +4 -0
- data/data/united_states/oregon.rb +8 -0
- data/data/united_states/pennsylvania.rb +28 -0
- data/data/united_states/south_carolina.rb +12 -0
- data/data/united_states/south_dakota.rb +8 -0
- data/data/united_states/tennessee.rb +4 -0
- data/data/united_states/texas.rb +28 -0
- data/data/united_states/utah.rb +12 -0
- data/data/united_states/vermont.rb +12 -0
- data/data/united_states/virginia.rb +20 -0
- data/data/united_states/washington.rb +8 -0
- data/data/united_states/west_virginia.rb +37 -0
- data/data/united_states/wisconsin.rb +53 -0
- data/data/uruguay/florida.rb +5 -0
- data/data/venezuela/amazonas.rb +4 -0
- data/lib/spotter.rb +31 -0
- data/lib/spotter/region.rb +14 -0
- data/lib/spotter/result.rb +44 -0
- data/test/spotter/region_test.rb +26 -0
- data/test/spotter/result_test.rb +38 -0
- data/test/spotter_test.rb +68 -0
- data/test/test_helper.rb +12 -0
- metadata +517 -0
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ODU1OWZlNjI3Nzg3MGQ0ODAzNDJkZjQwNWZhZjNhNDQ2ZmQ5MWU2NA==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
MzM3MDZkMDFhYTBkMDc5ZjY1YzM0ZTYyOWMwODA3NGZiNmMzNmEzNA==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
MWJhMTcyNGJiYzY3NjJjNGQ2ODNmYzg0MGZjNjIyODZiYjMzNmZkMzRmMjcw
|
10
|
+
MTk2NjBjZDM5Nzc5MmNhMGMzMTdjY2Q1MzU2YzAyY2ExODViYTI0ZWQ0YzRi
|
11
|
+
OTY1MWVlODBjYzI2ZTA3ZjczNzMwNzdkNTk3MTNhNDg5YjY1ZmQ=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
NzlhMGZiMDk1MDhhOTllYTI1Y2E5YjZmOTBkZmYxYTc0OTk1Yjc3NjBjZTJi
|
14
|
+
ODFkMWE2ZjU4YmM2ZWYzM2Y3OGNmZTQ4ODMzMWVhNjU2NjY2NzFhODgyY2Q1
|
15
|
+
ZWJlNjJhZjU3ZWVlMDQ5ZGU2MzA2YzU2YjdjYTc2MGJlNjMwNDY=
|
data/CHANGELOG.mdown
ADDED
data/Gemfile
ADDED
data/Gemfile.lock
ADDED
@@ -0,0 +1,42 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
spotter (1.0.1)
|
5
|
+
hashrules (> 1.1.3, < 1.2)
|
6
|
+
titleize
|
7
|
+
unicode
|
8
|
+
|
9
|
+
GEM
|
10
|
+
remote: https://rubygems.org/
|
11
|
+
specs:
|
12
|
+
activesupport (3.2.13)
|
13
|
+
i18n (= 0.6.1)
|
14
|
+
multi_json (~> 1.0)
|
15
|
+
ansi (1.4.3)
|
16
|
+
bourne (1.4.0)
|
17
|
+
mocha (~> 0.13.2)
|
18
|
+
hashrules (1.1.4)
|
19
|
+
i18n (0.6.1)
|
20
|
+
metaclass (0.0.1)
|
21
|
+
mocha (0.13.3)
|
22
|
+
metaclass (~> 0.0.1)
|
23
|
+
multi_json (1.7.2)
|
24
|
+
shoulda (3.4.0)
|
25
|
+
shoulda-context (~> 1.0, >= 1.0.1)
|
26
|
+
shoulda-matchers (~> 1.0, >= 1.4.1)
|
27
|
+
shoulda-context (1.1.0)
|
28
|
+
shoulda-matchers (1.5.6)
|
29
|
+
activesupport (>= 3.0.0)
|
30
|
+
bourne (~> 1.3)
|
31
|
+
titleize (1.3.0)
|
32
|
+
turn (0.9.6)
|
33
|
+
ansi
|
34
|
+
unicode (0.4.4)
|
35
|
+
|
36
|
+
PLATFORMS
|
37
|
+
ruby
|
38
|
+
|
39
|
+
DEPENDENCIES
|
40
|
+
shoulda
|
41
|
+
spotter!
|
42
|
+
turn
|
data/README.mdown
ADDED
@@ -0,0 +1,64 @@
|
|
1
|
+
|
2
|
+
# Spotter
|
3
|
+
|
4
|
+
Robustly identify countries, states, islands, cities and whatnot from text. This is still BETA. Although it supports most countries and states, it still lacks regions and cities for the most part of the world.
|
5
|
+
|
6
|
+
## Description
|
7
|
+
|
8
|
+
What if I ask you: "What region is 'ontario'", or "where is 'ca'"? I would answer: Ontario is a state in Canada as well as a city in California. CA is the ISO abbreviation for Canada, and also the abbreviation for California.
|
9
|
+
|
10
|
+
The goal of this gem is such: Given a string, do your very best to identify all possible locations, and order them by significance. Provide as much information as possible; What kind of region is this? Country? City? Island? Continent?
|
11
|
+
|
12
|
+
## Usage
|
13
|
+
|
14
|
+
```ruby
|
15
|
+
require 'spotter'
|
16
|
+
|
17
|
+
spotter = Spotter.new
|
18
|
+
|
19
|
+
results = spotter.identify('new york')
|
20
|
+
|
21
|
+
puts results.first.to_s # => "United States, New York"
|
22
|
+
|
23
|
+
puts results.first.regions[0].name # => "United States"
|
24
|
+
puts results.first.regions[0].type # => "country"
|
25
|
+
puts results.first.regions[1].name # => "New York"
|
26
|
+
puts results.first.regions[1].type # => "state"
|
27
|
+
```
|
28
|
+
|
29
|
+
It can handle text in different cases, spellings, etc.
|
30
|
+
|
31
|
+
```ruby
|
32
|
+
spotter.identify('ontARIO, california').first.to_s
|
33
|
+
# => "United States, California, San Bernardino, Ontario"
|
34
|
+
|
35
|
+
spotter.identify('росСиЯ').first.to_s # => 'Russia'
|
36
|
+
spotter.identify('ruSSia').first.to_s # => 'Russia'
|
37
|
+
```
|
38
|
+
|
39
|
+
It returns all matches found:
|
40
|
+
|
41
|
+
```ruby
|
42
|
+
results = spotter.identify('canada')
|
43
|
+
puts results[0].to_s # => 'Canada'
|
44
|
+
puts results[1].to_s # => 'United States, Kansas, Canada'
|
45
|
+
```
|
46
|
+
|
47
|
+
It works with abbreviations too:
|
48
|
+
|
49
|
+
```ruby
|
50
|
+
puts spotter.identify('se').first.to_s # => 'Sweden'
|
51
|
+
```
|
52
|
+
|
53
|
+
## Rake task
|
54
|
+
|
55
|
+
You can also use the gem with the rake task `identify` as such:
|
56
|
+
|
57
|
+
```
|
58
|
+
rake identify['new york']
|
59
|
+
```
|
60
|
+
|
61
|
+
## TODO
|
62
|
+
|
63
|
+
* Add support for more states, cities and other regions
|
64
|
+
* Add support for html/bbcode tagging of search queries, showing identified parts of the string
|
data/Rakefile
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
require 'rake/testtask'
|
2
|
+
|
3
|
+
Rake::TestTask.new do |t|
|
4
|
+
t.libs << 'test'
|
5
|
+
t.test_files = FileList['test/**/*_test.rb']
|
6
|
+
t.verbose = true
|
7
|
+
end
|
8
|
+
|
9
|
+
task :default => :test
|
10
|
+
|
11
|
+
|
12
|
+
desc "Attempt to identify region from string"
|
13
|
+
task :identify, :string do |t,args|
|
14
|
+
require 'bundler/setup'
|
15
|
+
require 'spotter'
|
16
|
+
|
17
|
+
string = args[:string]
|
18
|
+
spotter = Spotter.new
|
19
|
+
|
20
|
+
results = spotter.identify(string)
|
21
|
+
puts "="*30
|
22
|
+
results.each do |result|
|
23
|
+
p result
|
24
|
+
end
|
25
|
+
puts "="*30
|
26
|
+
end
|
data/app.gemspec
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
|
3
|
+
Gem::Specification.new do |gem|
|
4
|
+
gem.authors = ['Mikael Wikman']
|
5
|
+
gem.email = ['mikael@wikman.me']
|
6
|
+
gem.summary = %q{Robustly identify countries, states, islands, cities and whatnot from text. This is still BETA}
|
7
|
+
gem.description = %Q{What if I ask you: "What country is 'ontario'", or "where is 'ca'"? I would answer: Ontario is a state in Canada and a city in California. CA is the ISO abbreviation for Canada, and also the abbreviation for California.\nThe goal of this gem is such: Given a string, do your very best to identify all possible locations, and order them by significance. Provide as much information as possible; What kind of region is this? Country? City? Island? Continent?}
|
8
|
+
gem.homepage = "https://github.com/mikaelwikman/spotter"
|
9
|
+
|
10
|
+
gem.files = `git ls-files`.split("\n")
|
11
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
12
|
+
gem.test_files = gem.files.grep(%r{^(test|features)/})
|
13
|
+
gem.name = "region-spotter"
|
14
|
+
gem.require_paths = ["lib"]
|
15
|
+
gem.version = '1.0.1'
|
16
|
+
gem.add_dependency 'hashrules', '>1.1.3', '<1.2'
|
17
|
+
gem.add_dependency 'titleize'
|
18
|
+
gem.add_dependency 'unicode'
|
19
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
|
2
|
+
match 'ab', 'alberta' do
|
3
|
+
set subregion: 'alberta'
|
4
|
+
|
5
|
+
match 'calgary' do
|
6
|
+
set place: 'calgary'
|
7
|
+
end
|
8
|
+
|
9
|
+
match 'new norway' do
|
10
|
+
set place: 'new norway'
|
11
|
+
end
|
12
|
+
|
13
|
+
match 'queensland' do
|
14
|
+
set place: 'queensland'
|
15
|
+
end
|
16
|
+
|
17
|
+
match w(/(new )?norway/) do
|
18
|
+
set place: 'new norway'
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
|
2
|
+
match w(/(ca )?on/), 'ontario' do
|
3
|
+
set subregion: 'ontario'
|
4
|
+
|
5
|
+
match 'gravenhurst' do
|
6
|
+
set place: 'gravenhurst'
|
7
|
+
end
|
8
|
+
|
9
|
+
match 'mississippi mills' do
|
10
|
+
set place: 'mississippi mills'
|
11
|
+
end
|
12
|
+
|
13
|
+
match 'jordan' do
|
14
|
+
set place: 'jordan'
|
15
|
+
end
|
16
|
+
|
17
|
+
match 'hawkesbury' do
|
18
|
+
set place: 'hawkesbury'
|
19
|
+
end
|
20
|
+
|
21
|
+
match 'london' do
|
22
|
+
set place: 'london'
|
23
|
+
end
|
24
|
+
|
25
|
+
match 'long beach' do
|
26
|
+
set place: 'long beach'
|
27
|
+
end
|
28
|
+
end
|