Firefox: jak zvítězit nad kontrolou kompatibility doplňků

17. 11. 2011

Sdílet

 Autor: Redakce

O Firefoxu vždy platilo, že funkce, které mu chyběly, jste mohli snadno doplnit nějakým tím rozšířením. Platí to i dnes. Mozille se v minulosti postup nabídnout běžným uživatelům jednoduchý prohlížeč, který ale pokročilí mohou donekonečna ladit, vyplatil. Všichni si přišli na své. Méně nároční měli jednoduchý prohlížeč, zatímco hardcorovější surfaři instalovali i desítky doplňků a svůj čas strávený s Firefoxem si patřičně užívali. A pak plakali, když vyšla nová hlavní verze Firefoxu.

Nová generace Firefoxu, staré problémy s doplňky

Každý generační skok provázely problémy s kompatibilitou. Obvykle platilo, že většina autorů svá rozšíření zaktualizovala nejpozději do měsíce od vydání aplikace. Pak už jste mohli bezpečně přejít, pokud jste do té doby s opuštěním starého Firefoxu vyčkávali. Zbytek nezaktualizovaných doplňků se aktualizace dočkal málokdy. Bohužel, vývojáři doplňků většinou nejsou placení profesionálové, takže řada z nich své dílo nechá dříve či později ležet ladem.

Aspoň máte na výběr, ve velké většině případů najdete podobný doplněk odpovídající tomu, co už používat nemůžete. Situace se změnila poté, co Mozilla zkrátila vývoj Firefoxu na šest týdnů. Každých šest týdnů tu máme hlavní verze a zároveň pohromu s doplňky. Situace se postupně lepší, na řešení Mozilla průběžně pracuje. Označuje doplňky, které považuje za kompatibilní. I tak se musíme vypořádat s některými kousky, které Firefox zakáže, protože si prostě myslí, že kompatibilní nejsou.

Jenže většina rozšíření s novými verzemi prohlížeče ve skutečnosti pracuje bezproblémově, obzvlášť to platí po zkrácení vývojového cyklu, protože úpravy provedené na pozadí Firefoxu nejsou nijak dramatické, tudíž se autoři doplňků nemusí nijak zvlášť snažit. Jejich dílka prostě fungují, takže stačí upravit informaci o kompatibilitě.

Lehké doplňky

Chrome třeba podobné problémy neřeší, protože doplňky pro něj fungují automaticky skoro ve všech verzích. To je dané tím, nakolik nezasahují do hlubin prohlížeče. Tvorba pro Firefox obnáší více práce, zato si můžete s prohlížečem dělat skoro cokoliv. Jenže čím hlouběji do surfovadla zasáhnete, tím si snižujete šanci, že při dalším vydání Firefoxu váš doplněk poběží, aniž byste na něj museli sáhnout. Kód uvnitř prohlížeče se uvnitř mění, což znamená lepší funkcionalitu a horší kompatibilitu. U líných vývojářů to znamená katastrofu, hlavně když jejich výtvor používají desetitisíce lidí.

Mozilla sama začala prosazovat tvorbu lehčích doplňků, které lze přirovnat k těm pro Chrome. Vývojáři si při práci z velké části vystačí s prostými webovými technologiemi. Taková rozšíření nikdy nedosáhnou mocnosti, funkčnosti a komplexnosti klasických doplňků, zato u nich nemusíme řešit kompatibilitu. Protože nijak zásadně neovlivňují chod prohlížeče, fungují skoro v každé další vydané verzi programu.

Firefox se ale bez klasických doplňků obejde jen těžko, takže si problém s kompatibilitou musíme nějak vyřešit po svém. Pokud vaše oblíbené a především nepostradatelné rozšíření odmítá vývojář v rozumném čase aktualizovat, zkuste si najít alternativu. Jestli ovšem není zbytí, můžete přímo ve Firefoxu vypnout kontrolu kompatibility a ušetřit si starosti.

První možnost: about:config

Existují přinejmenším dvě snadné cesty, jak dosáhnout cíle. Instalovat doplněk proto, aby další doplňky fungovaly, mi přijde trochu zbytečné, takže si nejdříve ukážeme alternativu. Jak možná víte, řada předvoleb se dá změnit, když do adresního řádku napíšete about:config. Dostanete se tím do skrytého nervového centra aplikace, kde můžete změnit její chování. Tuny předvoleb byste mohli přehrabovat vidlemi celý den.

K snadné orientaci naštěstí můžete využít filtr, poněvadž víte, co máte hledat. Nebo se to alespoň teď dozvíte.

Firefox 8 a starší

V aktuální řadě Firefoxu vás bude zajímat předvolba extensions.checkCompatibility. Jde o logickou hodnotu, jíž dříve stačilo nastavit na false (nepravda). Tím se kontrola zarazila. Později Mozilla začala používat stejnou předvolbu, avšak rozšířenou o číslo verze. Takto třeba vypadá zápis pro aktuální Firefox 8: extensions.checkCompatibility.8.0

Kdybychom chtěli zakázat kontrolu kompatibility v době, kdy byla tato osmá řada prohlížeče ještě ve fázi beta, zapsali bychom: extensions.checkCompatibility.8.0b

Alfaverze tento tvar sdílí, čestné místo na konci by však áčko obsadilo namísto písmenka bé. U nočních sestavení pochodíte s universálnějším extensions.checkCompatibility.nightly. Logická hodnota má dva různé stavy, true (pravda), nebo false (nepravda). Chápete dobře, že přepnutím na false kontrolu zakážete. Opačnou akcí ji povolíte.

