Benutzer:Jacob000/monobook.js

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

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
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
/* http://de.wikipedia.org/wiki/Benutzer:Messi/monobook.js */

function genMessiLink(func, txt, title) {
  return "<a style=\"font-size:18px; border:1px solid #CCC; padding:0px 2px; text-decoration:none;\" href=\"javascript:" + func + "\" title=\"" + title + "\">" + txt + "</a> ";
}
+ffff“„bar
messilinks =
   genMessiLink("MessiInsertTags('„','“','&quot;','&quot;')", "„ “", "Anführungszeichen")
 + genMessiLink("MessiInsertTags('‚','‘','\\'','\\'')", "‚ ‘", "Anführungszeichen (einfach)")
 + genMessiLink("MessiInsertTags('»','«','&quot;','&quot;')", "» «", "alternative Anführungszeichen")
 + genMessiLink("MessiInsertTags('›','‹','\\'','\\'')", "› ‹", "alternativ Anführungszeichen (einfach)")
 + genMessiLink("MessiInsertTags('“','”','&quot;','&quot;')", "“ ”", "englische Anführungszeichen")
 + genMessiLink("MessiInsertTags('‘','’','\\'','\\'')", "‘ ’", "englische Anführungszeichen (einfach)")
 /*+ " &nbsp; "
 + genMessiLink("MessiInsertTags('»','«','„','“')", "„“ &rarr; »«", "")
 + genMessiLink("MessiInsertTags('„','“','»','«')", "»« &rarr; „“", "")*/
 + " &nbsp; "
 + genMessiLink("insertTags('°′″','','')", "° ′ ″", "Grad, Bogenminuten und -sekunden")
 + " &nbsp; "
 + genMessiLink("insertTags('+','','')", "+", "plus")
 + genMessiLink("insertTags('−','','')", "−", "minus (&amp;minus;)")
 + genMessiLink("insertTags('×','','')", "×", "mal (&amp;times;)")
 + genMessiLink("insertTags('÷','','')", "÷", "dividiert (&amp;divide;)")
 + genMessiLink("insertTags('±','','')", "±", "plus/minus (&amp;plusmn;)")
 + " &nbsp; "
 + genMessiLink("insertTags('-','','')", "-", "Bindestrich")
 + genMessiLink("insertTags('–','','')", "–", "Gedankenstrich (&amp;ndash;)")
 + genMessiLink("insertTags('—','','')", "—", "Geviertstrich (&amp;mdash;)")
 + " &nbsp; "
 + genMessiLink("insertTags('…','','')", "…", "Ellipse")
 + genMessiLink("insertTags('␣','','')", "␣", "")
 + genMessiLink("insertTags('‰','','')", "‰", "Promille (&amp;permil;)")
 + genMessiLink("insertTags('≤','','')", "≤", "kleiner/gleich (&amp;le;)")
 + genMessiLink("insertTags('≥','','')", "≥", "größer/gleich (&amp;ge;)")
 + " &nbsp; "
 + genMessiLink("insertTags('\\n{'+'{Personendaten|\\n NAME=\\n|ALTERNATIVNAMEN=\\n|KURZBESCHREIBUNG=\\n|GEBURTSDATUM=\\n|GEBURTSORT=\\n|STERBEDATUM=\\n|STERBEORT=\\n}'+'}\\n','','')", "PD", "Personendaten")
 + genMessiLink("MessiComment('Änderungen von [[Benutzer:]] rückgängig gemacht und letzte Version von [[Benutzer:]] wiederhergestellt',true)", "rf", "rollback fake");

function MessiComment(commentText, minor) {
  var minorCB = document.getElementsByName("wpMinoredit").item(0);
  var commentTB = document.getElementsByName("wpSummary").item(0);
  if (minorCB != null && commentTB != null) {
    minorCB.checked = minor;
    commentTB.value = commentText;
  }
}

/* Funktion entspricht in etwa insertTags(), entfernt aber z. B. die falschen
 * Anführungszeichen, wenn diese mit markiert werden.
 * Beispiel: MessiInsertTags('„','“','"','"')
 * "Wort" wird zu „Wort“ (und nicht "„Wort“" oder „"Wort"“)
 */ 
function MessiInsertTags(tagOpen, tagClose, tagOpenOld, tagCloseOld) {
  var txtarea = document.getElementById("editform").childNodes[1];
  if (txtarea != null && txtarea.name == "wpTextbox1") {
    var startPos = txtarea.selectionStart;
    var endPos = txtarea.selectionEnd;
    var scrollTop = txtarea.scrollTop;
    var myText = (txtarea.value).substring(startPos, endPos);

    if (myText.length >= 2 && myText.charAt(0) == tagOpenOld && myText.charAt(myText.length-1) == tagCloseOld)
      myText = myText.substring(1, myText.length-1);

    var subst = tagOpen + myText + tagClose;

    txtarea.value = txtarea.value.substring(0, startPos) + subst +
                    txtarea.value.substring(endPos, txtarea.value.length);
    txtarea.focus();

    var cPos = startPos + (tagOpen.length + myText.length + tagClose.length);
    txtarea.selectionStart = cPos;
    txtarea.selectionEnd = cPos;
    txtarea.scrollTop = scrollTop;
  } else {
    alert("Keine TextArea");
  }
}

/*

Messi: so sollte ich immer beide Leisten kriegen. Das "Messi v3:" hab ich rein, damit ich cache-Probleme erkennen kann.

Status:
 Opera 7 und 8: Leiste erscheint nur in der Vorschau von Seiten, die die normale "toolbar" nicht haben.
 Opera 7: Knöpfe machen nix. Ich vermute, die wirken auf die Eingabezeile, die zur "toolbar" gehört, so wie die "toolbar"-Knöpfe auch. Aber die ist halt nicht da...
 Opera 8: Knöpfe tun.
 Firefox 1.0.6: Mit window.onload tut alles. Mit document.onload tut sich gar nix.
 Safari: Mit Deiner Originalversion, Problem wie gechattet. Mit document.onload konnt ich's nicht probieren, da ich auf die Schnelle den Cache nicht geleert bekomme.

Eins noch: dem mdash benutzt man im deutschen nicht, den kannst streichen. Nimm lieber den echten Bindestrich auf. Und vielleicht noch &thinsp;.

*/

function MessiLoad() {
  var plainlinks = document.getElementById("editpage-copywarn-plainlinks");
  if (plainlinks != null) {
    plainlinks.innerHTML = "<p>" + messilinks + "<br/>" + plainlinks.innerHTML + "</p>";
  }
  var toolbar = document.getElementById("toolbar");
  if (toolbar != null) {
    toolbar.innerHTML = messilinks + "<br/>" + toolbar.innerHTML;
  }
}

document.onload = MessiLoad;