diff options
| author | Xe Iaso <me@xeiaso.net> | 2025-04-26 20:07:06 -0400 |
|---|---|---|
| committer | Xe Iaso <me@xeiaso.net> | 2025-04-26 20:07:06 -0400 |
| commit | 62665656ffc8c20b7913b64dd14f4739bdcf29e7 (patch) | |
| tree | 52893728becf4b7cb7b6b21f36d3a030b33ab376 /misc | |
| parent | 0a566abb1557f1a06723564b080061c06afd5de9 (diff) | |
| download | x-62665656ffc8c20b7913b64dd14f4739bdcf29e7.tar.xz x-62665656ffc8c20b7913b64dd14f4739bdcf29e7.zip | |
chore: reformat the world, set up autoformat on commit
Signed-off-by: Xe Iaso <me@xeiaso.net>
Diffstat (limited to 'misc')
| -rw-r--r-- | misc/i18n/README.md | 152 | ||||
| -rw-r--r-- | misc/i18n/translations/de_DE.json | 40 | ||||
| -rw-r--r-- | misc/i18n/translations/en_US.json | 40 | ||||
| -rw-r--r-- | misc/i18n/translations/sr_RS.json | 40 | ||||
| -rw-r--r-- | misc/pla-tracker/pokemans.json | 245 |
5 files changed, 383 insertions, 134 deletions
diff --git a/misc/i18n/README.md b/misc/i18n/README.md index c260ea2..c08302c 100644 --- a/misc/i18n/README.md +++ b/misc/i18n/README.md @@ -1,79 +1,85 @@ -lingo -===== +# lingo Very basic Golang library for i18n. There are others that do the job, but this is my take on the problem. -Features: ---------- +## Features: + 1. Storing messages in JSON files. 2. Support for nested declarations. -2. Detecting language based on Request headers. -3. Very simple to use. - -Usage: ------- - 1. Import Lingo into your project - - ```go - import "github.com/kortem/lingo" - ``` - 1. Create a dir to store translations, and write them in JSON files named [locale].json. For example: - - ``` - en_US.json - sr_RS.json - de.json - ... - ``` - You can write nested JSON too. - ```json - { - "main.title" : "CutleryPlus", - "main.subtitle" : "Knives that put cut in cutlery.", - "menu" : { - "home" : "Home", - "products": { - "self": "Products", - "forks" : "Forks", - "knives" : "Knives", - "spoons" : "Spoons" - }, - } - } - ``` - 2. Initialize a Lingo like this: - - ```go - l := lingo.New("default_locale", "path/to/translations/dir") - ``` - - 3. Get bundle for specific locale via either `string`: - - ```go - t1 := l.TranslationsForLocale("en_US") - t2 := l.TranslationsForLocale("de_DE") - ``` - This way Lingo will return the bundle for specific locale, or default if given is not found. - Alternatively (or primarily), you can get it with `*http.Request`: - - ```go - t := l.TranslationsForRequest(req) - ``` - This way Lingo finds best suited locale via `Accept-Language` header, or if there is no match, returns default. - `Accept-Language` header is set by the browser, so basically it will serve the language the user has set to his browser. - 4. Once you get T instance just fire away! - - ```go - r1 := t1.Value("main.subtitle") - // "Knives that put cut in cutlery." - r1 := t2.Value("main.subtitle") - // "Messer, die legte in Besteck geschnitten." - r3 := t1.Value("menu.products.self") - // "Products" - r5 := t1.Value("error.404", req.URL.Path) - // "Page index.html not found!" - ``` - -Contributions: ------ +3. Detecting language based on Request headers. +4. Very simple to use. + +## Usage: + +1. Import Lingo into your project + + ```go + import "github.com/kortem/lingo" + ``` + +1. Create a dir to store translations, and write them in JSON files named [locale].json. For example: + + ``` + en_US.json + sr_RS.json + de.json + ... + ``` + + You can write nested JSON too. + + ```json + { + "main.title": "CutleryPlus", + "main.subtitle": "Knives that put cut in cutlery.", + "menu": { + "home": "Home", + "products": { + "self": "Products", + "forks": "Forks", + "knives": "Knives", + "spoons": "Spoons" + } + } + } + ``` + +1. Initialize a Lingo like this: + + ```go + l := lingo.New("default_locale", "path/to/translations/dir") + ``` + +1. Get bundle for specific locale via either `string`: + + ```go + t1 := l.TranslationsForLocale("en_US") + t2 := l.TranslationsForLocale("de_DE") + ``` + + This way Lingo will return the bundle for specific locale, or default if given is not found. + Alternatively (or primarily), you can get it with `*http.Request`: + + ```go + t := l.TranslationsForRequest(req) + ``` + + This way Lingo finds best suited locale via `Accept-Language` header, or if there is no match, returns default. + `Accept-Language` header is set by the browser, so basically it will serve the language the user has set to his browser. + +1. Once you get T instance just fire away! + + ```go + r1 := t1.Value("main.subtitle") + // "Knives that put cut in cutlery." + r1 := t2.Value("main.subtitle") + // "Messer, die legte in Besteck geschnitten." + r3 := t1.Value("menu.products.self") + // "Products" + r5 := t1.Value("error.404", req.URL.Path) + // "Page index.html not found!" + ``` + +## Contributions: + I regard this little library as feature-complete, but if you have an idea on how to improve it, feel free to create issues. Also, pull requests are welcome. Enjoy! diff --git a/misc/i18n/translations/de_DE.json b/misc/i18n/translations/de_DE.json index c12186d..5a30a62 100644 --- a/misc/i18n/translations/de_DE.json +++ b/misc/i18n/translations/de_DE.json @@ -1,32 +1,32 @@ { - "main.title" : "CutleryPlus", - "main.subtitle" : "Messer, die legte in Besteck geschnitten.", - "menu" : { - "home" : "Home", + "main.title": "CutleryPlus", + "main.subtitle": "Messer, die legte in Besteck geschnitten.", + "menu": { + "home": "Home", "products": { "self": "Produkte", - "forks" : "Gabeln", - "knives" : "Messer", - "spoons" : "Löffel" + "forks": "Gabeln", + "knives": "Messer", + "spoons": "Löffel" }, - "gallery" : "Galerie", - "about" : "Über uns", - "contact" : "Kontakt" + "gallery": "Galerie", + "about": "Über uns", + "contact": "Kontakt" }, - "home" : { + "home": { "title": "Willkommen in CutleryPlus!", - "text" : { + "text": { "p1": "Lorem ipsum...", "p2": "Ein weiterer ipsum lorem." } }, - "error" : { - "404" : "Seite {0} wurde nicht gefunden.", - "500" : "Stimmt etwas nicht auf unserer Seite ist, versuchen Sie es erneut.", - "contact" : { - "name" : "Sie müssen Ihren Namen eingeben.", - "email" : "Sie müssen Ihre E-Mail ein.", - "text" : "Sie können eine leere Nachricht nicht zu senden." + "error": { + "404": "Seite {0} wurde nicht gefunden.", + "500": "Stimmt etwas nicht auf unserer Seite ist, versuchen Sie es erneut.", + "contact": { + "name": "Sie müssen Ihren Namen eingeben.", + "email": "Sie müssen Ihre E-Mail ein.", + "text": "Sie können eine leere Nachricht nicht zu senden." } } -}
\ No newline at end of file +} diff --git a/misc/i18n/translations/en_US.json b/misc/i18n/translations/en_US.json index 6fa0b8f..6f36f6d 100644 --- a/misc/i18n/translations/en_US.json +++ b/misc/i18n/translations/en_US.json @@ -1,32 +1,32 @@ { - "main.title" : "CutleryPlus", - "main.subtitle" : "Knives that put cut in cutlery.", - "menu" : { - "home" : "Home", + "main.title": "CutleryPlus", + "main.subtitle": "Knives that put cut in cutlery.", + "menu": { + "home": "Home", "products": { "self": "Products", - "forks" : "Forks", - "knives" : "Knives", - "spoons" : "Spoons" + "forks": "Forks", + "knives": "Knives", + "spoons": "Spoons" }, - "gallery" : "Gallery", - "about" : "About us", - "contact" : "Contact" + "gallery": "Gallery", + "about": "About us", + "contact": "Contact" }, - "home" : { + "home": { "title": "Welcome to CutleryPlus!", - "text" : { + "text": { "p1": "Lorem ipsum...", "p2": "Another ipsum lorem." } }, - "error" : { - "404" : "Page {0} not found!", - "500" : "Something is wrong on our side, please try again.", - "contact" : { - "name" : "You must enter your name.", - "email" : "You must enter your email.", - "text" : "You cannot send an empty message." + "error": { + "404": "Page {0} not found!", + "500": "Something is wrong on our side, please try again.", + "contact": { + "name": "You must enter your name.", + "email": "You must enter your email.", + "text": "You cannot send an empty message." } } -}
\ No newline at end of file +} diff --git a/misc/i18n/translations/sr_RS.json b/misc/i18n/translations/sr_RS.json index fe2bea5..dbc7d6d 100644 --- a/misc/i18n/translations/sr_RS.json +++ b/misc/i18n/translations/sr_RS.json @@ -1,32 +1,32 @@ { - "main.title" : "CutleryPlus", - "main.subtitle" : "Escajg za svakoga", - "menu" : { - "home" : "Pocetna", + "main.title": "CutleryPlus", + "main.subtitle": "Escajg za svakoga", + "menu": { + "home": "Pocetna", "products": { "self": "Proizvodi", - "forks" : "Viljuske", - "knives" : "Nozevi", - "spoons" : "Kasike" + "forks": "Viljuske", + "knives": "Nozevi", + "spoons": "Kasike" }, - "gallery" : "Galerija", - "about" : "O nama", - "contact" : "Kontakt" + "gallery": "Galerija", + "about": "O nama", + "contact": "Kontakt" }, - "home" : { + "home": { "title": "Dobrodosli u CutleryPlus!", - "text" : { + "text": { "p1": "Lorem ipsum...", "p2": "Jos jedan ipsum lorem." } }, - "error" : { - "404" : "Stranica {0} ne postoji.", - "500" : "Greska sa nase strane, pokusajte ponovo.", - "contact" : { - "name" : "Ime ne sme biti prazno.", - "email" : "Email ne sme biti prazan.", - "text" : "Ne mozete poslati praznu poruku." + "error": { + "404": "Stranica {0} ne postoji.", + "500": "Greska sa nase strane, pokusajte ponovo.", + "contact": { + "name": "Ime ne sme biti prazno.", + "email": "Email ne sme biti prazan.", + "text": "Ne mozete poslati praznu poruku." } } -}
\ No newline at end of file +} diff --git a/misc/pla-tracker/pokemans.json b/misc/pla-tracker/pokemans.json index e898f79..76e8d42 100644 --- a/misc/pla-tracker/pokemans.json +++ b/misc/pla-tracker/pokemans.json @@ -1 +1,244 @@ -[{"id":"#001","name":"Rowlet"},{"id":"#002","name":"Dartrix"},{"id":"#003","name":"Decidueye"},{"id":"#004","name":"Cyndaquil"},{"id":"#005","name":"Quilava"},{"id":"#006","name":"Typhlosion"},{"id":"#007","name":"Oshawott"},{"id":"#008","name":"Dewott"},{"id":"#009","name":"Samurott"},{"id":"#010","name":"Bidoof"},{"id":"#011","name":"Bibarel"},{"id":"#012","name":"Starly"},{"id":"#013","name":"Staravia"},{"id":"#014","name":"Staraptor"},{"id":"#015","name":"Shinx"},{"id":"#016","name":"Luxio"},{"id":"#017","name":"Luxray"},{"id":"#018","name":"Wurmple"},{"id":"#019","name":"Silcoon"},{"id":"#020","name":"Beautifly"},{"id":"#021","name":"Cascoon"},{"id":"#022","name":"Dustox"},{"id":"#023","name":"Ponyta"},{"id":"#024","name":"Rapidash"},{"id":"#025","name":"Eevee"},{"id":"#026","name":"Vaporeon"},{"id":"#027","name":"Jolteon"},{"id":"#028","name":"Flareon"},{"id":"#029","name":"Espeon"},{"id":"#030","name":"Umbreon"},{"id":"#031","name":"Leafeon"},{"id":"#032","name":"Glaceon"},{"id":"#033","name":"Sylveon"},{"id":"#034","name":"Zubat"},{"id":"#035","name":"Golbat"},{"id":"#036","name":"Crobat"},{"id":"#037","name":"Drifloon"},{"id":"#038","name":"Drifblim"},{"id":"#039","name":"Kricketot"},{"id":"#040","name":"Kricketune"},{"id":"#041","name":"Buizel"},{"id":"#042","name":"Floatzel"},{"id":"#043","name":"Burmy"},{"id":"#044","name":"Wormadam"},{"id":"#045","name":"Mothim"},{"id":"#046","name":"Geodude"},{"id":"#047","name":"Graveler"},{"id":"#048","name":"Golem"},{"id":"#049","name":"Stantler"},{"id":"#050","name":"Wyrdeer"},{"id":"#051","name":"Munchlax"},{"id":"#052","name":"Snorlax"},{"id":"#053","name":"Paras"},{"id":"#054","name":"Parasect"},{"id":"#055","name":"Pichu"},{"id":"#056","name":"Pikachu"},{"id":"#057","name":"Raichu"},{"id":"#058","name":"Abra"},{"id":"#059","name":"Kadabra"},{"id":"#060","name":"Alakazam"},{"id":"#061","name":"Chimchar"},{"id":"#062","name":"Monferno"},{"id":"#063","name":"Infernape"},{"id":"#064","name":"Buneary"},{"id":"#065","name":"Lopunny"},{"id":"#066","name":"Cherubi"},{"id":"#067","name":"Cherrim"},{"id":"#068","name":"Psyduck"},{"id":"#069","name":"Golduck"},{"id":"#070","name":"Combee"},{"id":"#071","name":"Vespiquen"},{"id":"#072","name":"Scyther"},{"id":"#073","name":"Kleavor"},{"id":"#074","name":"Scizor"},{"id":"#075","name":"Heracross"},{"id":"#076","name":"Mime Jr."},{"id":"#077","name":"Mr. Mime"},{"id":"#078","name":"Aipom"},{"id":"#079","name":"Ambipom"},{"id":"#080","name":"Magikarp"},{"id":"#081","name":"Gyarados"},{"id":"#082","name":"Shellos"},{"id":"#083","name":"Gastrodon"},{"id":"#084","name":"Qwilfish"},{"id":"#085","name":"Overqwil"},{"id":"#086","name":"Happiny"},{"id":"#087","name":"Chansey"},{"id":"#088","name":"Blissey"},{"id":"#089","name":"Budew"},{"id":"#090","name":"Roselia"},{"id":"#091","name":"Roserade"},{"id":"#092","name":"Carnivine"},{"id":"#093","name":"Petilil"},{"id":"#094","name":"Lilligant"},{"id":"#095","name":"Tangela"},{"id":"#096","name":"Tangrowth"},{"id":"#097","name":"Barboach"},{"id":"#098","name":"Whiscash"},{"id":"#099","name":"Croagunk"},{"id":"#100","name":"Toxicroak"},{"id":"#101","name":"Ralts"},{"id":"#102","name":"Kirlia"},{"id":"#103","name":"Gardevoir"},{"id":"#104","name":"Gallade"},{"id":"#105","name":"Yanma"},{"id":"#106","name":"Yanmega"},{"id":"#107","name":"Hippopotas"},{"id":"#108","name":"Hippowdon"},{"id":"#109","name":"Pachirisu"},{"id":"#110","name":"Stunky"},{"id":"#111","name":"Skuntank"},{"id":"#112","name":"Teddiursa"},{"id":"#113","name":"Ursaring"},{"id":"#114","name":"Ursaluna"},{"id":"#115","name":"Goomy"},{"id":"#116","name":"Sliggoo"},{"id":"#117","name":"Goodra"},{"id":"#118","name":"Onix"},{"id":"#119","name":"Steelix"},{"id":"#120","name":"Rhyhorn"},{"id":"#121","name":"Rhydon"},{"id":"#122","name":"Rhyperior"},{"id":"#123","name":"Bonsly"},{"id":"#124","name":"Sudowoodo"},{"id":"#125","name":"Lickitung"},{"id":"#126","name":"Lickilicky"},{"id":"#127","name":"Togepi"},{"id":"#128","name":"Togetic"},{"id":"#129","name":"Togekiss"},{"id":"#130","name":"Turtwig"},{"id":"#131","name":"Grotle"},{"id":"#132","name":"Torterra"},{"id":"#133","name":"Porygon"},{"id":"#134","name":"Porygon2"},{"id":"#135","name":"Porygon-Z"},{"id":"#136","name":"Gastly"},{"id":"#137","name":"Haunter"},{"id":"#138","name":"Gengar"},{"id":"#139","name":"Spiritomb"},{"id":"#140","name":"Murkrow"},{"id":"#141","name":"Honchkrow"},{"id":"#142","name":"Unown"},{"id":"#143","name":"Spheal"},{"id":"#144","name":"Sealeo"},{"id":"#145","name":"Walrein"},{"id":"#146","name":"Remoraid"},{"id":"#147","name":"Octillery"},{"id":"#148","name":"Skorupi"},{"id":"#149","name":"Drapion"},{"id":"#150","name":"Growlithe"},{"id":"#151","name":"Arcanine"},{"id":"#152","name":"Glameow"},{"id":"#153","name":"Purugly"},{"id":"#154","name":"Machop"},{"id":"#155","name":"Machoke"},{"id":"#156","name":"Machamp"},{"id":"#157","name":"Chatot"},{"id":"#158","name":"Duskull"},{"id":"#159","name":"Dusclops"},{"id":"#160","name":"Dusknoir"},{"id":"#161","name":"Piplup"},{"id":"#162","name":"Prinplup"},{"id":"#163","name":"Empoleon"},{"id":"#164","name":"Mantyke"},{"id":"#165","name":"Mantine"},{"id":"#166","name":"Basculin"},{"id":"#167","name":"Basculegion"},{"id":"#168","name":"Vulpix"},{"id":"#169","name":"Ninetales"},{"id":"#170","name":"Tentacool"},{"id":"#171","name":"Tentacruel"},{"id":"#172","name":"Finneon"},{"id":"#173","name":"Lumineon"},{"id":"#174","name":"Magby"},{"id":"#175","name":"Magmar"},{"id":"#176","name":"Magmortar"},{"id":"#177","name":"Magnemite"},{"id":"#178","name":"Magneton"},{"id":"#179","name":"Magnezone"},{"id":"#180","name":"Bronzor"},{"id":"#181","name":"Bronzong"},{"id":"#182","name":"Elekid"},{"id":"#183","name":"Electabuzz"},{"id":"#184","name":"Electivire"},{"id":"#185","name":"Gligar"},{"id":"#186","name":"Gliscor"},{"id":"#187","name":"Gible"},{"id":"#188","name":"Gabite"},{"id":"#189","name":"Garchomp"},{"id":"#190","name":"Nosepass"},{"id":"#191","name":"Probopass"},{"id":"#192","name":"Voltorb"},{"id":"#193","name":"Electrode"},{"id":"#194","name":"Rotom"},{"id":"#195","name":"Chingling"},{"id":"#196","name":"Chimecho"},{"id":"#197","name":"Misdreavus"},{"id":"#198","name":"Mismagius"},{"id":"#199","name":"Cleffa"},{"id":"#200","name":"Clefairy"},{"id":"#201","name":"Clefable"},{"id":"#202","name":"Sneasel"},{"id":"#203","name":"Sneasler"},{"id":"#204","name":"Weavile"},{"id":"#205","name":"Snorunt"},{"id":"#206","name":"Glalie"},{"id":"#207","name":"Froslass"},{"id":"#208","name":"Cranidos"},{"id":"#209","name":"Rampardos"},{"id":"#210","name":"Shieldon"},{"id":"#211","name":"Bastiodon"},{"id":"#212","name":"Swinub"},{"id":"#213","name":"Piloswine"},{"id":"#214","name":"Mamoswine"},{"id":"#215","name":"Bergmite"},{"id":"#216","name":"Avalugg"},{"id":"#217","name":"Snover"},{"id":"#218","name":"Abomasnow"},{"id":"#219","name":"Zorua"},{"id":"#220","name":"Zoroark"},{"id":"#221","name":"Rufflet"},{"id":"#222","name":"Braviary"},{"id":"#223","name":"Riolu"},{"id":"#224","name":"Lucario"},{"id":"#225","name":"Uxie"},{"id":"#226","name":"Mesprit"},{"id":"#227","name":"Azelf"},{"id":"#228","name":"Heatran"},{"id":"#229","name":"Regigigas"},{"id":"#230","name":"Cresselia"},{"id":"#231","name":"Tornadus"},{"id":"#232","name":"Thundurus"},{"id":"#233","name":"Landorus"},{"id":"#234","name":"Enamorus"},{"id":"#235","name":"Dialga"},{"id":"#236","name":"Palkia"},{"id":"#237","name":"Giratina"},{"id":"#238","name":"Arceus"},{"id":"#239","name":"Phione"},{"id":"#240","name":"Manaphy"},{"id":"#241","name":"Shaymin"},{"id":"#242","name":"Darkrai"}]
\ No newline at end of file +[ + { "id": "#001", "name": "Rowlet" }, + { "id": "#002", "name": "Dartrix" }, + { "id": "#003", "name": "Decidueye" }, + { "id": "#004", "name": "Cyndaquil" }, + { "id": "#005", "name": "Quilava" }, + { "id": "#006", "name": "Typhlosion" }, + { "id": "#007", "name": "Oshawott" }, + { "id": "#008", "name": "Dewott" }, + { "id": "#009", "name": "Samurott" }, + { "id": "#010", "name": "Bidoof" }, + { "id": "#011", "name": "Bibarel" }, + { "id": "#012", "name": "Starly" }, + { "id": "#013", "name": "Staravia" }, + { "id": "#014", "name": "Staraptor" }, + { "id": "#015", "name": "Shinx" }, + { "id": "#016", "name": "Luxio" }, + { "id": "#017", "name": "Luxray" }, + { "id": "#018", "name": "Wurmple" }, + { "id": "#019", "name": "Silcoon" }, + { "id": "#020", "name": "Beautifly" }, + { "id": "#021", "name": "Cascoon" }, + { "id": "#022", "name": "Dustox" }, + { "id": "#023", "name": "Ponyta" }, + { "id": "#024", "name": "Rapidash" }, + { "id": "#025", "name": "Eevee" }, + { "id": "#026", "name": "Vaporeon" }, + { "id": "#027", "name": "Jolteon" }, + { "id": "#028", "name": "Flareon" }, + { "id": "#029", "name": "Espeon" }, + { "id": "#030", "name": "Umbreon" }, + { "id": "#031", "name": "Leafeon" }, + { "id": "#032", "name": "Glaceon" }, + { "id": "#033", "name": "Sylveon" }, + { "id": "#034", "name": "Zubat" }, + { "id": "#035", "name": "Golbat" }, + { "id": "#036", "name": "Crobat" }, + { "id": "#037", "name": "Drifloon" }, + { "id": "#038", "name": "Drifblim" }, + { "id": "#039", "name": "Kricketot" }, + { "id": "#040", "name": "Kricketune" }, + { "id": "#041", "name": "Buizel" }, + { "id": "#042", "name": "Floatzel" }, + { "id": "#043", "name": "Burmy" }, + { "id": "#044", "name": "Wormadam" }, + { "id": "#045", "name": "Mothim" }, + { "id": "#046", "name": "Geodude" }, + { "id": "#047", "name": "Graveler" }, + { "id": "#048", "name": "Golem" }, + { "id": "#049", "name": "Stantler" }, + { "id": "#050", "name": "Wyrdeer" }, + { "id": "#051", "name": "Munchlax" }, + { "id": "#052", "name": "Snorlax" }, + { "id": "#053", "name": "Paras" }, + { "id": "#054", "name": "Parasect" }, + { "id": "#055", "name": "Pichu" }, + { "id": "#056", "name": "Pikachu" }, + { "id": "#057", "name": "Raichu" }, + { "id": "#058", "name": "Abra" }, + { "id": "#059", "name": "Kadabra" }, + { "id": "#060", "name": "Alakazam" }, + { "id": "#061", "name": "Chimchar" }, + { "id": "#062", "name": "Monferno" }, + { "id": "#063", "name": "Infernape" }, + { "id": "#064", "name": "Buneary" }, + { "id": "#065", "name": "Lopunny" }, + { "id": "#066", "name": "Cherubi" }, + { "id": "#067", "name": "Cherrim" }, + { "id": "#068", "name": "Psyduck" }, + { "id": "#069", "name": "Golduck" }, + { "id": "#070", "name": "Combee" }, + { "id": "#071", "name": "Vespiquen" }, + { "id": "#072", "name": "Scyther" }, + { "id": "#073", "name": "Kleavor" }, + { "id": "#074", "name": "Scizor" }, + { "id": "#075", "name": "Heracross" }, + { "id": "#076", "name": "Mime Jr." }, + { "id": "#077", "name": "Mr. Mime" }, + { "id": "#078", "name": "Aipom" }, + { "id": "#079", "name": "Ambipom" }, + { "id": "#080", "name": "Magikarp" }, + { "id": "#081", "name": "Gyarados" }, + { "id": "#082", "name": "Shellos" }, + { "id": "#083", "name": "Gastrodon" }, + { "id": "#084", "name": "Qwilfish" }, + { "id": "#085", "name": "Overqwil" }, + { "id": "#086", "name": "Happiny" }, + { "id": "#087", "name": "Chansey" }, + { "id": "#088", "name": "Blissey" }, + { "id": "#089", "name": "Budew" }, + { "id": "#090", "name": "Roselia" }, + { "id": "#091", "name": "Roserade" }, + { "id": "#092", "name": "Carnivine" }, + { "id": "#093", "name": "Petilil" }, + { "id": "#094", "name": "Lilligant" }, + { "id": "#095", "name": "Tangela" }, + { "id": "#096", "name": "Tangrowth" }, + { "id": "#097", "name": "Barboach" }, + { "id": "#098", "name": "Whiscash" }, + { "id": "#099", "name": "Croagunk" }, + { "id": "#100", "name": "Toxicroak" }, + { "id": "#101", "name": "Ralts" }, + { "id": "#102", "name": "Kirlia" }, + { "id": "#103", "name": "Gardevoir" }, + { "id": "#104", "name": "Gallade" }, + { "id": "#105", "name": "Yanma" }, + { "id": "#106", "name": "Yanmega" }, + { "id": "#107", "name": "Hippopotas" }, + { "id": "#108", "name": "Hippowdon" }, + { "id": "#109", "name": "Pachirisu" }, + { "id": "#110", "name": "Stunky" }, + { "id": "#111", "name": "Skuntank" }, + { "id": "#112", "name": "Teddiursa" }, + { "id": "#113", "name": "Ursaring" }, + { "id": "#114", "name": "Ursaluna" }, + { "id": "#115", "name": "Goomy" }, + { "id": "#116", "name": "Sliggoo" }, + { "id": "#117", "name": "Goodra" }, + { "id": "#118", "name": "Onix" }, + { "id": "#119", "name": "Steelix" }, + { "id": "#120", "name": "Rhyhorn" }, + { "id": "#121", "name": "Rhydon" }, + { "id": "#122", "name": "Rhyperior" }, + { "id": "#123", "name": "Bonsly" }, + { "id": "#124", "name": "Sudowoodo" }, + { "id": "#125", "name": "Lickitung" }, + { "id": "#126", "name": "Lickilicky" }, + { "id": "#127", "name": "Togepi" }, + { "id": "#128", "name": "Togetic" }, + { "id": "#129", "name": "Togekiss" }, + { "id": "#130", "name": "Turtwig" }, + { "id": "#131", "name": "Grotle" }, + { "id": "#132", "name": "Torterra" }, + { "id": "#133", "name": "Porygon" }, + { "id": "#134", "name": "Porygon2" }, + { "id": "#135", "name": "Porygon-Z" }, + { "id": "#136", "name": "Gastly" }, + { "id": "#137", "name": "Haunter" }, + { "id": "#138", "name": "Gengar" }, + { "id": "#139", "name": "Spiritomb" }, + { "id": "#140", "name": "Murkrow" }, + { "id": "#141", "name": "Honchkrow" }, + { "id": "#142", "name": "Unown" }, + { "id": "#143", "name": "Spheal" }, + { "id": "#144", "name": "Sealeo" }, + { "id": "#145", "name": "Walrein" }, + { "id": "#146", "name": "Remoraid" }, + { "id": "#147", "name": "Octillery" }, + { "id": "#148", "name": "Skorupi" }, + { "id": "#149", "name": "Drapion" }, + { "id": "#150", "name": "Growlithe" }, + { "id": "#151", "name": "Arcanine" }, + { "id": "#152", "name": "Glameow" }, + { "id": "#153", "name": "Purugly" }, + { "id": "#154", "name": "Machop" }, + { "id": "#155", "name": "Machoke" }, + { "id": "#156", "name": "Machamp" }, + { "id": "#157", "name": "Chatot" }, + { "id": "#158", "name": "Duskull" }, + { "id": "#159", "name": "Dusclops" }, + { "id": "#160", "name": "Dusknoir" }, + { "id": "#161", "name": "Piplup" }, + { "id": "#162", "name": "Prinplup" }, + { "id": "#163", "name": "Empoleon" }, + { "id": "#164", "name": "Mantyke" }, + { "id": "#165", "name": "Mantine" }, + { "id": "#166", "name": "Basculin" }, + { "id": "#167", "name": "Basculegion" }, + { "id": "#168", "name": "Vulpix" }, + { "id": "#169", "name": "Ninetales" }, + { "id": "#170", "name": "Tentacool" }, + { "id": "#171", "name": "Tentacruel" }, + { "id": "#172", "name": "Finneon" }, + { "id": "#173", "name": "Lumineon" }, + { "id": "#174", "name": "Magby" }, + { "id": "#175", "name": "Magmar" }, + { "id": "#176", "name": "Magmortar" }, + { "id": "#177", "name": "Magnemite" }, + { "id": "#178", "name": "Magneton" }, + { "id": "#179", "name": "Magnezone" }, + { "id": "#180", "name": "Bronzor" }, + { "id": "#181", "name": "Bronzong" }, + { "id": "#182", "name": "Elekid" }, + { "id": "#183", "name": "Electabuzz" }, + { "id": "#184", "name": "Electivire" }, + { "id": "#185", "name": "Gligar" }, + { "id": "#186", "name": "Gliscor" }, + { "id": "#187", "name": "Gible" }, + { "id": "#188", "name": "Gabite" }, + { "id": "#189", "name": "Garchomp" }, + { "id": "#190", "name": "Nosepass" }, + { "id": "#191", "name": "Probopass" }, + { "id": "#192", "name": "Voltorb" }, + { "id": "#193", "name": "Electrode" }, + { "id": "#194", "name": "Rotom" }, + { "id": "#195", "name": "Chingling" }, + { "id": "#196", "name": "Chimecho" }, + { "id": "#197", "name": "Misdreavus" }, + { "id": "#198", "name": "Mismagius" }, + { "id": "#199", "name": "Cleffa" }, + { "id": "#200", "name": "Clefairy" }, + { "id": "#201", "name": "Clefable" }, + { "id": "#202", "name": "Sneasel" }, + { "id": "#203", "name": "Sneasler" }, + { "id": "#204", "name": "Weavile" }, + { "id": "#205", "name": "Snorunt" }, + { "id": "#206", "name": "Glalie" }, + { "id": "#207", "name": "Froslass" }, + { "id": "#208", "name": "Cranidos" }, + { "id": "#209", "name": "Rampardos" }, + { "id": "#210", "name": "Shieldon" }, + { "id": "#211", "name": "Bastiodon" }, + { "id": "#212", "name": "Swinub" }, + { "id": "#213", "name": "Piloswine" }, + { "id": "#214", "name": "Mamoswine" }, + { "id": "#215", "name": "Bergmite" }, + { "id": "#216", "name": "Avalugg" }, + { "id": "#217", "name": "Snover" }, + { "id": "#218", "name": "Abomasnow" }, + { "id": "#219", "name": "Zorua" }, + { "id": "#220", "name": "Zoroark" }, + { "id": "#221", "name": "Rufflet" }, + { "id": "#222", "name": "Braviary" }, + { "id": "#223", "name": "Riolu" }, + { "id": "#224", "name": "Lucario" }, + { "id": "#225", "name": "Uxie" }, + { "id": "#226", "name": "Mesprit" }, + { "id": "#227", "name": "Azelf" }, + { "id": "#228", "name": "Heatran" }, + { "id": "#229", "name": "Regigigas" }, + { "id": "#230", "name": "Cresselia" }, + { "id": "#231", "name": "Tornadus" }, + { "id": "#232", "name": "Thundurus" }, + { "id": "#233", "name": "Landorus" }, + { "id": "#234", "name": "Enamorus" }, + { "id": "#235", "name": "Dialga" }, + { "id": "#236", "name": "Palkia" }, + { "id": "#237", "name": "Giratina" }, + { "id": "#238", "name": "Arceus" }, + { "id": "#239", "name": "Phione" }, + { "id": "#240", "name": "Manaphy" }, + { "id": "#241", "name": "Shaymin" }, + { "id": "#242", "name": "Darkrai" } +] |
