توستر - همه چیز به کمپوستر می رود. فیلتر کنید و لذت ببرید

اتفاقاً منبع پرسش و پاسخ روسی در مورد موضوعات فناوری اطلاعات در CIS بسیار محبوب است - توستر. با این حال، وقتی از نزدیک با او آشنا شدم، او چیزی را از دست داد. این منجر به بهبود در قالب افزونه مرورگر شد. بیا دیدنم.

کلمات کلیدی:

  • عنوان: توستر راحتی.
  • آمار کاربران: درصد سوالات با راه حل؛ کارما از حبر; خلاصه از نمایه - همه اینها در لیست سوالات توستر است.
  • اطلاعیه ها: در زمان واقعی در سایت، روی نماد، به علاوه اعلان های فشار، تنظیمات بسیاری، سایت باید باز باشد (ویکی).
  • فیلترها: شرایط بر اساس فرمول ها: می توانید سؤالات را پنهان کنید، آنها را رنگ آمیزی کنید و همچنین اعلان ها را نشان دهید - همه اینها به صورت انعطاف پذیر در قالب شرایط منطقی پیکربندی شده است (ویکی).
  • رابط: بهبودهای جزئی، مانند نمایش تاریخ دقیق یا نمایش وضعیت اشتراک در لیست سوالات.
  • رابط هابر: بهبودهای جزئی (اختیاری)، به عنوان مثال، خطوط تورفتگی در نظرات.
  • متن باز: اگر واقعاً بخواهید می توانید آن را برای خودتان دوباره بسازید (منابع).
  • رایگان: مجوز MIT.
  • مصرف حافظه: 30-50 مگابایت، بسته به گزینه ها و شدت استفاده از توستر
  • حجم: 93 کیلوبایت برای نسخه 0.8.1 (کد بسته نشده، کوچک نشده).
  • چارچوب: گم شده، JS تمیز (مینیمالیسم).
  • کیفیت کد: متوسط، ترکیبی از سبک ها، ویژگی های بزرگ، ترفندهای کثیف، نظرات کم.
  • مجوزها: toster.ru, habr.com, notifications, storage, unlimitedStorage

در ابتدا، من این برنامه افزودنی را برای خودم با یک هدف ایجاد کردم: نشان دادن درصد سوالات کاربر که در آنها زحمت کلیک روی دکمه "علامت گذاری به عنوان راه حل" را به خود اختصاص داده است. سپس کم کم ابتدا یکی و سپس دیگری اضافه شد تا این که ابزار تبدیل به یک هیولای صد کیلوبایتی شد. با این وجود، اصل "استفاده نکردن از هیچ چیز غیر ضروری" تا انتها رعایت شد.

یکی از ویژگی های اصلی در حال حاضر استفاده از فرمول ها در تنظیمات است. شما می توانید تقریباً هر کاری را با آنها انجام دهید، هر کاری که بخواهید توجه خود را مدیریت کنید. نکته اصلی این است که بدانید چه چیزی می خواهید. مخفی کردن، تغییر رنگ ها و اعلان ها سه جنبه اصلی هستند که هنگام کار با یک سایت باید به آنها توجه کنید. فیلتر کردن هر چیزی و همه چیز کلید راحتی است.

نمونه ای از یک قانون انعطاف پذیر که به شما امکان می دهد اعلان هایی را در مورد یک موضوع خاص دریافت کنید:

!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

من فوراً می گویم که تابع ()eval نمی تواند استفاده شود. بنابراین شما خیلی لذت نخواهید برد. بنابراین، من مجبور شدم عصای زیر بغل خودم را با استفاده از کد در 5 کیلوبایت بنویسم نماد لهستانی معکوس. شاید بتوان گفت این JS بسیار خنثی شده است، هم از نظر توابع و هم از نظر نحو.

اخیراً یک پست در مورد توستر پسوند. در مقایسه، TE رابط کاربری بهتری دارد و ویژگی هایی دارد که Toster Comfort ندارد. با این حال، برنامه افزودنی من بر مصرف منابع تأکید دارد. با این حال، هیچکس شما را برای استفاده از هر دو افزونه اذیت نمی کند؛ آنها نباید تضاد داشته باشند.

به روشی خوب، TC باید از ابتدا بازنویسی شود، زیرا کار را می توان حداقل دو بار تسریع کرد و با حافظه پنهان کار کرد - 10 بار، با کنار گذاشتن localStorage و JSON.stringify() و تغییر برخی راه حل های معماری. اما این من نیستم که باید این کار را انجام دهم. و من طرفدار اصل "اگر کار کرد، آن را لمس نکن" هستم. در حالی که در تعطیلات هستم، فعالانه به مسائل و روابط عمومی می پردازم، اما نه به قیمت مینیمالیسم. با تشکر از توجه شما!

منبع: www.habr.com

اضافه کردن نظر