September 13, 2008

Greasemetal version 0.2 released

I have just uploaded version 0.2 of Greasemetal to I originally intended to add management UI for userscripts in the second release, but hearing the users' request for improved compatibility with Greasemonkey, I changed my mind. The main focus of the release is to improve compatibility with Greasemonkey. The changes from version 0.1 are as follows.

Continue reading "Greasemetal version 0.2 released" »

September 11, 2008

Greasemetal - the next step

Thank you to all, the release of Greasemetal seems to have been successful. Looking at the responses, I plan to do the following in the next release:

  • eliminate generation of unnecessary log files and error messages (as much as possible)
  • add management UI for userscripts
  • add some kind of error logging for debugging userscripts

I hope I can release it soon.

Sep 12 5:12pm: We plan to add support for most GM_* functions, if not all of them (it might not be in the next release, though).

September 10, 2008

Greasemetal - a userscript runtime for Google Chrome

For more than two years, I have been using Firefox. And Greasemonkey. Then, last week, came Google Chrome. It was at the moment I tried the new browser that I suddenly noticed I could no more live without userscripts (especially, AutoPagerize). So I started looking into the source code of Google Chrome, and found out a way to implement a userscript runtime. And that's Greasemetal. It is now available from the link below.

Technically, Greasemetal executes userscripts in the following steps.

  1. setup a local web server that sends userscripts to Google Chrome
  2. launch Google Chrome specifying the browser to connect its AutomationProxy (an interprocess communication channel of the web browser implemented for automated UI tests) to Greasemetal
  3. periodically execute JavaScript in each browser tab that inserts <script> tags to download necessary userscripts from the local web server
As can be seen, since the entire userscript is run at the browser level, there is no support for GM_* functions (they require userscripts to be executed under a previleged environment for security reasons). In other word, some userscripts that rely on Greasemonkey-specific features would not work on Greasemetal. Userscripts compatible with Safari (or Opera) would mostly work.

The userscripts I checked and found compatible are;

This is the first release of Greasemetal, and it still lacks a number of features (especially the UI for managing userscripts). I hope I can release the next version early (hopefully a code-signed version), but if you find any bugs or have any suggestions, please let me know (although I am afraid I might not be able to answer to compatibility problems of each userscripts). Anyway, have fun!