Náhodou je ruský zdroj otázek a odpovědí na IT témata v SNS docela populární - . Něco mu však chybělo, když jsem ho začal zblízka poznávat. To mělo za následek vylepšení v podobě rozšíření prohlížeče. Seznamte se se mnou.
Klíčové vlastnosti:
- Název: Toustovač Comfort.
- Statistiky uživatelů: procento otázek s řešením; karma od Habra; shrnutí z profilu - to vše je na seznamu otázek Toasteru.
- Upozornění: v reálném čase na webu, na ikoně, plus push notifikace, mnoho nastavení, web musí být otevřený ().
- Filtry: podmínky založené na vzorcích: můžete skrýt otázky, vybarvit je a také zobrazovat oznámení - to vše je flexibilně konfigurováno ve formě logických podmínek ().
- Rozhraní: drobná vylepšení, jako je zobrazení přesných dat nebo zobrazení stavu předplatného v seznamu otázek.
- Rozhraní Habr: drobná vylepšení (volitelná), například odsazení řádků v komentářích.
- Otevřený zdroj: Můžete si to předělat pro sebe, pokud opravdu chcete ().
- Uvolnit: Licence MIT.
- Platforma: , .
- Spotřeba paměti: 30-50MB, v závislosti na možnostech a intenzitě používání Toustovače
- Velikost: 93 kB pro verzi 0.8.1 (rozbaleno, neminifikovaný kód).
- Rámec: chybí, čistý JS (minimalismus).
- Kvalita kódu: průměr, mix stylů, velké funkce, špinavé triky, málo komentářů.
- Oprávnění:
toster.ru, habr.com, notifications, storage, unlimitedStorage
Zpočátku jsem rozšíření vytvořil pro sebe s jediným účelem: ukázat procento dotazů uživatele, ve kterých se obtěžoval kliknout na tlačítko „Označit jako řešení“. Pak se postupně přidával nejprve jeden a pak další, dokud se nástroj nerozrostl v monstrum o velikosti sta kilobajtů. Nicméně zásada „nepoužívat nic zbytečného“ byla dodržena až do konce.
Jednou z hlavních funkcí je nyní použití vzorců v nastavení. Můžete s nimi dělat téměř cokoli, cokoli, co chcete řídit svou pozornost. Hlavní je vědět, co chtít. Skrytí, změna barev a upozornění jsou tři hlavní aspekty, kterým je třeba věnovat pozornost při práci s webem. Filtrování čehokoli a všeho je klíčem k pohodlí.
Příklad flexibilního pravidla, které vám umožní přijímat upozornění na konkrétní téma:
!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("Компьютерные сети") = notifyHned řeknu, že funkci eval() nelze použít. Moc zábavy si tedy neužijete. Proto jsem musel napsat svou vlastní berličku v 5 KB kódu pomocí . Dalo by se říci, že jde o vysoce kastrovaný JS, a to jak z hlediska funkcí, tak syntaxe.
Nedávno tu byl příspěvek o . Ve srovnání s tím má TE hezčí rozhraní a některé funkce, které Toster Comfort nemá. Moje rozšíření však zdůrazňuje spotřebu zdrojů. Nikdo vás však neobtěžuje používat obě rozšíření, neměla by být v konfliktu.
V dobrém slova smyslu je potřeba TC přepsat od nuly, protože práci lze urychlit minimálně dvakrát, a pracovat s mezipamětí – 10krát, opuštěním localStorage a JSON.stringify() a změnou některých architektonických řešení. Ale nejsem to já, kdo musí dělat tento výkon. A jsem zastáncem zásady „když to funguje, nesahej na to“. Zatímco jsem na dovolené, aktivně se věnuji tématům a PR, ale ne na úkor minimalismu. Děkuji za pozornost!
Zdroj: www.habr.com
