Autor Téma: Greasemonkey - pekne rozsirenie do firefoxu  (Přečteno 7684 krát)

peter

  • Reset Staff
  • Newbie
  • *
  • Příspěvků: 333
    • Zobrazit profil
Greasemonkey - pekne rozsirenie do firefoxu
« kdy: 1. Prosinec 2011, 20:31:54 »
Ahojte,
Nieje to tak davno, co som objavil jedno velmi pekne rozsirenie do firefoxu. Dovole som sa s nim vyblaznil a tak konecne mozem o nom nieco napisat. Nebudem ho pridavat ako reply do firefoxoveho vlakna, pretoze je uz tusim pomerne chaoticke. :)
Vola sa to greasemonkey a hoci je to rozsirenie pomerne technicke, neda mi nenapisat o nom, pretoze ak mate (alebo ste ochotni nadobudnut) coilen stredoskolske vedomosti z programovania (javascript a html), tak s nim mozete robit zazraky. Napriklad urobit si drobne upravy na vami casto navstevovanych weboch tak, aby sa vam s konkretnym webom lepsie pracovalo. Skusim najprv obkecat na co je a potom nazorne ukazat, ake lahke je vylepsit si unss forum vo svojom prehliadaci pridanim niekolkych klavesovych skratiek a pouzitim automatickeho zameriavania formularovych prvkov.
princip:
Po nainstalovani rozsirenia mozete vytvarat scripty v javascripte, ktore sa mozu spustat po nacitani lubovolnej webstranky a na stranke nacitanej v pamati vaseho prehliadaca urobit zmeny. Existuje samozrejme aj web, na ktorom mozete najst kopec hotovych scriptov, ktore povytvarali ini pouzivatelia, takze na svoje si pridu aj ti, co nechcu studovat. No nic, podme po poriadku:
instalacia je jednoducha. Plugin nainstalujte zo stranky
https://addons.mozilla.org/en-US/firefox/addon/greasemonkey/?src=search
uplne standardnym sposobom. Pri instalacii nicim neprekvapi.
Aby sme zacali z lahka, ukazme si najprv ako si do greasemonkey pridat script ktory urobil niekto iny.
Celkom peknu zbierku najdete na stranke
http://www.userscripts.org
Najdete tam napriklad script s nazvom blockflash2, ktorym mozete nahradit rozsirenie flashblock. Teda kazda flash aplikacia ktora by sa automaticky nacitala pri otvarani webu sa zmeni na tlacidlo a nacita sa, az potom ako stlacite prislusne tlacidlo. Mne sa script paci viac, pretoze flashblock dava do tlacidla celu url adresu povodneho flashu, co je trochu otravne vzdy, ked mi nvda pri plynulom citani tuto adresu cita. Ak si ho chcete vyskusat, tak:
https://www.userscripts.org/scripts/show/45343
a tam klik na linku install
po nainstalovani script zacne fungovat a mozete si ho vyskusat na ktorej kolvek stranke s flashom. Ak by ste sa ho chceli zbavit, tak sa pozrite do menu nastroje a tam podponuky greasemonkey. Okrem ineho tam najdete aj tlacidlo "manage user scripts", ktore robi to co od neho ocakavate. Ponukne vam zoznam scriptov a jednotlive scripty mozete zakazovat, odinstalovavat, editovat,...
Okrem toho v menu vidite aj vsetky scripty, ktore boli aktivne pri prave nacitanej stranke, polozku ktorou si mozete vyvolat nastavenia pre greasemonkey a je tam aj polozka "new user script", ktora sluzi na spustenie editora v ktorom mozete vytvarat svoj script. Podme si to skusit. Vyskusajme si vyrobit script, ktory prida do unss fora nasledujuce drobnosti:
- prihlasovaciemu policku pre meno dorobi klavesovu skratku alt+shift+l, aby sme nan mohli rychlo skocit ked sa chceme prihlasit
- klavesove skratky nadefinujeme aj polozke nova tema (alt+shift+n) a odpovedat (alt+shift+o) pretoze toto su polozky, ktore casto pouzivame
- ak sa nam otvori stranka pre "odpovedat" alebo "nova tema", tak sa kurzor nastavi rovno do policka predmet a mi budeme moct zacat pisat, bez nutnosti policko hladat
postupujme teda takto:
1. aktivujme polozku new script v podponuke greasemonkey ponuky nastroje
vyplnme polozky v okne ktore sa otvori napriklad takto:
name (nazov): unss_forum_hack
namespace (nieco co vas jednoznacne identifikuje to pre pripad, ze by ste chceli skript sirit):http://www.moja_super_stranka.sk/
description (popis): do unss fora prida par skratiek a trochu fokus manazmentu
includes (na ktorych strankach ma byt script spustany? hviezdicka na konci je dolezita, znamena "co kolvek"): http://forum.unss.sk/*
excludes (na ktorych strankach nespustat? ak by sme prve nechali prazdne, tu by sme mohli uviest stranky na ktorych script nechceme spustat):
dajme ok, v pripade ze robite prvy skript tak vyberte editor (napriklad c:\windows\notepad.exe) a na koniec suboru ktory sa otvori vo vami nastavenom editore vlozte nasledujuce riadky:
// najprv vybavme editacne polia
elms = document.getElementsByTagName('input');
for (var i = 0; i < elms.length; ++i) {
   if(elms.getAttribute('name') == 'user')
      // ak sme na prihlasovacej stranke, tak nastavme skratku policku pre meno
      elms.setAttribute('accesskey','l');
   if (elms.getAttribute('name') == 'subject')
      // sme na stranke kde je predmet, tak do neho rovno skocme
      elms.focus();
}