Od doby, kdy se v uvedené předvolbě musí specifikovat číslo verze prohlížeče, musíme kompatibilitu přenastavovat s každým vydaným Firefoxem. Nebo si dopředu vytvořte předvolby pro pár další Firefoxů a budete a pár měsíců zajištěni.

Samozřejmě, že po návštěvě about:config zjistíte, že extensions.checkCompatibility nemůžete najít protože zatím neexistuje. Musíte si nejprve vytvořit novou logickou hodnotu. Vyvolejte kontextovou nabídku a vyberte Nová předvolbaLogická hodnota. Co máte do políčka zapsat, jsme si již pověděli. Posléze ještě potvrdíte, v jakém stavu se má předvolba nacházet. Označte false a potvrďte.

Ihned po vytvoření si můžete ve Správci doplňků zkontrolovat, že vás aplikace varuje před zakázanou kontrolou kompatibility doplňků. Nekompatibilní rozšíření budou nadále nosit nálepku „nekompatibilní“, avšak budou fungovat. Varování ve Správci doplňků zkrátka značí, že ještě uspěli.

Firefox 10 a novější

V posledních nočních sestaveních a alfaverzi Firefoxu (verze 11, respektive 10) se objevila jiná předvolba, která problémovou situaci s doplňky ulehčí o něco více. Sekáme se s ní již ve Firefoxu 10, který se nachází v aktualizačním kanálu Aurora. Předvolbu na něm již lze otestovat. Pokud tento článek čtete zpětně, klidně s několikaměsíčním prodlevou, textu výše si vůbec nevšímejte, pokračujte níže.

Do adresního řádku opět napište about:config, do filtru už ale zadejte tuto předvolbu: extensions.strictCompatibility

Jde zase o logickou hodnotu, jenže tentokrát ji nemusíte vytvářet, protože to za vás udělala Mozilla. Od vás se pouze vyžaduje ji dvojitým klepnutím přepnout z true na false.

Kromě toho, že předvolbu nemusíte vytvářet, se nabízí další výhoda. Jakmile kompatibilitu tímto způsobem vypnete, vypnutá zůstane trvale, tudíž nemusíte vytvářet nové předvolby pro nové verze prohlížeče. To je ale spíše hudba budoucnosti, s tímto počítejte od Firefoxu 10. Leda byste posbírali odvahu a používali Auroru, tedy současný nehotový Firefox 10 alfa.

Pro ověření si do Aurory zkusíme nainstalovat nekompatibilní doplněk.

Po zakázaní kontroly kompatibility doplněk funguje. Správce doplňků proti zákazu dokonce ani neprotestuje, což je současně škoda, protože se dalo přímo v něm kontrolu jednoduše zase zapnout. To se hodilo v nesnázích.

Druhá možnost: léčivý doplněk na kompatibilitu

Pokud se necítíte do šachování s předvolbami, pořád si do Firefoxu můžete nainstalovat Add-on Compatibility Reporter. Vzhledem k tomu, že výše uvedené akce nevyžadují nadprůměrnou zručnost, doporučuji využít je. Instalovat doplněk, aby mohly fungovat ostatní doplňky, mi připadá přinejmenším zvláštní. Navíc, s každým dalším doplňkem prohlížeči hrozí ztráta původní kondice.

Add-on Compatibility Reporter stáhnete ze serveru addons.mozilla.org. Po dvou restartech aplikace se všechny dosud zakázané doplňky obnoví (pokud byly zakázané kvůli nekompatibilitě).

Jak vás poučí poinstalační instrukce, Add-on Compatibility Reporter slouží zároveň k testování. Ve Správci doplňků si proto všimněte lehké inovace. U každého rozšíření přibude tlačítko pro označování funkčnosti. Pakliže rozšířené nepracuje, jak by mělo, stačí jej označit a vývojář obdrží cennou zpětnou vazbu.

Třetí možnost: přímý zásah do doplňku

Vůbec nepředpokládám, že byste to zkoušeli (i vzhledem k možnostem uvedeným výše), přesto vám teoreticky nic moc nebrání v tom, abyste doplněk položili na stůl a otevřeli. Měli byste ale přeci jen vědět, co děláte, jinak tato operace skončí neslavně. Horší je, že nad doplňky takto strávíte zbytečně moc času, pokud jich potřebujete upravit víc.

Nicméně, rozšíření si stáhněte do počítače. Na stránce s doplňky klepněte pravým tlačítkem na Přidat do aplikace Firefox, vyberte Uložit odkaz jako a soubor někam uložte. Rozšíření mají příponu XPI, jde ale o obyčejné archivy ZIP, takže je snadno otevřete v libovolném archivačním nástroji. V ukázce figuruje 7-Zip. Najděte soubor install.rdf a vytáhněte jej z archivu.

Tento soubor pro změnu otevřete v textovém editoru, klidně v Poznámkovém bloku. Obsahuje informace důležité při instalaci doplňku, především nese čísla podporovaných verzí programů. Ukázkové rozšíření podporuje Firefox a SeaMonkey. U značky maxVersion vidíte maximální podporovanou verzi. Funguje v osmé řadě Firefoxu. Hvězdička znamená, že desetinou může být libovolné číslo.

ICTS24

Osmičku upravte podle toho, kam chcete kompatibilitu posunout. Vyměníte-li ji za devítku, rozšíření bude pracovat ve Firefoxu 9, aniž by kladlo odpor. Upravený soubor install.rdf přesuňte zpátky do archivu, respektive doplňku, který přetažením na Firefox nainstalujete.

Nezapomínejte na to, že ošálením kontroly kompatibility dosáhnete úspěšné instalace doplňku, ten nicméně fungovat nemusí. Aktuální stav nahrává tomu, aby fungoval stejně dobře jako dříve, ale s případnými potížemi se počítat musí.