#!/usr/bin/perl -n # # ä = ae Ä = AE # ö = oe Ö = OE ß = ss # ü = ue Ü = UE # # Schwäbisch - Übersetzer (Compiler?) von Jens Schweikhardt # # Filter: liest stdin, schreibt auf stdout, zB # schwäbisch # [Kein Syntax Fehler, IO-Redirection kann überall stehen, selbst # zwischen den Argumenten, ausser vielleicht bei C-Shells, ARGH!] # Komplette Wortersetzungen: s/\b([Dd])a\b([^ß])/\1o\2/g; s/\bdann\b/no/g; s/\bEs\b/S/g; s/\bes\b/s/g; s/\beine([sm])\b/oi\1/g; s/\bEine([sm])\b/Oi\1/g; s/\b([DdMmSs])eine?\b/\1ei/g; s/\b([DdMmSs])eins\b/\1eis/g; s/\b([DdMmSs])einer\b/\1einr/g; s/\beine\b/a/g; s/\bEine\b/A/g; s/\beiner\b/oinr/g; s/\bEiner\b/Oinr/g; s/\b([Ee])inen\b/\1n/g; # einen -> en s/\b([Dd])as/\1es/g; # das -> des s/\b[Ii]ch\b/I/g; # ich -> i s/\b([Nn])icht\b/\1ed/g; # nicht -> ned s/\b([Ss])ie\b/\1e/g; # sie -> se s/\bwir\b/mir/g; s/\bWir\b/Mir/g; s/\b(he)?([Rr])unter/\2a/g; s/\b([Hh])at\b/\1ott/g; s/\b([Hh])aben\b/\1enn/g; s/\b([Hh])abe\b/\1ann/g; s/\b([Gg])ehen\b/\1anga/g; s/\b([Kk])ann\b/\1a/g; s/\b([Kk])önnen\b/\1enna/g; s/\b([Ww])ollen\b/\1ella/g; s/\b([Ss])ollten\b/\1oddad/g; s/\b([Ss])ollt?e?\b/\1odd/g; s/\bdiese?r?\b/sell/g; s/\bDiese?r?\b/Sell/g; s/\b([Aa])uch\b/\1o/g; # auch -> ao s/\b([Nn])och\b/\1o/g; # noch -> no s/\b([Ss])ind\b/\1end/g; # sind -> send s/\b([Ss])chon\b/\1cho/g; # schon -> scho s/\b([Mm])an\b/\1r/g; # man -> mr s/\b([Dd])ie\b/\1/g; # die -> d s/\b([Dd])a?rauf\b/\1ruff/g; # darauf -> druff s/\bviele?s?\b/en Haufa/g; s/\bViele?s?\b/En Haufa/g; s/\bAuto|Daimler\b/Heilix Blechle/g; s/Marmelade|Konfitüre/Xälz/g; s/\b2\b/zwoi/g; s/\b5\b/fempf/g; s/\b15\b/fuffzehn/g; s/\b50\b/fuffzig/g; # Am Wortanfang und Grossgeschriebenes: s/\bAuf/Uff/g; s/\bauf/uff/g; s/\bEin/Oi/g; s/\bein/oi/g; s/\bMal/Mol/g; s/\bUm/Om/g; s/\bunge/og/g; s/\bUnge/Og/g; s/\bunver/ovr/g; s/\bUnver/Ovr/g; s/\bUn/On/g; s/\bun/on/g; s/\bUnd/Ond/g; s/\bin(s?)/en\1/g; # in -> en, ins -> ens s/\bIn(s?)/En\1/g; # In -> En, Ins -> Ens s/\bim/em/g; s/\bIm/Em/g; s/\b([Kk])ein/\1oin/g; s/\b([Nn])ein/\1oi/g; s/\b([Zz])usa/\1a/g; # zusammen -> zamma # Am Wortende: s/\Ben\b/a/g; # latschen -> latscha s/\Bel\b/l/g; # Sessel -> Sessl s/([^h])er\b/\1r/g; # der -> dr s/([h])es\b/\1s/g; # manches -> manchs s/\Bau\b/ao/g; # lau -> lao s/([lt])ein\b/\1oi/g; # Stein -> Stoi # Beliebige Position: s/([Ff])rag/\1rog/g; s/teil/doil/g; s/Teil/Doil/g; s/([Hh])eim/\1oim/g; s/steht/stoht/g; s/um/om/g; s/imm/emm/g; # schlimm -> schlemm s/mal/mol/g; s/zwei/zwoi/g; s/ck/gg/g; s/([Ee])u/\1i/g; s/([Vv])er/\1r/g; s/([Gg])e([aflmnrs])/\1\2/g; # angenommen -> angnommen s/([Ss])t/\1chd/g; # st -> schd s/([Ss])p/\1chb/g; # sp -> schb s/tio/zio/g; # Information -> Informazion s/\?/, ha?/g; s/!!/, Sagg Zemend!/g; s/!/, haidanai!/g; # Spezielles: tr/TtPpÖöÜü/DdBbEeIi/; # Globale Transformationen zum Schluss # Was nach tr stehen muss: s/ung/ong/g; s/und/ond/g; s/ind/end/g; print;