Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
/*

  übernommen von http://de.wikipedia.org/w/index.php?title=Benutzer:BLueFiSH.as/JS/replaceQuoteSigns.js

*/

// führt die Umwandlung von normalen (") Anführungszeichen in typografisch korrekte („“)durch.
// Auch einzelne Anführungszeichen werden umgewandelt (‚‘)
//
// Funktion sicher noch nicht 100 % sicher, daher unbedingte Nachkontrolle erforderlich
//
// Verbesserungsvorschläge oder Codeoptimierungen sind sehr erwünscht.


function ReplaceQuoteSigns()
{ var tv = document.editform.wpTextbox1.value;
  
    // Sonderfälle umwandeln zum Erhalt
    tv = tv.replace(/(\w)\=\"/g, "$1§$%");
    tv = tv.replace(/\;\"/g, "$%&");
    tv = tv.replace(/\"\//g, "%&/");
    tv = tv.replace(/\" \//g, "% &/");
    tv = tv.replace(/\"\>/g, "%&>");
    tv = tv.replace(/(\d)'/g, "$1#~");
    tv = tv.replace(/(\w)'(\w)/g, "$1##$2");

    // Anführungszeichen umwandeln
    // auf - Sonderzeichen davor
    tv = tv.replace(/(\s|\(|\|)\"/g, "$1„");   // ("''bla / |"bla
    // auf - Sonderzeichen danach
    tv = tv.replace(/\"(\w|\[)/g, "„$1");      // "[[bla
    // zu - Sonderzeichen davor
    tv = tv.replace(/(\w|\.|\!|\?|\])\"/g, "$1“");   // ." / bla]]"
    // zu - Sonderzeichen danach
    tv = tv.replace(/\"(\s|\]|\.|\,|\;|-|\))/g, "“$1"); // bla"-bla / bla''") / bla"] / bla''". / bla''",
    
    // Ausnahmen zurückkorrigieren
    if (tv.search(/‚/) < 0) tv = tv.replace(/‘/g, "'");
    tv = tv.replace(/“ \|/g, "\" |");
    tv = tv.replace(/“\|/g, "\"|");
    tv = tv.replace(/prettytable“/g, "prettytable\"");
    tv = tv.replace(/right“/g, "right\"");
    tv = tv.replace(/left“/g, "left\"");
    tv = tv.replace(/center“/g, "center\"");
    tv = tv.replace(/px“/g, "px\"");
    tv = tv.replace(/“ align/g, "\" align");
    tv = tv.replace(/“ valign/g, "\" valign");
    tv = tv.replace(/“ width/g, "\" width");
    tv = tv.replace(/“ cell/g,  "\" cell");
    tv = tv.replace(/“ style/g, "\" style");
    tv = tv.replace(/“ bgcolor/g, "\" bgcolor");
    tv = tv.replace(/“ col/g, "\" col");
    tv = tv.replace(/“\n\|/g, "\"\n|");
    tv = tv.replace(/“\n\!/g, "\"\n!");
    tv = tv.replace(/\“ ([N|S]),/g, "\" $1,");
    tv = tv.replace(/\“ ([O|W])\}\}/g, "\" $1}}");
    tv = tv.replace(/\“\&nbsp/g, "\"&nbsp");
    tv = tv.replace(/\“ ([n|s|ö|w])\./g, "\" $1.");
    
    // Sonderfälle zurückwandeln
    tv = tv.replace(/\§\$\%/g, "=\"");
    tv = tv.replace(/\$\%\&/g, ";\"");
    tv = tv.replace(/\%\&\//g, "\"/");
    tv = tv.replace(/\% \&\//g, "\" /");
    tv = tv.replace(/\%\&\>/g, "\">");
    tv = tv.replace(/\#\~/g, "'");
    tv = tv.replace(/##/g, "'");
    
    document.editform.wpTextbox1.value = tv;
    if (wgUserName != "BLueFiSH.as") {document.editform.wpDiff.click();}
}

/*  Testbeispiele
Soll das Skript nicht umwandeln:

<ref name="Hallo" />
<br style="clear:both">
You're Havin' Better
{{Koordinate Artikel|40"&nbsp;N, 44"&nbsp;O}}
{{Koordinate Artikel|40" N, 44" O}}
{{Koordinate Artikel|40" n. Br., 13° 24' 39" ö. L.}}
align="|
align="right" |
bla" align
bla" cell
bla" style
px"
bla" bgcolor
bla"
|
bla"
!

Soll das Skript "umwandeln":

und "[[International Sufi Movement]]". Zudem
"Hallo"
Hallo ''"Hallo"'' Hallo
Hallo "''Hallo''" Hallo
==="problematisch"===
''"kursiv"'' und '''"fett"'''
die Kür: 'single' 'quotes' kann das 'Skript' wohl nicht. 
Warum 'eigentlich nicht'?
obwohl man "die in Zitaten 'innerhalb von Zitaten' braucht".
Gestern ("Montag") und morgen (''"Mittwoch"'').
"Ich sehe das anders!", sagte er.
Das ist ''"richtig so"'' und ''"das auch!!"'' aber "das auch?"
*/