// a este by sme chceli hotkeys pre reply a new topic, takze prebehneme linky
elms = document.getElementsByTagName('a');
for ( i = 0; i < elms.length; ++i) {
   if(elms.getAttribute('class') == 'button_strip_new_topic active')
      // mame linku new topic, pozname podla triedy
      elms.setAttribute('accesskey','n');
if(elms.getAttribute('class') == 'button_strip_reply active')
      // mame linku reply, pozname podla triedy, pouzime hotkey o lebo to sa lepsie stlaca ako r
      elms.setAttribute('accesskey','o');
}

nakoniec script ulozme a vyskusajme.
Vidite ze je kratky a ti z vas co vedia aspon trosku programovat vedia, ze je velmi jednoduchy. Ti co vedia programovat lepsie takisto vedia ze by sa dal urobit aj elegantnejsie, povedzme s ohladom na efektivitu, ale ja sa v snahe vytvarat veci tak, aby boli zrozumitelne pre zaciatocnika uchylujem k tomuto "grobianskemu" rieseniu. :)

Po ruke mam este jeden priklad. Pomerne casto navstevujem stranky turistickeho casopisu malokarpatsky dialkoplaz:
http://aladin.elf.stuba.sk/~soula/mkd
ak si skusite otvorit napriklad oktobrove cislo z tohoto roku, tak zistite, ze cely casopis je v jednom velkom subore. Nadpisy su robene pomocou standardnych odstavcov, ktore su vycentrovane, takze po nich nemozno skakat standardnym sposobom ktory pouzivame na skakanie po nadpisoch v nvda / jawse. Ked som nazrel do zdrojoveho kodu stranky, zistil som, ze skoro kazdy odstavec, ktory ma nastaveny atribut align na center, mozno povazovat za nadpis. Takze novy script, ktory bude mat v include stranku http://aladin.elf.stuba.sk/~soula/mkd/* bude vizerat takto:

elms = document.getElementsByTagName('p');
for (var i = 0; i < elms.length; ++i)
   if (elms.getAttribute('align') == 'center')
      elms.innerHTML='<h2>' + elms.innerHTML + '</h2>';

