MozillaPL.org - polskie centrum Mozilli

Główne menu:

otwieranie folderu zakładek słowem kluczowym

Projektowanie aplikacji i rozszerzeń opartych na technologiach Mozilla Foundation: XUL, JavaScript, XPCOM, XBL i innych

Moderator: Pomocy?!

otwieranie folderu zakładek słowem kluczowym

Postautor: kamillo » 25 lutego 2010, 18:47

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2) Gecko/20100115 Firefox/3.6

Witam

Przychodzę z następującą sprawą. Chciałbym przy pomocy skrótu klawiaturowego otwierać wszystkie zakładki znajdujące się w danym folderze zakładek (w taki sposób, w jaki otwiera się pojedynczą zakładkę przy użyciu słowa kluczowego). Niestety dla folderów nie da się zdefiniować słowa kluczowego.

Grzebiąc w Internecie i na tym forum doszedłem do wniosku, że pewnie konieczne będzie coś w rodzaju skryptozakładki otwierającej folder zakładek. Dopiero po przypisaniu do tej skryptozakładki słowa kluczowego mógłbym za jego pomocą otwierać folder zakładek. Nigdzie nie mogłem jednak znaleźć takiej skryptozakładki, która potrafiłaby otwierać choćby pojedynczą zakładkę, nie mówiąc już o całym folderze.

Czy ktoś wie, jak powinna wyglądać taka skryptozakładka albo zna inne rozwiązanie?
Zaznaczam, że nie interesuje mnie odpowiedź w stylu „kliknij środkowym przyciskiem myszy na folder zakładek, a otworzą się wszystkie zawarte w nim zakładki”. Zależy mi na korzystaniu ze skrótów klawiaturowych (tzn. słów kluczowych).
kamillo
 

Odp: otwieranie folderu zakładek słowem kluczowym

Postautor: Mirek » 26 lutego 2010, 20:11

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.8 (.NET CLR 3.5.30729)

1. Skryptozakładka nie ma dostępu do zakładek (no że chyba wyeksportować je do html) - wtedy po umożliwieniu otwierania lokalnych plików lub umieszczeniu pliku z zakładkami na lokalnym albo i zdalnym serwerze można by otwierać najpierw tą stronę i z jej poziomu otwierać odpowiednie linki/zakładki. Tyle że po każdej zmianie trzeba by na nowo eksportować zakładki (choć to by się dało obejść ustawiając chyba: browser.bookmarks.autoExportHTML na true)
2. Jeśli lista zakładek się nie zmienia zbyt często, wtedy najłatwiej by było napisać skryptozakładkę, która otwiera po prostu wybrane strony z zawartej w niej (w skryptozakładce) listy - bez odwoływania się do folderu z zakładkami - np.:
Kod: Zaznacz cały
javascript:adresy=['http://mozillapl.org', 'http://www.google.pl', 'http://onet.pl']; for (i in adresy){window.open(adresy[i]);}

3. Jeszcze ew. można stworzyć skrót uruchamiający FF z adresami przekazanymi jako parametry i przypisać takiemu skrótowi jakiś skrót klawiaturowy - ale to trochę słabsze rozwiązanie.
4. Zamiast klikania środkowym, można też zrobić to z klawiatury - o ile ma się klawisz menu kontekstowego (CTRL+B - by wyświetlić zakładki, TAB by przejść z pola wyszukiwania do samych zakładek, później np. wykrzyknik lub inny niepowtarzalny znak użyty na początku nazwy folderu - żeby szybko do niego przejść, menu kontekstowe i otwieramy wszystko w kartach) Ale to pewnie o 2-3 klawisze za dużo :-)
Jeśli sposób #2 nie odpowiada, to pewnie będę w stanie pomóc ze sposobem #1 - ale to dopiero w następnej wolnej chwili.
Mirek
Moderator
 
Posty: 2156
Z nami od: 09 sierpnia 2007, 20:37

Odp: otwieranie folderu zakładek słowem kluczowym

