Toaster – alles kommt in den Komposter. Filtern und genießen

Zufälligerweise erfreut sich die russische Q&A-Ressource zu IT-Themen in der GUS großer Beliebtheit – Toaster. Allerdings fehlte ihm etwas, als ich begann, ihn näher kennenzulernen. Dies führte zu einer Verbesserung in Form einer Browsererweiterung. Triff mich.

Hauptmerkmale:

  • Name: Toaster-Komfort.
  • Benutzerstatistiken: Prozentsatz der Fragen mit Lösungen; Karma von Habr; Zusammenfassung aus dem Profil – all das steht auf Toasters Fragenliste.
  • Hinweise: in Echtzeit auf der Seite, auf dem Icon, dazu Push-Benachrichtigungen, viele Einstellungen, die Seite muss geöffnet sein (Wiki).
  • Filter: Bedingungen basierend auf Formeln: Sie können Fragen ausblenden, einfärben und auch Benachrichtigungen anzeigen – alles ist flexibel in Form von logischen Bedingungen konfiguriert (Wiki).
  • Schnittstelle: kleinere Verbesserungen, wie z. B. die Anzeige genauer Termine oder die Anzeige des Abonnementstatus im Fragenkatalog.
  • Habr-Schnittstelle: Kleinere Verbesserungen (optional), zum Beispiel Einrückungszeilen in Kommentaren.
  • Open Source: Sie können es für sich selbst neu erstellen, wenn Sie wirklich möchten (Quellen).
  • Kostenlos: MIT-Lizenz.
  • Speicherverbrauch: 30–50 MB, abhängig von den Optionen und der Nutzungsintensität des Toasters
  • Größe: 93 KB für v0.8.1 (entpackter, nicht minimierter Code).
  • Rahmen: fehlendes, sauberes JS (Minimalismus).
  • Codequalität: Durchschnittlich, Stilmix, große Features, schmutzige Tricks, wenige Kommentare.
  • Berechtigungen: toster.ru, habr.com, notifications, storage, unlimitedStorage

Ursprünglich habe ich die Erweiterung für mich selbst mit einem einzigen Zweck erstellt: um den Prozentsatz der Fragen des Benutzers anzuzeigen, bei denen er sich die Mühe gemacht hat, auf die Schaltfläche „Als Lösung markieren“ zu klicken. Dann kam nach und nach erst eins und dann noch eins dazu, bis das Tool zu einem Monster von hundert Kilobyte heranwuchs. Dennoch wurde bis zum Schluss der Grundsatz „nichts Unnötiges verwenden“ eingehalten.

Eines der Hauptfeatures ist nun die Verwendung von Formeln in den Einstellungen. Sie können mit ihnen fast alles machen und Ihre Aufmerksamkeit steuern. Die Hauptsache ist, zu wissen, was man will. Ausblenden, Ändern von Farben und Benachrichtigungen sind die drei Hauptaspekte, auf die Sie bei der Arbeit mit einer Website achten sollten. Das Filtern von allem und jedem ist der Schlüssel zur Bequemlichkeit.

Ein Beispiel für eine flexible Regel, mit der Sie Benachrichtigungen zu einem bestimmten Thema erhalten können:

!tag("Блокирование рекламы") && !contains(t,"реклам") && contains(t,"блокиров") && !tag("HTACCESS") || containsWord(t,"ркн") || contains(t,"роскомнадзор") || contains(t,"роскомпозор") || contains(t,"государств") || contains(t,"запрещен") || contains(t,"запрещён") || contains(t,"пиратск") || containsWord(t,"обход") || containsWord(t,"ростелеком") || containsWord(t,"яровой") || containsWord(t,"рф") && tag("Компьютерные сети") = notify

Ich sage gleich, dass die Funktion eval() nicht verwendet werden konnte. Du wirst also nicht viel Spaß haben. Daher musste ich meine eigene Krücke in 5 KB Code schreiben umgekehrte polnische Notation. Man könnte sagen, dass es sich hierbei um stark kastriertes JS handelt, sowohl was die Funktionen als auch die Syntax betrifft.

Kürzlich gab es einen Beitrag darüber Toster-Erweiterung. Im Vergleich dazu hat TE eine schönere Benutzeroberfläche und einige Funktionen, die Toster Comfort nicht bietet. Meine Erweiterung betont jedoch den Ressourcenverbrauch. Es stört Sie jedoch niemand, beide Erweiterungen zu verwenden; sie sollten nicht in Konflikt geraten.

Im positiven Sinne muss TC von Grund auf neu geschrieben werden, da die Arbeit durch den Verzicht auf localStorage und JSON.stringify() und die Änderung einiger Architekturlösungen um mindestens das Doppelte und die Arbeit mit dem Cache um das Zehnfache beschleunigt werden kann. Aber nicht ich muss dieses Kunststück vollbringen. Und ich bin ein Fan des Prinzips „Wenn es funktioniert, rühr es nicht an.“ Während ich im Urlaub bin, beschäftige ich mich aktiv mit Themen und PR, aber nicht auf Kosten des Minimalismus. Vielen Dank für Ihre Aufmerksamkeit!

Quelle: www.habr.com

Kommentar hinzufügen