Pâine de pâine - totul intră în composter. Filtrați și bucurați-vă

Se întâmplă că resursa rusă de întrebări și răspunsuri pe subiecte IT este destul de populară în CSI - prăjitor de pâine. Cu toate acestea, îi lipsea ceva când am început să-l cunosc îndeaproape. Acest lucru a dus la o îmbunătățire sub forma unei extensii de browser. Întâlnește-te cu mine.

Caracteristici cheie:

  • Titlu: Confortul prăjitorului de pâine.
  • Statistici utilizatori: procentul întrebărilor cu soluții; karma de la Habr; rezumat din profil - toate acestea se află pe lista de întrebări a Toaster.
  • Notificări: în timp real pe site, pe pictogramă, plus notificări push, multe setări, site-ul trebuie să fie deschis (вики).
  • Filtre: condiții bazate pe formule: puteți ascunde întrebări, le puteți colora și, de asemenea, puteți afișa notificări - toate acestea sunt configurate flexibil sub formă de condiții logice (вики).
  • interfaţă: îmbunătățiri minore, cum ar fi afișarea datelor exacte sau afișarea stării abonamentului în lista de întrebări.
  • Interfata Habr: îmbunătățiri minore (opționale), de exemplu, linii de indentare în comentarii.
  • Sursa deschisa: Îl poți reface singur dacă vrei cu adevărat (surse).
  • Gratuit: Licență MIT.
  • Consum de memorie: 30-50MB, în funcție de opțiunile și intensitatea utilizării Toaster-ului
  • Dimensiune: 93 KB pentru v0.8.1 (cod despachetat, necomprimat).
  • Cadru: lipsă, JS curat (minimalism).
  • Calitatea codului: medie, amestec de stiluri, caracteristici mari, trucuri murdare, puține comentarii.
  • Permisiuni: toster.ru, habr.com, notifications, storage, unlimitedStorage

Inițial, am făcut extensia pentru mine cu un singur scop: să arăt procentul de întrebări ale utilizatorului în care s-a obosit să facă clic pe butonul „Marcați ca soluție”. Apoi, încetul cu încetul, s-au adăugat mai întâi unul și apoi altul, până când unealta a devenit un monstru de o sută de kilobytes. Cu toate acestea, principiul „a nu folosi nimic inutil” a fost urmat până la capăt.

Una dintre caracteristicile principale acum este utilizarea formulelor în setări. Puteți face aproape orice cu ele, orice doriți să vă gestionați atenția. Principalul lucru este să știi ce să vrei. Ascunderea, schimbarea culorii și notificările sunt cele trei aspecte principale la care trebuie să acordați atenție atunci când lucrați cu un site web. Filtrarea tuturor lucrurilor este cheia confortului.

Un exemplu de regulă flexibilă care vă va permite să primiți notificări pe un anumit subiect:

!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

Voi spune imediat că funcția eval() nu a putut fi folosită. Deci nu te vei distra prea mult. Prin urmare, a trebuit să scriu propria mea cârjă în 5 KB de cod folosind notație poloneză inversă. Acesta, s-ar putea spune, este un JS foarte neutralizat, atât în ​​ceea ce privește funcțiile, cât și sintaxa.

A fost recent o postare despre Extensie Toster. În comparație, TE are o interfață mai frumoasă și câteva caracteristici pe care Toster Comfort nu le are. Cu toate acestea, extensia mea pune accent pe consumul de resurse. Cu toate acestea, nimeni nu vă deranjează să utilizați ambele extensii; acestea nu ar trebui să intre în conflict.

Într-un sens bun, TC trebuie rescris de la zero, deoarece lucrul poate fi accelerat de cel puțin două ori și poate lucra cu cache-ul - de 10 ori, prin abandonarea localStorage și JSON.stringify() și modificarea unor soluții arhitecturale. Dar nu eu sunt cel care trebuie să fac această ispravă. Și sunt un fan al principiului „dacă funcționează, nu-l atinge”. În timp ce sunt în vacanță, mă ocup activ de probleme și PR, dar nu în detrimentul minimalismului. Vă mulțumim pentru atenție!

Sursa: www.habr.com

Adauga un comentariu