Znalci vedia, ze som sa v tomto jednoduchom skripte dopustil jednej strasnej skaredosti, ale v snahe urobit veci jednoducho, aby mohli byt motivacne, sa takychto pokleskov azda nemusime vyvarovavat. :)
Ak stranku s ktorym kolvek cislom dialkoplaza nacitate s tymto skriptom, budu vsetky centrovane odstavce vyrobene ako nadpisy druhej urovne.
Peter Lecký, Stopka n.o.

peter

  • Reset Staff
  • Newbie
  • *
  • Příspěvků: 333
    • Zobrazit profil
greasemonkey - oprava nepristupnosti www.cp.sk
« Odpověď #1 kdy: 14. Prosinec 2011, 20:10:58 »
Ahojte,
Ak sa ratate medzi pouzivatelov citacov obrazovky a cas od casu vam ide na nervi nepristupnost funkcie auto complete na stranke http://www.cp.sk, (to je to ked si napisete napriklad do "odkial" trnava, cp vam ponukne niekolko trnav a vy si musite vybrat tu spravnu, asi viete, ze citace obrazovky tie ponukane moznosti necitaju), tak vyskusajte tento greasemonkey skript:
http://jelenovipivonelej.info/gm/download/cpsk.user.js
po nainstalovani skriptu bude na stranke cp.sk citac obrazovky oznamovat ako alert prave vysvietenu polozku v zozname ponukanych moznosti. Vysvietene polozky mente hornou a dolnou sipkou.
Ak mate navrh na zlepsenie, tak sem s nim, ak to bude zmysluplne, tak dorobim.
Mimochodom skusal som oslovit aj prevadzkara stranky s ponukou pomoci v pripade zaujmu o spristupnenie a bolo to bez odozvy. Skoda, urobit taketo veci pristupne je vdaka technologii aria velmi jednoduche.
« Poslední změna: 22. Únor 2013, 14:24:04 od Marek »
Peter Lecký, Stopka n.o.

Marek

  • Administrator
  • Newbie
  • *****
  • Příspěvků: 219
    • Zobrazit profil
Re:Greasemonkey - pekne rozsirenie do firefoxu
« Odpověď #2 kdy: 14. Prosinec 2011, 20:35:18 »
Je to vyborne, vdaka.
Este by si mohol pridat aj adresy s obmedzenim iba pre vlaky/autobusy, teda /vlak/spojenie/ a /bus/spojenie/, chvilu som skumal, preco mi to nejde.
Marek Macko
administrátor fóra

peter

  • Reset Staff
  • Newbie
  • *
  • Příspěvků: 333
    • Zobrazit profil
Re:Greasemonkey - pekne rozsirenie do firefoxu
« Odpověď #3 kdy: 14. Prosinec 2011, 22:38:25 »
na vyber cestovneho poriadku sa takyto hack urobit neda. Ak stlacis alt+shift+c tak sa ti rozroluje normalna cast stranky v ktorej sa neda listovat ako v zozname. Je to klasicka stranka takze mozes skakat po nadpisoch resp napriklad v zozname odkazov rychlo najst napr slovo bratislava ak hladas mhd bratislavy a pod.
Ale jednu opravu som predsa len urobil, takze ak uz mas script tak updatni. Trochu som skript upravil, aby cital zoznamy zastavok aj pri hladani mhd. Paradnu vec som zistil co som do teraz netusil. Pri kazdej zastavke je napisana (a teda aj precitana) aj informacia, ake spoje z nej chodia. Ak si napr do odkial napises kuklovska, tak sa ti v zozname objavi zastavka kuklovska spolu so info o spojoch ktore z nej idu. Naaadhera. Nikdy by som si nemyslel, ze sa budem pol hodiny hrat s cp.sk. :-)
Peter Lecký, Stopka n.o.

ondrej_rosik

  • Reset Staff
  • Newbie
  • *
  • Příspěvků: 430
    • Zobrazit profil
    • blog