Postautor: Gość » 01 marca 2010, 00:30

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2) Gecko/20100115 Firefox/3.6

Wielkie dzięki za odpowiedź.

Sposób nr 2 wygooglałem już wcześniej, ale wolę rozwiązanie, które automatycznie uwzględniałoby zmianę zestawu otwieranych zakładek.
Byłbym bardzo wdzięczny za pomoc ze sposobem nr 1, gdy tylko znajdziesz wolny czas.
Gość
 

Odp: otwieranie folderu zakładek słowem kluczowym

Postautor: Mirek » 01 marca 2010, 15:58

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 6.0; pl; rv:1.9.1.8) Gecko/20100202 Firefox/3.5.8 (.NET CLR 3.5.30729)

Miałem już wypytać o parę szczegółów w celu zrealizowania 1. sposobu (czy masz serwer www, jeśli tak to lokalny czy zdalny, czy korzystasz z NoScript, czy wolisz rozwiązanie niewymagające dodatkowych rozszerzeń - w przeciwnym razie byłoby trzeba jakiejś stronie zezwolić w prefs.js na otwieranie lokalnych linków i przed otwarciem odpowiednich zakładek uruchomić na chwilę (z poziomu skryptu) tę uprzywilejowaną stronę, ale wymyśliłem jeszcze jedno rozwiązanie (dla mnie zdecydowanie prostsze) - wymagające rozszerzenia Greasemonkey.
Po zainstalowaniu GM w about:config trzeba zmienić dwa ustawienia:
* browser.bookmarks.autoExportHTML na true (żeby przy wyłączeniu FF automatycznie eksportowało zakładki do bookmarks.html) - ewentualnie można eksportować ręcznie z poziomu Zakładki -> Zarządzaj zakładkami... -> Importowanie i kopie zapasowe -> Eksportuj do pliku HTML... - wtedy nie trzeba wyłączać FF, by zaktualizować wspomniany plik
* greasemonkey.fileIsGreaseable na true (żeby skrypty działały także na lokalnych plikach - file:///)
Znajdujemy plik bookmarks.html w katalogu profilu (no że chyba wyeksportowaliśmy gdzie indziej)
Otwieramy go w FF.
Tworzymy w GM nowy skrypt dla tej strony/pliku o mniej więcej takiej treści:
Kod: Zaznacz cały
h3s=document.getElementsByTagName('h3');
for(i=0; i<h3s.length; ++i)
{
  if(h3s[i].innerHTML=='test')
  {
    nwl=h3s[i].nextSibling.nextSibling.childNodes;
    for(j=0; j<nwl.length; ++j)
    {
      if(nwl[j].tagName=='DT')
      {
        save_1st_addr = nwl[j].firstChild.href;
        break;
      }
    }
    for( ; j<nwl.length; ++j)
    {
      if(nwl[j].tagName=='DT')
      {
        GM_openInTab(nwl[j].firstChild.href);
      }
    }
    break;
  }
}
document.location = save_1st_addr;

Słowo test w czwartej linijce zastępujemy nazwą folderu z zakładkami do otwarcia.
Zapisać skrypt i jeszcze tylko dodać skrót do file:///.......bookmarks.html z odpowiednim słowem kluczowym.

GM przy tworzeniu pierwszego skryptu chyba pyta o edytor do tworzenia skryptów - to możesz wskazać mu np. windowsowy Notatnik czy jakiś inny program.

Pozdrawiam,
Mirek
Mirek
Moderator
 
Posty: 2156
Z nami od: 09 sierpnia 2007, 20:37

Odp: otwieranie folderu zakładek słowem kluczowym

Postautor: kamillo » 02 marca 2010, 19:03

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.2) Gecko/20100115 Firefox/3.6

Super, działa bezproblemowo.

Wielkie dzięki za pomoc. Pozdrawiam
kamillo
 


Wróć do Programowanie z użyciem technologii Mozilli

Kto jest online

Zarejestrowani użytkownicy: Bing [Bot], Google [Bot]

Przejdź do powiązanej strony

Nawigacja:

Stopka: