Benutzer Diskussion:TMg/userHighlight.js

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

Dieses Benutzerskript lädt eine eigene Beobachtungsliste (das kann eine ganz normale Unterseite im eigenen Benutzernamensraum sein) und hebt überall die in dieser Liste aufgezählten Links hervor. Hervorgehoben wird standardmäßig blau oder abschnittsweise mit Hilfe der Vorlage {{Farblegende|…}}. Zur Entstehung des Skripts siehe Wikipedia:Technik/Skin/Werkstatt.

Folgende Zeilen entweder in die eigene common.js (zur lokalen Verwendung nur in der deutschsprachigen Wikipedia) oder die eigene global.js im Meta-Wiki (zur globalen Verwendung in allen Wikimedia-Wikis) kopieren. Der eigene Seitenname in der zweiten Zeile muss angepasst werden. Er sollte auf eine zuvor angelegte Seite verweisen, die die hervorzuhebenden Links enthält.

// [[User:TMg/userHighlight.js]]
var userHighlightList = 'Benutzer:Eigener Name/Eigene Unterseite';
mw.loader.load( '//de.wikipedia.org/w/index.php?title=Benutzer:TMg/userHighlight.js&action=raw&ctype=text/javascript' );

Mehrere Seiten können mit senkrechten Strichen getrennt angegeben werden, zum Beispiel var userHighlightList = 'A|B';. Fehlt die Zeile, wird die eigene Benutzerseite verwendet. Die Art der Hervorhebung kann per var userHighlightStyle = ''; angepasst werden.

Mehrere Farben[Quelltext bearbeiten]