Re:Greasemonkey - pekne rozsirenie do firefoxu
« Odpověď #4 kdy: 15. Prosinec 2011, 08:14:45 »
Pripájam skripty, ktoré boli zmieňované v NVDA tutoriáloch (dávam to sem, hodia sa aj tým, ktorý vlákno ak používajú jaws mohli ignorovať)
Skript pre Twitter webové rozhranie:
http://t.co/h3d95oMX
Kill Windowless Flash now (snaží sa urobiť prístupné flash prvky, mne sa to zatiaľ nikde akosi neosvedčilo, zisťujem, ako by to malo fungovať)
http://t.co/xaMwuAhs
Skript pre rozhranie Google Docs http://t.co/hURoDVMF
na stránke so skriptom kliknite na install

Marek

  • Administrator
  • Newbie
  • *****
  • Příspěvků: 219
    • Zobrazit profil
Re:Greasemonkey - pekne rozsirenie do firefoxu
« Odpověď #5 kdy: 15. Prosinec 2011, 08:27:29 »
na vyber cestovneho poriadku sa takyto hack urobit neda. Ak stlacis alt+shift+c tak sa ti rozroluje normalna cast stranky v ktorej sa neda listovat ako v zozname.
Asi sme sa nepochopili. Nemyslim vyber cestovneho poriadku, ale situaciu, ked uz poriadok vybraty mas a zmeni sa ti url. Ak chcem hladat len vlaky, url bude vyzerat:
http://cp.atlas.sk/vlak/spojenie/
na takejto url skript fungovat v momentalnom stave nebude.
Marek Macko
administrátor fóra

peter

  • Reset Staff
  • Newbie
  • *
  • Příspěvků: 333
    • Zobrazit profil
Re:Greasemonkey - pekne rozsirenie do firefoxu
« Odpověď #6 kdy: 15. Prosinec 2011, 09:58:24 »
aaha jasne. To je prave to, co opravuje ta drobna uprava spominana v mojom predchadzajucom poste.
Ondro pokial ide o ten flash, tak ten skript spristupnuje taky typ flashu, ktory nieje robeny ako okno. Robi to takym sposobom, ze flash vlozi do okna. Taky flash vie nvda spristupnit. Pri niektorych flash aplikaciach to moze pomoct. Momentalne si ale takisto neviem vybavit ziaden konkretny priklad. Iba ak si napises do googlu windowless flash. Najdes priklad na ktorom uvidis ze to funguje.
Peter Lecký, Stopka n.o.

Marek

  • Administrator
  • Newbie
  • *****
  • Příspěvků: 219
    • Zobrazit profil
Re:Greasemonkey - pekne rozsirenie do firefoxu
« Odpověď #7 kdy: 15. Prosinec 2011, 10:53:41 »
aaha jasne. To je prave to, co opravuje ta drobna uprava spominana v mojom predchadzajucom poste.
Vyborne, dakujem, taham, instalujem. :)
« Poslední změna: 15. Prosinec 2011, 10:57:25 od Marek »
Marek Macko
administrátor fóra

svoncinarova

  • Host
Re:Greasemonkey - pekne rozsirenie do firefoxu
« Odpověď #8 kdy: 27. Duben 2015, 00:07:47 »
cozeee?
ja som toto rozsirenie potrebovala vyuzit. chcela som si v nom cosi vytvorit, ale....... nejake zaklady html som sice zvladla ale toto sa mi zda omnoho narocnejsie.
kedysi ked som sa chcela ucit html tak som siahla po webe jak psat web, aleob tak nejak sa to volalo, a vdaka tomu som sa to naucila.
nieco podobne by sa mi hodilo aj na tento plugin.
« Poslední změna: 30. Duben 2015, 16:39:07 od svoncinarova »

svoncinarova

  • Host
Re:Greasemonkey - pekne rozsirenie do firefoxu
« Odpověď #9 kdy: 1. Květen 2015, 21:50:02 »
ahojte,
mam pocit ze tie skripty sa teraz zbieraju tu:
https://monkeyguts.com/