La scorsa settimana mi sono imbattuto in una estensione per mozilla molto interessante: mozjs_dbus
Credo che Ubuntu dovrebbe seriamente valutare la possibilità di compilare e installare questa estensione di default per migliorare l’integrazione del browser con il resto dell’ambiente desktop.
In pratica la funzione dell’estensione è quella di esporre all’interno di chrome (inteso come la componente privilegiata del broser e non il broser di google) dei servizi che consentano di accedere e fornire servizi dbus.
Il tutto è condito da un’API Javascript che consente di colloquiare agevolmente con dbus, che all’interno del panorama delle tecnologie Desktop libere costituisce l’analogo di COM, CORBA o XPCOM.
Visto che la compilazione dell’estensione (che necessita dei sorgenti di mozilla) non è risultata troppo complessa (come unico imprevisto ho dovuto aggiornare il file install.rdf del’estensione per estenderne la compatibilità a Firefox 3.0.3)
Volevo fare una prova… così ho pensato che poteva essere una buona scusa per provare a scrivere il primo comando per Ubiquity, estensione che aggiunge a firefox una commandline con cui colloquiare con il browser un po’ come faccio con emacs :-)
Mediante dbus-viewer è possibile navigare le interfacce dbus messe a disposizione dalle applicazioni attualmente attive… tra tutte ho individuato Tomboy.
Tomboy è un’applicazione gnome per conservare delle note ed esporta un interfaccia dbus particolarmente completa in quanto consente di effettuare tutte le operazioni CRUD sulle note.
Ho creato quindi 2 nuovi comandi per ubiquity:
- tomboy-list: che restituisce in preview l’elenco puntato dei titoli delle note
- tomboy-view: che restituisce in preview l’elenco puntato di titolo e contenuto delle note che contengono la stringa passata come parametro
Link
- http://github.com/FireRabbit/mozjs-dbus/wikis
- http://groups.google.com/group/mozilla.dev.platforms.linux/browse_thread/thread/5f67b110fd6586d/35c75b24bbef65fb?lnk=gst&q=dbus#35c75b24bbef65fb
- http://labs.mozilla.com/2008/08/introducing-ubiquity/
- http://www.azarask.in/blog/post/sharing-streamable-functionality/
- http://www.azarask.in/blog/post/ubiquity-in-depth/
- https://wiki.mozilla.org/Labs/Ubiquity
- https://wiki.mozilla.org/Labs/Ubiquity/Ubiquity_0.1_User_Tutorial
- https://wiki.mozilla.org/Labs/Ubiquity/Ubiquity_0.1_Author_Tutorial
- http://ubiquitously.org/forum/viewtopic.php?f=5&t=14
- http://hg.toolness.com/ubiquity-firefox/file/c2b81ec3b3bf/ubiquity/standard-feeds/social.js
- http://hg.toolness.com/ubiquity-firefox/file/6caa9d66b3bb/ubiquity/chrome/content/nlparser/en/nountypes.js
0 commenti:
Posta un commento