Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@matthewtole
Created August 31, 2012 08:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save matthewtole/3550487 to your computer and use it in GitHub Desktop.
Save matthewtole/3550487 to your computer and use it in GitHub Desktop.
Shakespearean Insult Generator
// Shakespearean Insult Generator
//
// Generates a random Shakespearean insult given three word lists, taken
// from this web page: http://bit.ly/OBqi3K
var ShakespeareanInsult = function() {
var words1 = [ 'artless', 'bawdy', 'beslubbering', 'bootless', 'churlish',
'cockered', 'clouted', 'craven', 'currish', 'dankish', 'dissembling',
'droning', 'errant', 'fawning', 'fobbing', 'froward', 'frothy',
'gleeking', 'goatish', 'gorbellied', 'impertinent', 'infectious',
'jarring', 'loggerheaded', 'lumpish', 'mammering', 'mangled', 'mewling',
'paunchy', 'pribbling', 'puking', 'puny', 'qualling', 'rank', 'reeky',
'roguish', 'ruttish', 'saucy', 'spleeny', 'spongy', 'surly', 'tottering',
'unmuzzled', 'vain', 'venomed', 'villainous', 'warped', 'wayward',
'weedy', 'yeasty'
];
var words2 = [ 'base-court', 'bat-fowling', 'beef-witted', 'beetle-headed',
'boil-brained', 'clapper-clawed', 'clay-brained', 'common-kissing',
'crook-pated', 'dismal-dreaming', 'dizzy-eyed', 'doghearted',
'dread-bolted', 'earth-vexing', 'elf-skinned', 'fat-kidneyed',
'fen-sucked', 'flap-mouthed', 'fly-bitten', 'folly-fallen', 'fool-born',
'full-gorged', 'guts-griping', 'half-faced', 'hasty-witted', 'hedge-born',
'hell-hated', 'idle-headed', 'ill-breeding', 'ill-nurtured',
'knotty-pated', 'milk-livered', 'motley-minded', 'onion-eyed',
'plume-plucked', 'pottle-deep', 'pox-marked', 'reeling-ripe',
'rough-hewn', 'rude-growing', 'rump-fed', 'shard-borne', 'sheep-biting',
'spur-galled', 'swag-bellied', 'tardy-gaited', 'tickle-brained',
'toad-spotted', 'unchin-snouted', 'weather-bitten'
];
var words3 = [ 'apple-john', 'baggage', 'barnacle', 'bladder', 'boar-pig',
'bugbear', 'bum-bailey', 'canker-blossom', 'clack-dish', 'clotpole',
'coxcomb', 'codpiece', 'death-token', 'dewberry', 'flap-dragon',
'flax-wench', 'flirt-gill', 'foot-licker', 'fustilarian', 'giglet',
'gudgeon', 'haggard', 'harpy', 'hedge-pig', 'horn-beast', 'hugger-mugger',
'joithead', 'lewdster', 'lout', 'maggot-pie', 'malt-worm', 'mammet',
'measle', 'minnow', 'miscreant', 'moldwarp', 'mumble-news', 'nut-hook',
'pigeon-egg', 'pignut', 'puttock', 'pumpion', 'ratsbane', 'scut',
'skainsmate', 'strumpet', 'varlot', 'vassal', 'whey-face', 'wagtail'
];
var _insult = function() {
return [
'Thou', _randomElement(words1),
_randomElement(words2), _randomElement(words3) + '!',
].join(' ');
};
var _randomElement = function(list) {
var index = Math.floor((Math.random() * list.length));
return list[index];
}
return {
insult: _insult
};
}();
module.exports = ShakespeareanInsult;
if (require.main === module) {
console.log(ShakespeareanInsult.insult());
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment