HowTo: Change Locations in Prism

You may or may not know this, but you can use the Error Console in Prism to open new windows to any site you want. Just use the following javascript in the Code Evaluation box:

window.open('http://website.url','','');

This will open a new window to the address “http://website.url”, pretty basic stuff. Now, what happens if you want to change the location of the Prism window from your default webapp’s location. Well, you can still use the Error Console, but there’s a couple of layers of javascript reference you need to go through. If you try using this:

parent.location='http://website.url'

You redirect the Error Console to “http://website.url”, interesting (very, actually :), but not what we’re after. If you haven’t already done so, open the error console:
menu

Next, in the Code Evaluation text box, type the following:

parent.opener.content.location='about:config'

shot1shot2shot3

That’s about it, hit return or press “Evaluate” and you’re done. By using parent.opener.content.whatever you should be able to access all of Prism’s components. What? You don’t know what the other compents are?? Well, check out the webrunner.xul located in Prism’s install directory, in the chrome directory inside the webrunner.jar (copy, rename to .zip from .jar and extract).

Another thing you’ll learn from this file is a complete list of the navigation keys (look for the keyset directives) currently used by Prism:

Back=Alt+Left Arrow
Forward=Alt+Right Arrow
Home=Alt+Home (that’s the Home Key on your keyboard’s number pad BTW)
Reload Page=F5
Close=Accelerator Key (Ctrl Key)+w
Quit=Accelerator Key (Ctrl Key)+q
Print=Accelerator Key (Ctrl Key)+p

I’ve Been HACKED! Well, LifeHacked Any Way…

Link to LifeHacker Post

LifeHacker’s linked to my post on how to install extensions in Prism/Webrunner. For anyone having trouble with some extensions, have a look at my comment dated today (080404), I’ve addressed Better GCal specifically, but this should also work for Better Gmail and a few others as well.

Prism/Webrunner extensions post

HowTo – Make Your Own WebApp

This is just a quick howto on making your own WebRunner/Prism webapp file. This is a very simple process and shouldn’t take more than a few minutes of your time. There are a couple of tools you need however, to get started.

  • a file archiver – my favorite is 7-zip, but you can just as easily use any archiving program that is compatible with zip files
  • a text plain text editor

For more advanced webapps, a more advanced context highlighting text editor can be helpful for coding custom style sheets or adding javascript customizations. And don’t forget icons! I use a combination of Paint.Net and @icon sushi (which covers everything but MacOS, which is because I can’t seem to find software for Linux or Windows to accommodate icons for it – recommendations anyone?).

The No “.webapp” WebApp

There are several ways to open webpages with Prism or WebRunner. The first and easiest is to install Prism, then create a link to it on your desktop. Then change that link adding the option “-uri” and the url of the page you want to open. Here are two examples:

Windows:
c:\your\path\to_prism\prism.exe -uri http://web_url_of_site c:\your\path\to_prism\prism.exe -uri c:\location\of\local_file

GNU/Linux:
/your/path/to_prism/prism -uri http://web_url_of_site /your/path/to_prism/prism -uri /location/of/local_file

This method does not require a webapp file, it just launches the website or file you specify. This means, no icons are required, but you also don’t get to add any custom themes or js files. This would be a really good method to use with applications like Wiki on a Stick (woas).

WebApp Bundles

The second method is also pretty straight forward (until you make it complex by adding more functionality). For the most basic webApp bundle you only need to create one file; the webapp.ini. Here’s the content from the example webapp.ini on the Prism wiki:

[Parameters] id=unique-app-id@unique-author-id.whatever uri=http://[the-url-what-you-want-to-connect-to]/ status=yes location=no sidebar=no navigation=no

The “id” parameter is required to be unique. I’ve been using my website’s url (as most others have done as well) preceded by the name of the site, but any unique identifier will work. The “uri” parameter is required and will accept both url of the target website as well as local file paths. Everything after that appears to be optional and the values show are the defaults. These remaining parameters are options to tell Prism whether or not to show certain GUI elements (“status” = status bar;”location” = address bar;”sidebar” = sidebar;”navigation” = well, quite frankly, I have no idea – maybe navigation buttons that haven’t been implemented yet?).

The next step after saving your changes to this document, is to use your archiving program to zip up this file creating, as an example, “your_webapp.zip”. Replace the “zip” extension with “webapp” and you’re ready to roll! Now either double click the webapp file or you can launch the webapp from the command line thusly:

Windows:
c:\your\path\to_prism\prism.exe -webapp your_webapp_bundle

GNU/Linux:
/your/path/to_prism/prism -webapp your_webapp_bundle

For more advanced webapps you can add icons, scripting and style sheet support (see the Prism page for more details).

Happy coding!

Prism
Prism/WebApp Bundle
Prism/Scripting
Prism/Styling
7-Zip
Paint.Net
@icon sushi
Wiki on a Stick