Torradora: tot va al compostador. Filtra i gaudeix

Passa la casualitat que el recurs de preguntes i respostes rus sobre temes informàtics és força popular a la CEI: Torradora. Tanmateix, li faltava alguna cosa quan vaig començar a conèixer-lo de prop. Això va donar lloc a una millora en forma d'extensió del navegador. Coneix-me.

Característiques clau:

  • Títol: Confort de la torradora.
  • Estadístiques d'usuari: percentatge de preguntes amb solucions; karma d'Habr; resum del perfil: tot això es troba a la llista de preguntes de Toaster.
  • Avisos: en temps real al lloc, a la icona, a més de notificacions push, molts paràmetres, el lloc ha d'estar obert (wiki).
  • Filtres: condicions basades en fórmules: podeu amagar preguntes, acolorir-les i també mostrar notificacions; tot això es configura de manera flexible en forma de condicions lògiques (wiki).
  • Interfície: millores menors, com ara mostrar les dates exactes o mostrar l'estat de la subscripció a la llista de preguntes.
  • Interfície Habr: millores menors (opcionals), per exemple, línies de sagnat als comentaris.
  • Codi obert: Podeu refer-lo vosaltres mateixos si realment voleu (fonts).
  • Gratuït: Llicència MIT.
  • Consum de memòria: 30-50MB, segons les opcions i la intensitat d'ús de la torradora
  • Mida: 93 KB per a la v0.8.1 (codi desempaquetat, no minificat).
  • Marc: falta, net JS (minimalisme).
  • Qualitat del codi: mitjana, barreja d'estils, grans característiques, trucs bruts, pocs comentaris.
  • Permisos: toster.ru, habr.com, notifications, storage, unlimitedStorage

Inicialment, vaig fer l'extensió per mi mateix amb un únic propòsit: mostrar el percentatge de preguntes de l'usuari en què es va molestar a fer clic al botó "Marca com a solució". Després, a poc a poc, se'n van anar afegint primer un i després un altre, fins que l'eina es va convertir en un monstre de cent kilobytes. No obstant això, el principi de "no utilitzar res innecessari" es va seguir fins al final.

Una de les principals característiques ara és l'ús de fórmules a la configuració. Podeu fer gairebé qualsevol cosa amb ells, qualsevol que vulgueu per gestionar la vostra atenció. El més important és saber què voler. Amagar, canviar els colors i les notificacions són els tres aspectes principals als quals cal prestar atenció quan es treballa amb un lloc. Filtrar qualsevol cosa i tot és clau per a la comoditat.

Un exemple de regla flexible que us permetrà rebre notificacions sobre un tema específic:

!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

De seguida diré que la funció eval() no es pot utilitzar. Així que no et divertiràs gaire. Per tant, vaig haver d'escriure la meva pròpia crossa en 5 KB de codi utilitzant notació polonesa inversa. Això, es podria dir, és un JS altament neutralitzat, tant pel que fa a les funcions com a la sintaxi.

Recentment hi ha hagut una publicació sobre Extensió Toster. En comparació, TE té una interfície més agradable i algunes funcions que Toster Comfort no té. Tanmateix, la meva extensió posa èmfasi en el consum de recursos. Tanmateix, ningú us molesta a utilitzar les dues extensions; no haurien de entrar en conflicte.

En bona manera, cal reescriure TC des de zero, perquè el treball es pot accelerar almenys dues vegades i treballar amb la memòria cau, 10 vegades, abandonant localStorage i JSON.stringify() i canviant algunes solucions arquitectòniques. Però no sóc jo qui he de fer aquesta gesta. I sóc fan del principi "si funciona, no el toquis". Mentre estic de vacances, estic assumint activament els problemes i les relacions públiques, però no a costa del minimalisme. Gràcies per la vostra atenció!

Font: www.habr.com

Afegeix comentari