<?php
/*
Plugin Name: Abbreviation Replacer
Version: 1.1
Plugin URI: http://www.bueltge.de/wp-abbreviation-replacer-plugin/100/
Description: Abbreviation Replacer is a Wordpress plugin which automatically adds abbr tags to your blog content. Basis Script and idea is from <a href="http://www.HuddledMasses.org">Joel Bennett</a> and his plugin adds acronym tags to the content.
Author: Frank Bueltge
Author URI: http://www.bueltge.de
*/

function abbreviations($text)    {
    global    
$abbr_abbr;

    if( empty(
$abbr_abbr) ) {
        
$abbr_abbr = array(
            
"Abk. " => "Abkürzung",
            
"afrik. " => "afrikanisch",
            
"Akk. " => "Akkusativ",
            
"allg. " => "allgemein",
            
"altdt. " => "altdeutsch",
            
"alttest. " => "alttestamentlich",
            
"amerik. " => "amerikanisch",
            
"Amtsspr. " => "Amtssprache",
            
"angels. " => "angelsächsisch",
            
"Anm. " => "Anmerkung",
            
"Anthropol. " => "Anthropologie",
            
"aram. " => "aramäisch",
            
"Archit. " => "Architektur",
            
"astron. " => "astronomisch",
            
"Astron. " => "Astronomie",
            
"Ausspr. " => "Aussprache",
            
"austr. " => "australisch",
            
"Bankw. " => "Bankwesen",
            
"Bauw. " => "Bauwesen",
            
"Bed. " => "Bedeutung",
            
"Bergmannsspr. " => "Bergmannssprache",
            
"Berufsbez. " => "Berufsbezeichnung",
            
"bes. " => "besonders",
            
"Bez. " => "Bezeichnung",
            
"bild. " => "bildende",
            
"Biol. " => "Biologie",
            
"Bot. " => "Botanik",
            
"bras. " => "brasilianisch",
            
"bret. " => "bretonisch",
            
"Buchw. " => "Buchwesen",
            
"byzant" => "byzantinisch",
            
"bzw. " => "beziehungsweise",
            
"chin. " => "chinesisch",
            
"cm. " => "Zentimeter",
            
"Dat. " => "Dativ",
            
"dm. " => "Dezimeter",
            
"Druckerspr. " => "Druckersprache",
            
"Druckw. " => "Druckwesen",
            
"dt. " => "deutsch",
            
"ehem. " => "ehemals, ehemalig",
            
"Eigenn. " => "Eigenname",
            
"eigtl. " => "eigentlich",
            
"Eisenb. " => "Eisenbahnwesen",
            
"eskim. " => "eskimoisch",
            
"etw. " => "etwas",
            
"europ. " => "europäisch",
            
"evang. " => "evangelisch",
            
"fachspr. " => "fachsprachlich",
            
"fam. " => "familiär",
            
"Familienn. " => "Familienname",
            
"Fernspr. " => "Fernsprechwesen",
            
"Finanzw. " => "Finanzwesen",
            
"Fliegerspr. " => "Fliegersprache",
            
"Flugw. " => "Flugwesen",
            
"Forstw. " => "Forstwirtschaft",
            
"fotogr. " => "fotografisch",
            
"Fotogr. " => "Fotografie",
            
"franz. " => "französisch",
            
"Gastron. " => "Gastronomie",
            
"Gaunerspr. " => "Gaunersprache",
            
"gebr. " => "gebräuchlich",
            
"geh" => "gehoben",
            
"gen. " => "genannt",
            
"Gen. " => "Genitiv",
            
"Geogr. " => "Geographie",
            
"Geol. " => "Geologie",
            
"germ. " => "germanisch",
            
"Ggs. " => "Gegensatz",
            
"Handw. " => "Handwerk",
            
"hebr. " => "hebräisch",
            
"hist. " => "historisch",
            
"Hochschulw. " => "Hochschulwesen",
            
"Hptst. " => "Hauptstadt",
            
"Hüttenw. " => "Hüttenwesen",
            
"idg. " => "indogermanisch",
            
"ital. " => "italienisch",
            
"Jägerspr. " => "Jägersprache",
            
"jap. " => "japanisch",
            
"jmd. " => "jemand",
            
"jmdm. " => "jemandem",
            
"jmdn. " => "jemanden",
            
"jmds. " => "jemandes",
            
"Jugendspr. " => "Jugendsprache",
            
"kath. " => "katholisch",
            
"Kaufmannsspr. " => ",Kaufmannssprache",
            
"Kinderspr. " => "Kindersprache",
            
"Konj. " => "Konjunktion",
            
"Kunstw. " => "Kunstwissenschaft",
            
"Kurzw. " => "Kurzwort",
            
"landsch. " => "landschaftlich",
            
"andw. " => "landwirtschaftlich",
            
"Landw. " => "Landwirtschaft",
            
"lat. " => "lateinisch",
            
"ldt. " => "litauisch",
            
"Literaturw. " => "Literaturwissenschaft",
            
"män. " => "männlich",
            
"Math. " => "Mathematik",
            
"mdal. " => "mundartlich",
            
"med. " => "medizinisch",
            
"Med. " => "Medizin",
            
"Meteor. " => "Meteorologie",
            
"mexik. " => "mexikanisch",
            
"milit. " => "militärisch",
            
"Milit. " => "Militärwesen",
            
"mitteld. " => "mitteldeutsch",
            
"mittelhochd. " => "mittelhochdeutsch",
            
"mlat. " => "mittellateinisch",
            
"mong. " => "mongolisch",
            
"Münzw. " => "Münzwesen",
            
"Mythol. " => "Mythologie",
            
"nationalsoz. " => "nationalsozialistisch",
            
"neutest. " => "neutestamentlich",
            
"ngriech. " => "neugriechisch",
            
"niederl. " => "niederländisch",
            
"nlat. " => "neulateinisch",
            
"Nom,. " => "Nominativ",
            
"nordamerik. " => "nordamerikanisch",
            
"nordd. " => "norddeutsch",
            
"nordgerm. " => "nordgermanisch",
            
"norw. " => "norwegisch",
            
"O.Ä. " => "oder Ähnliches",  
            
"offz. " => "offiziell",
            
"ökum. " => "ökumenisch",
            
"Ortsn. " => "Ortsname",
            
"ostd. " => "ostdeutsch",
            
"österr. " => "österreichisch",
            
"Österr. " => "Österreich",
            
"ostmitteld. " => "ostmitteldeutsch",
            
"Päd. " => "Pädagogik",
            
"palästin. " => "Pharmazie",
            
"Pharm. " => "palästinensisch",
            
"philos. " => "philosophisch",
            
"Philos. " => "Philosophie",
            
"Physiol. " => "Physiologie",
            
"Plur. " => "Plural",
            
"port. " => "portugiesisch",
            
"Postw. " => "Postwesen",
            
"Präp. " => "Präposition",
            
"Psych. " => "Psychologie",
            
"Rechtsspr. " => "Rechtssprache",
            
"Rechtsw. " => "Rechtswesen",
            
"Rel. " => "Religionswissenschaft",
            
"Rhet. " => "Rhetorik",
            
"Rundf. " => "Rundfunk",
            
"sanskr. " => "sanskritisch",
            
"scherzh. " => "scherzhaft",
            
"Schülerspr. " => "Schülersprache",
            
"Schulw. " => "Schulwesen",
            
"Schweiz. " => "schweizerisch",
            
"Seemannsspr. " => ",Seemannssprache",
            
"Seew. " => "Seewesen",
            
"Sing. " => "Singular",
            
"singhal. " => "singhalesisch",
            
"skand. " => "skandinavisch",
            
"Soldatenspr. " => "Soldatensprache",
            
"Soziol. " => "Soziologie",
            
"Sportspr. " => "Sportsprache",
            
"Sprachw. " => "Sprachwissenschaft",
            
"Stilk. " => "Stilkunde",
            
"stud. " => "studentisch",
            
"Studentenspr. " => "Studentensprache",
            
"südd. " => "süddeutsch",
            
"südwestd. " => "südwestdeutsch",
            
"svw. " => "so viel wie",
            
"Textilw. " => "Textilwesen",
            
"Theol. " => "Theologie",
            
"Tiermed. " => "Tiermedizin",
            
"Trenn. " => "Trennung",
            
"turkotat. " => "turkotatarisch",
            
"u.a. " => "und andere",
            
"U.Ä. " => "und Ähnliches",
            
"übertr. " => "übertragen",
            
"ugs. " => "umgangssprachlich",
            
"ung. " => "ungarisch",
            
"urspr. " => "ursprünglich",
            
"verkehrsw. " => "Verkehrswesen",
            
"versicherungsw. " => "Versicherungswesen",
            
"vgl. " => "vergleiche",
            
"völkerk. " => "Völkerkunde",
            
"vorn. " => "Vorname",
            
"weibl. " => "weiblich",
            
"westmitteld. " => "westmitteldeutsch",
            
"Zahnmed. " => "Zahnmedizin",
            
"z.B. " => "zum Beispiel",
            
"Zollw. " => "Zollwesen",
            
"Zool. " => "Zoologie",
            
"Zus. " => "Zusammensetzung"
        
);
    }

    
$text $text ";
    foreach(
$abbr_abbr as $abbr => $description) {
        
$text preg_replace("|(?!<[^<>]*?)(?<![?./&])\b$abbr\b(?!:)(?![^<>]*?>)|imsU","<abbr    title=\"$description\">$abbr</abbr>" $text); 
        
$text preg_replace("|[$]<abbr    title=\"$description\">$abbr</abbr>[$]|imsU" "$abbr$text);
    }
    return    
trim(    $text    );
}

add_filter('the_content''abbreviations'18);
add_filter('comment_text''abbreviations'18);
?>