Dvě zajímavá rozšíření Firebugu: XRefresh a FirePython
Na včerejším srazu příznivců Ruby v Praze představil Antonín Hildebrand dvě zajímavá rozšíření Firebugu ze své dílny. Nástroje zatím používá on sám, nejsou nijak posvěcené stabilitou, ale jsou natolik zajímavé, že je zde i přesto představíme.
Rozšíření XRefresh (zdrojový kód) je nástroj pro všechny, kdo potřebují často upravovat kaskádové styly. Pomůže vám v případě, že se upravované soubory nachází na stejném stroji jako váš prohlížeč se spuštěným Firebugem. Pomocí XRefresh nastavíte, které soubory a adresáře má systém automaticky sledovat, a v případě, že dojde k jejich změně, budou v prohlížeči okamžitě aktualizovány. Včerejší prezentace, ve které Tonda okamžitě po každém stisknutí tlačítka uložit v editoru viděl změnu v prohlížeči byla omračující (již žádné přepínání z editoru do prohlížeče a obnovování stránky). Pokud máte dva monitory, na kterých si zobrazíte jak editor, tak prohlížeč, možná nebudete muset během celé úpravy ani jednou přepnout z editoru do vašeho prohlížeče). Nástroj funguje na Macu i Windows a sleduje změny jakýkoliv souborů (nejen kaskádových stylů zmíněných výše).
Rozšíření FirePython (screenshot, zdrojový kód) vychází s logovacího nástroje FirePHP a umožňuje zasílání ladicích informací z Google App Engine prostřednictvím hlaviček HTTP na klienta, kde je Firebug ve své konzoli zobrazí. Součástí jsou výpisy proměnných a zásobníku, k jejichž procházení je využito uživatelsky optimalizovaného rozhraní Firebugu.
Škoda, ze je to zatiaľ iba vo verzii pre Windows a OSX. Ale nápad je to výborný.
Udelat port na Linux je otazka jednoho odpoledne. Jedine co je potreba udelat je napsat v ruby poslouchani udalosti z filesystemu.
Tady se o to nekdo pokusil, ale nevim v jakem je to stavu:
http://github.com/ycros/xrefresh/commits/
XRefresh je presne ten addon, ktory som hladal, vdaka autorovi. :-)
Teraz som otestoval XRefresh – toto rozsirenie sa javilo ako velmi slubne, ale bohuzial mi nefunguje ani v najmensom.
WinXP Prof. user aj admin ucet
FF 3.0.7
Firebug 1.3.3
IE7
nainstalovana posledna verzia tray programu XRefresh 0.8 z code.google.com.
Tray program som nainstaloval v admin ucte, pod user uctom ho ani nespusti (bez prav administratora). Do FF som doinstaloval experimentalny addon, ale tak ako v userovi ani v adminovi som program nedonutil fungovat. Skusal som pridat zlozky s editovanymi projektami, skusal som editovat CSS aj HTML, ale zmeny sa neprejavili, napriek tomu, ze sa program tvaril, ze ich refreshuje a stranky aj detekoval.
Pokusil som sa nejak dostat ku kontaktu na autora – stranky projektu aj osobne stranky autora su v tejto chvili (6. marec 09 12:40) nedostupne. Skoda ho.
Mě nefungoval jen refresh stylů, moje řešení jsem napsal do hodnocení addonu
Ste si isty tym cislovanim riadkov? Teraz som zistil, ze HTML mi predsa ide (uprava prav na zapis do zlozky, spustanie pod admin pravami), ale prave styly CSS nie. Avsak zakomentovanim tych riadkov, ktore uvadzate sa problem neriesi.
Na riadku 688 mam: "this.sendSetPage(FirebugContext.browser.contentTitle, FirebugContext.window.document.URL);". V JS sa prilis neorientujem, ale toto je v ramci podmienky IF, ktora zakomentovanim tych niekolko riadkov bude v podstate neukoncena, bude chybat uzatvaracia zatvorka. Posledny riadok zas uz patri k dalsej funkcii.
Zdravim, zřejmně jsem neuvedl přesně, o který soubor se jedná. Jedná se o script ve složce addonu. Na Vistách: C:Users%user%AppDataRoamingMozillaFirefoxProfiles%profile%extensionsxrefresh@xrefresh.comchromecontentpanel.js řádky 688-697.
A ano, jsem si těmi čísly řádků jistý.
Po přepsání nezapomeňte restartovat Firefox.
Skvele, bolo to tym, editoval som totiz subor, ktory sa nachadzal v /Program files/ a nie subor s addonom do FF. Na tychto riadkoch sa nachadzali uplne ine riadky kodu ako vo vami uvadzanom.
Subor na editaciu FF addonu sa nachadzaju v XP tu:
C:Documents and Settings*user*Application DataMozillaFirefoxProfiles*zmatok znakov*.defaultextensionsxrefresh@xrefresh.comchromecontentpanel.js
Takze po uprave funguje ako ma, patri vam moja poklona a vdaka za pomoc.