Mercurial > repo
changeset 4069:d3ca31a67036
<mrhmouse> fetch http://pastebin.com/raw.php?i=t6pkHTik
author | HackBot |
---|---|
date | Fri, 22 Nov 2013 21:14:41 +0000 |
parents | 39686d8505ec |
children | d6402189a29b |
files | raw.php?i=t6pkHTik |
diffstat | 1 files changed, 31 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/raw.php?i=t6pkHTik Fri Nov 22 21:14:41 2013 +0000 @@ -0,0 +1,31 @@ +#!/usr/bin/env node +// Generated by CoffeeScript 1.6.2 +(function() { + var consonant_then_o, ell_manglable, ends_with_consonant, ends_with_consonant_then_vowel, name, starts_with_o; + + name = process.argv[2]; + + if (!(name != null ? name.length : void 0)) { + console.log('Usage: ello <name>'); + process.exit(); + } + + consonant_then_o = /(.*)([bcdfghjklmnpqrstvwxz])([o0].*)/i; + + ends_with_consonant = /[bcdfghjklmnpqrstvwxz]$/i; + + ends_with_consonant_then_vowel = /(.*[bcdfghjklmnpqrstvwxz])[aeiouy]+$/i; + + starts_with_o = /[o0]/i; + + ell_manglable = /(.*)(el+[aeiouy]+)(.*)/i; + + console.log(consonant_then_o.test(name) ? name.replace(consonant_then_o, function(match, before, consonant, rest) { + return before + consonant + 'ell' + rest; + }) : ell_manglable.test(name) ? name.replace(ell_manglable, function(match, before, middle, rest) { + return before + 'ello' + rest; + }) : starts_with_o.test(name) ? 'hell' + name : ends_with_consonant_then_vowel.test(name) ? name.replace(ends_with_consonant_then_vowel, function(match, before) { + return before + 'ello'; + }) : ends_with_consonant.test(name) ? name + 'ello' : "Hello, " + name + "!"); + +}).call(this); \ No newline at end of file