Skip to content

Instantly share code, notes, and snippets.

@monkbroc
Created July 5, 2015 14:44

Revisions

  1. monkbroc created this gist Jul 5, 2015.
    72 changes: 72 additions & 0 deletions random_name.rb
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,72 @@
    #!/usr/bin/env ruby

    require 'highline/import'

    ADJECTIVES = %w(
    broad crooked curved deep even flat hilly jagged round shallow square
    steep straight thick thin triangular uneven average big fat gigantic
    huge large little long massive medium miniature narrow petite short
    skinny small tall tiny wide cooing deafening faint harsh hissing hushed
    husky loud melodic mute noisy purring quiet raspy screeching shrill
    silent soft squeaky squealing thundering voiceless whispering fast quick
    rapid slow swift bitter bland delicious different fresh greasy hot juicy
    repulsive revolting ripe rotten salty sour spicy stale strong sweet
    tasteless tasty terrible wonderful ancient brief early late long modern
    new old old-fashioned quick short young blunt boiling breakable breezy
    broken bumpy chilly clean cold cool crooked cuddly curly damaged damp
    different dirty dry dusty filthy flaky fluffy fuzzy greasy grubby hard
    icy loose plastic prickly ripe rough rubbery scratchy shaky shaggy sharp
    silky slimy slippery smooth soft solid steady sticky tight uneven
    unusual unripe warm weak wet wooden wooly afraid angry annoyed anxious
    arrogant ashamed awful bad bewildered bored concerned condemned confused
    creepy cruel dangerous defeated defiant depressed disgusted disturbed
    doubtful eerie embarrassed envious evil fierce foolish frantic
    frightened grieving guilty helpless hungry hurt ill jealous lonely mad
    naughty nervous obnoxious outrageous panicky repulsive safe scared shy
    sleepy sore strange tense terrible tired troubled unusual upset uptight
    weary wicked worried alright calm different fair fine pleasant puzzled
    agreeable alert amused brave bright charming cheerful comfortable
    cooperative courageous delightful determined eager elated enchanting
    encouraging energetic enthusiastic excited exuberant faithful fantastic
    friendly frowning funny gentle glorious good happy healthy helpful
    hilarious innocent jolly kind lively lovely lucky obedient perfect proud
    relaxed relieved silly smiling splendid successful thoughtful victorious
    vivacious well witty wonderful adorable alert average beautiful blonde
    bloody blushing bright clean clear cloudy colourful concerned crowded
    curious cute dark dirty drab distinct dull elegant fancy filthy
    glamorous gleaming graceful grotesque homely light misty motionless
    muddy plain poised quaint scary shiny smoggy sparkling spotless stormy
    strange ugly unsightly unusual alive brainy broken busy careful cautious
    clever crazy damaged dead difficult easy fake false famous forward
    fragile guilty helpful helpless important impossible infamous innocent
    inquisitive mad modern open outgoing outstanding poor powerful puzzled
    real rich right robust sane scary shy sleepy stupid super tame thick
    tired wild wrong
    )

    ANIMALS = %w(
    alligator crocodile alpaca ant antelope ape armadillo donkey baboon
    badger bat bear beaver bee beetle buffalo butterfly camel cat cattle
    cheetah chimpanzee cicada clam coyote crab cricket crow raven deer
    dinosaur dog dolphin duck eel elephant elk ferret fish fly fox frog
    gerbil giraffe gnat gnu goat goldfish gorilla grasshopper hamster hare
    hedgehog herring hippo hornet horse hound hyena insect jackal jellyfish
    kangaroo leopard lion lizard llama louse mammoth manatee mink mole
    monkey moose mosquito mouse mule otter ox oyster panda pig platypus
    porcupine rabbit raccoon reindeer rhino salmon sardine scorpion seal
    shark sheep snail snake spider squirrel termite tiger trout turtle
    walrus wasp whale wolf wombat woodchuck worm yak zebra
    )

    say "Pick this name?"
    begin
    begin
    name = ADJECTIVES.sample + "_" + ANIMALS.sample
    name_ok = agree(name + " ") { |q| q.default = "n" }
    end until name_ok

    say "\n<%= color('#{name}', LIGHT_GREEN) %>\n\n"
    rescue Interrupt
    puts
    # Quit silently
    end