Verwendet man in der Liste mit den zu beobachtenden Artikeln die Vorlage {{Farblegende|#CCFFCC}}, werden alle nachfolgenden Links entsprechend gefärbt. Erlaubt sind Webfarben in allen Schreibweisen, zum Beispiel #CCFFCC für ein blasses Grün.

Ausblenden statt hervorheben[Quelltext bearbeiten]

Durch die Angabe eines individuellen Stils kann die Funktion des Skripts auch umgekehrt werden. Der folgende Stil schwärzt alle in der „Ignorierliste“ aufgezählten Links, sie sind allerdings noch anklickbar:

var userHighlightStyle = 'background: #222; border-radius: 2px; color: #222;';

Der folgende Stil blendet die Links aus. Sie sind dann auch nicht mehr anklickbar:

var userHighlightStyle = 'visibility: hidden;';

Schnelle Alternative für wenige Links[Quelltext bearbeiten]

Sollen nur wenige Links hervorgehoben werden, können anstelle des Benutzerskripts auch ein oder mehrere Abschnitte ähnlich wie der folgende in die eigene common.css (nicht .js) eingetragen werden:

a[title="Berlin"],
a[title="München"] {
  background: #CCE0FF;                     /* Hellblau für ältere Webbrowser */
  background-color: rgba(0, 102, 255, .2); /* transparentes Blau für moderne Webbrowser */
  border-radius: 2px;
}

Diese Methode kann fehlschlagen, wenn Helferlein wie der Begriffsklärungs-Check zum Einsatz kommen, der die zur Selektion genutzten title-Attribute verändert. Dann muss auf die href-Attribute ausgewichen werden:

a[href="/wiki/Berlin"],
a[href="/wiki/M%C3%BCnchen"] {

Zusätzlich kann die Zeile .bkl-link { background-color: rgba(255, 0, 0, .43); } ergänzt werden, die das Rot des Begriffsklärungs-Checks zu einer Mischfarbe macht.

Die Verwendung von href statt title hat den Nachteil, dass Links auf Überschriften (mit sogenannten #Ankern) nicht mehr hervorgehoben werden. Das lässt sich wie folgt beheben:

a[href ="/wiki/Berlin"],
a[href^="/wiki/Berlin#"],

Die Zusammenfassung zu a[href^="/wiki/Berlin"] ist nicht zu empfehlen, da dann auch Links auf Berliner Mauer u. ä. hervorgehoben werden.

Diskussion[Quelltext bearbeiten]

Färbung verschwindet[Quelltext bearbeiten]

en:User:Lupin/popups.js entfernt bei mouseover das title-Attribut von den Links. Dadurch verschwindet meine Färbung, da sie genau diese title nutzt. Die Lösung muss wohl sein, statt der title- die href-Attribute zu verwenden. --TMg 23:57, 24. Jun. 2012 (CEST)[Beantworten]

Ich habs wie angedeutet mal umgestellt. Dadurch funktioniert das Hervorheben von Interwiki-Links nicht mehr. Wenn jemand diese Funktion haben möchte, bitte melden. --TMg 00:19, 25. Jun. 2012 (CEST)[Beantworten]

Das funktioniert, vielen Dank! --Drahreg01 06:37, 25. Jun. 2012 (CEST)[Beantworten]

Weiterleitungen?[Quelltext bearbeiten]

Wenn Weiterleitungen hervorgehoben werden sollen, müssen diese mit in die eigene Beobachtungsliste aufgenommen werden. Das zu automatisieren, wäre technisch zwar möglich, meiner Meinung nach aber zu ressourcenhungrig (vor allem für euch, denn die Ladezeit und die übertragene Datenmenge würde sich stark erhöhen) --TMg 23:57, 24. Jun. 2012 (CEST)[Beantworten]

Unter Benutzer:Drahreg01/Medizinpreise/Vollständigkeit werden einige Weiterleitungen markiert (z.B. Thierry Boon-Falleur), andere nicht. (z.B. Choh H. Li). Ich benutze Firefox 12.0. --Drahreg01 06:47, 25. Jun. 2012 (CEST)[Beantworten]
Siehe unten. --TMg 00:24, 26. Jun. 2012 (CEST)[Beantworten]

Wenige Lücken[Quelltext bearbeiten]

Unter Benutzer:Drahreg01/Showroom werden 4,0 Artikel nicht eingefärbt: Canada Gairdner Global Health Award‎‎, Genetics Society of America Medal‎‎, Gruber-Preis für Neurowissenschaften‎, Gruber-Preis für Frauenrechte. Es sind keine Weiterleitungen und ich habe keinen Unterschied in der Syntax gefunden. --Drahreg01 06:47, 25. Jun. 2012 (CEST)[Beantworten]

Das böse unsichtbare LEFT-TO-RIGHT MARK (U+200E) mal wieder. Das ist dir beim Erstellen deiner Liste ans Ende dieser Links gerutscht. Mein autoFormatter säubert das übrigens, aber das nur nebenbei. Ich hab hier jetzt auch eine ganz einfache Lösung eingebaut, die den Fehler zumindest in Fällen wie bei dir korrigiert. --TMg 00:24, 26. Jun. 2012 (CEST)[Beantworten]
Auf meiner (normalen) Beobachtungsliste sehe ich öfter mal, dass jemand in "meinen" Artikeln diese unsichtbaren Zeichen entfernt. Wie kommen die denn da rein? Die muss ich ja eingefügt haben. (Hat jetzt nichts mit deinem Skript zu tun, interessiert mich nur und ist auch offenbar verantwortlich für bestimmte unerwünschte Wirkungen.) Vielen Dank für deine Bemühungen! LG, --Drahreg01 06:22, 26. Jun. 2012 (CEST)[Beantworten]
Das passiert beim Kopieren, aber ich kann dir nicht sagen, in welchem Moment genau diese Zeichen entstehen. Möglicherweise ein Firefox-Bug, der nur unter Mac OS passiert. --TMg 13:59, 26. Jun. 2012 (CEST)[Beantworten]

Linnean Society of London wird eingefärbt, obwohl es nicht auf der Liste steht. --Drahreg01 07:04, 25. Jun. 2012 (CEST)[Beantworten]

Oh. Das liegt daran, dass ich Links nicht auf Gleichheit untersuche sondern auf den Beginn. In deiner Liste stehen „Linnea“ und „Thierry Boon“, deswegen werden „Linnean Society of London“ und „Thierry Boon-Falleur“ mit erkannt. Mit meiner aktuellen Technik geht das leider nicht anders, da sonst Links mit #Ankern am Ende nicht erkannt würden. Obwohl man natürlich fragen könnte, was von beidem praxisrelevanter ist? Mal sehen, vielleicht fällt mir dazu noch was ein. Auf jeden Fall ein wichtiger Hinweis, danke. Ich bleibe dran. --TMg 00:24, 26. Jun. 2012 (CEST)[Beantworten]
Das heißt, wenn auf meiner Liste die Artikel A, B, C… wären, hätte ich das Tool nutzlos gemacht? --Drahreg01 06:26, 26. Jun. 2012 (CEST)[Beantworten]
Ja, so ist es. Ich habs fürs Erste mal umgestellt, mit dem schon angedeuteten Nachteil, dass jetzt #Anker-Links nicht mehr erkannt werden. --TMg 13:59, 26. Jun. 2012 (CEST)[Beantworten]

Das Helferlein zum Markieren von BKL ist "stärker" als dieses Skript. D.h. BKLs werden rot eingefärbt, nicht blau, selbst wenn sie auf der Liste stehen. Keine Kritik, nur eine Beobachtung. --Drahreg01 06:47, 25. Jun. 2012 (CEST)[Beantworten]

Lustig. Ja, mein Skript ist sehr zurückhaltend und wird von anderen leicht „overruled“. Ich habe mich mal an einer dezenten Anpassung für diesen Fall versucht. --TMg 23:59, 25. Jun. 2012 (CEST)[Beantworten]

Feature request[Quelltext bearbeiten]

Also, ich brauche das nicht, aber wäre es evtl. sinnvoll (oder ist es gar jetzt schon möglich?) mehrere Listen zu haben und unterschiedlich einzufärben? Viele Grüße, --Drahreg01 16:59, 26. Jun. 2012 (CEST)[Beantworten]

Möglich ist alles. Ich würde das aber erst umsetzen, wenn es wirklich jemand wünscht. --TMg 00:19, 27. Jun. 2012 (CEST)[Beantworten]
Jetzt hätte ich gerne die Möglichkeit mehrere Listen einzufärben, möglichst mit unterschiedlichen Farben. Wenn es viel Programmieraufwand ist oder jeden Seitenaufruf drastisch verlangsamt, dann nicht. Viele liebe Grüße, --Drahreg01 (Diskussion3Wf 17:23, 26. Mär. 2014 (CET)[Beantworten]
Mir ist eine ziemlich elegante Möglichkeit eingefallen. Du kannst deine Seite in Abschnitte unterteilen (das hast du ja schon) und jeden Abschnitt mit einer Vorlage {{Farblegende|…}} einleiten. Alles, was nach einer solchen Farblegende folgt, wird entsprechend gefärbt, bis die nächste Farblegende folgt. Ich hoffe, es klappt. --TMg 21:26, 27. Mär. 2014 (CET)[Beantworten]
Klingt cool. Die zweite Liste, die ich einfärben möchte, befindet sich aber auf einer ganz anderen Seite. Hättest du dafür auch eine Idee? Oder muss ich dann beide Seiten auf einer dritten einbinden, wo ich dann die Farbcodes verwende? LG, --Drahreg01 (Diskussion3Wf 21:38, 27. Mär. 2014 (CET)[Beantworten]
Einbinden geht nicht. Hm. Ich hab nochmal geschaut, was technisch geht, und du wirst dich freuen. :-) Siehe oben. --TMg 22:21, 27. Mär. 2014 (CET)[Beantworten]
Super, super, super! Vielen Dank! --Drahreg01 (Diskussion3Wf 18:24, 28. Mär. 2014 (CET)[Beantworten]

Funktioniert nicht mehr[Quelltext bearbeiten]

Seit geraumer Zeit funktioniert das Skript (bei mir) nicht mehr. Hervorgehoben sind noch meine Benutzer- und meine Benutzerdiskussionsseite. Die anderen nicht. Woran könnte es liegen? Viele Grüße, --Drahreg01 (Diskussion) Hilf mit! 10:57, 5. Feb. 2016 (CET)[Beantworten]

phab:T95715. Grrr. Das war schon im November 2015. Geht es jetzt wieder? --TMg 13:09, 5. Feb. 2016 (CET)[Beantworten]
Geht wieder. Herzlichen Dank! --Drahreg01 (Diskussion) Hilf mit! 13:54, 5. Feb. 2016 (CET)[Beantworten]
Dieser Abschnitt kann archiviert werden. TMg 13:09, 5. Feb. 2016 (CET)