X-Git-Url: http://git.ieval.ro/?p=filters.git;a=blobdiff_plain;f=jive.l;fp=jive.l;h=0000000000000000000000000000000000000000;hp=dcb99240b2bfcc52d71eab532eeb189e6b93c10e;hb=2ad76bd43ca4c4bd1ca7dfc5f5e984b7341df7ad;hpb=7e3afbbacdd24f8c3fb87599eeda32b977fe6d6c diff --git a/jive.l b/jive.l deleted file mode 100644 index dcb9924..0000000 --- a/jive.l +++ /dev/null @@ -1,250 +0,0 @@ -%{ -/* - * Lex filter to transform plain English into Jive English. - * No racial or societal slurs are intended. For amusement only. - * - * Copyright 1986 by Daniel Klein and Clement Cole. - * - * Reproduction permitted so long as this notice is retained. - */ -%} -%e 1700 -%p 4000 -%n 700 -%k 450 -%a 1700 -%o 1500 -BW [ \t\(] -EW [ \t.,;!\?$\)] -%% -@[Bb]egin(.*) | -".so ".*$ printf("%s", yytext); -{BW}send printf("%ct'row",yytext[0]); -program+ printf("honky code"); -[Uu]nix printf("slow mo-fo"); -UNIX printf("dat slow mo-fo"); -actual printf("ak'shul"); -{BW}take printf("%csnatch",yytext[0]); -{BW}took | -{BW}take[ns] printf("%csnatch'd",yytext[0]); -[Mm]exican printf("%cet-back", caseify('w')); -[Ii]talian printf("%creaser", caseify('g')); -{BW}big{EW} { printf("%cbig ass",yytext[0]);plastc();} -fool printf("honkyfool"); -modem printf("doodad"); -{BW}he{EW} { printf("%cmah' man he",yytext[0]);plastc();} -"e the"{EW} | -"a the"{EW} | -"t the"{EW} | -"d the"{EW} { printf("%c da damn", yytext[0]);plastc();} -wife | -woman printf("mama"); -girl printf("goat"); -something printf("sump'n"); -{BW}lie printf("%chonky jive",yytext[0]); --o- printf("-on rebound-"); -[a-z]"." { printf("%s", yytext);expletive();} -! printf(". Right On!"); -[Ss]ure printf("%cho'", yytext[0]); -get printf("git"); -"will have"{EW} | -"will"{EW} | -"got to"{EW} { printf("gots'ta");plastc();} -"I am" printf("I's gots'ta be"); -"aren't" | -"am not" | -"have not" | -"is not" | -"are not" printf("ain't"); -{BW}see{EW} { printf("%csee's",yytext[0]);plastc();} -{BW}are{EW} { printf("%cis",yytext[0]);plastc();} -{BW}hat{EW} { printf("%cfedora",yytext[0]);plastc();} -{BW}shoe printf("%ckicker",yytext[0]); -{BW}"have to"{EW} | -{BW}has{EW} { printf("%cgots'ta",yytext[0]);plastc();} -have printf("gots'"); -{BW}go{EW} | -{BW}"come over"{EW} | -{BW}come{EW} { printf("%cmosey on down",yytext[0]);plastc();} -buy printf("steal"); -{BW}car{EW} { printf("%cwheels",yytext[0]);plastc();} -drive printf("roll"); -{BW}food printf("%ccatfish an' colluhd greens",yytext[0]); -{BW}eat{EW} { printf("%cfeed da bud",yytext[0]);plastc();} -drink printf("guzzle"); -black | -negro printf("brother"); -white printf("honky"); -nigger printf("gentleman"); -nice printf("supa' fine"); -{BW}person printf("%csucka'",yytext[0]); -[Pp]eople printf("%cucka's", caseify('s')); -{BW}thing thing(yytext[0]); -house{EW} { printf("crib");plastc();} -home printf("plantation"); -name printf("dojigger"); -{BW}path printf("%calley",yytext[0]); -[Cc]omputer printf("%clunker", yytext[0]); -or printf("o'"); -president printf("super-dude"); -"prime minister" printf("prahm mistah"); -government printf("guv'ment"); -knew printf("knowed"); -[Bb]ecause printf("'%cuz", caseify('c')); -[Yy]our printf("%co'", yytext[0]); -[Ff]our printf("%coe", yytext[0]); -got printf("gots"); -young printf("yung"); -you printf("ya'"); -You printf("You's"); -first printf("fust"); -police printf("honky pigs"); -{BW}string printf("%cchittlin'",yytext[0]); -{BW}read printf("%ceyeball",yytext[0]); -write printf("scribble"); -think{EW} { printf("thin'");plastc();} -with printf("wif"); -other printf("uthu'"); -[Tt]hr printf("%c'r", yytext[0]); -[Tt]h printf("%c", caseify('d')); -ing printf("in'"); -{BW}a{EW} { printf("%csome",yytext[0]);plastc();} -{BW}to{EW} { printf("%ct'",yytext[0]); - if(yytext[yyleng-1]!=' ') - plastc(); - } -tion printf("shun"); -[Aa]lmost printf("%cos'", caseify('m')); -from printf("fum"); -[Yy]"ou're" printf("%couse", yytext[0]); -alright | -okay printf("coo'"); -[Aa]nd printf("%cn'", yytext[0]); -known printf("knode"); -want printf("wants'"); -beat printf("whup'ed"); -ile printf("ah'l"); -er{EW} { printf("uh");plastc();} -[a-z]sti printf("%cs'i", yytext[0]); -tute printf("toot"); -exp printf("'sp"); -exs | -exc printf("'s"); -{BW}ex printf("%c'es",yytext[0]); -[ae]ct{EW} { printf("%cc'", yytext[0]); plastc(); } -like printf("likes"); -done | -did printf("dun did"); -"kind of" printf("kind'a"); -women printf("honky chicks"); -{BW}man{EW} { printf("%cdude",yytext[0]);plastc();} -{BW}men{EW} | -{BW}mens{EW} { printf("%cdudes",yytext[0]);plastc();} -injured printf("hosed"); -killed | -dead printf("wasted"); -good printf("baaaad"); -open{EW} { printf("jimmey");plastc();} -opened{EW} { printf("jimmey'd");plastc();} -{BW}very printf("%creal",yytext[0]); -per printf("puh'"); -oar printf("o'"); -{BW}can printf("%ckin",yytext[0]); -{BW}just{EW} { printf("%cplum",yytext[0]);plastc();} -[Dd]etroit printf("Mo-town"); -[Ww]"estern "[Ee]"lectric" printf("da' cave"); -{BW}believe printf("%crecon'",yytext[0]); -[Ii]"ndianapolis" printf("Nap-town"); -Daniel | -Dan printf("Liva' Lips"); -Reagan printf("Kingfish"); -Ronald{EW} | -Ron{EW} { printf("Rolo");plastc();} -John printf("Rastus"); -Jim printf("Bo-Jangles"); -pontiff | -pope printf("wiz'"); -[Pp]ravda printf("dat commie rag"); -broken printf("bugger'd"); -strange{EW} { printf("funky");plastc();} -dance{EW} { printf("boogy");plastc();} -ask printf("ax'"); -{BW}so{EW} { printf("%cso's",yytext[0]);plastc();} -heard printf("'hoid"); -head printf("'haid"); -boss printf("main man"); -money printf("bre'd"); -[a-z]":" { *(yytext+1) = ','; - printf("%s dig dis:",yytext); - } -amateur printf("begina'"); -radio printf("transista'"); -{BW}of{EW} { printf("%cuh",yytext[0]);plastc();} -which | -what printf("whut"); -"don't" printf("doan'"); -does printf("duz"); -{BW}was{EW} | -{BW}were{EW} { printf("%cwuz",yytext[0]);plastc();} -{BW}understand printf("%cdig",yytext[0]); -{BW}my printf("%cmah'",yytext[0]); -again | -against printf("agin'"); -{BW}[Ii]{EW} { printf("%cah'",yytext[0]);plastc();} -meta printf("meta-fuckin'"); -cally printf("c'l"); -%% -plastc() -{ - unput(yytext[yyleng-1]); -} - -caseify(c) -char c; -{ - if (yytext[0] <= 'Z') - return (c - ' '); - else - return (c); -} - -thing(c) -char c; -{ - static short count = 0; - - putchar(c); - switch (count++ % 4) { - case 0: case 2: - printf("thang"); - break; - case 1: - printf("doohickey"); - break; - case 3: - printf("wahtahmellun"); - break; - } -} -expletive() -{ - static short count = 0; - static short which = 0; - - if (count++ % 4 == 0) { - switch (which++ % 5) { - case 0: printf(" What it is, Mama!"); break; - case 1: printf(" Ya' know?"); break; - case 2: printf(" Sheeeiit."); break; - case 3: printf(" Ya' dig?"); break; - case 4: printf(" Git down!"); break; - } - } -} - -/* - * Bugs: - * - * If a sentence starts with a keyword it doan' get converted, or: - * it do, but gets a leading space - */