SessionSaver: Difference between revisions

From MozillaZine Knowledge Base
Jump to navigationJump to search
m (Reverted edit of 80.232.139.238, changed back to last version by MLModel)
(vfd)
Line 1: Line 1:
{{vfd}}
{{cleanup}}
{{cleanup}}



Revision as of 21:14, 22 May 2007

What is SessionSaver?

SessionSaver is an extension for Firefox and the Mozilla Suite that will automatically keep track of your browser windows and tabs and restore them exactly as they were across browser sessions. Not even crashes can faze it: window positions, tab histories, cookies, scrolling and text in text boxes - all are saved. SessionSaver can also save individual sessions for future recall.

It has a host of options for experts to tweak, including session-storage (akin to Firefox's ability to bookmark all tabs in a folder), which allow a high degree of flexibility.

The latest version of SessionSaver is located here. It is listed at Mozilla Update Extension list. There is no official homepage, but SessionSaver support is currently centralised on a MozillaZine forum thread that is more than 100 pages long.

This is a wiki page, anyone should feel free to add and correct information here.

Editing SessionSaver Settings

SessionSaver settings can be edited by going to the Tools menu, scrolling to the SessionSaver submenu and clicking on "Settings".

Note: Options with a "≡" symbol next to them have mystery meat options behind them. Clicking them repeatedly will "roll" through a list of choices. Note2: Crash recovery remains enabled, no matter how the UI is set.

Simple menu

This is the default option for the settings screen.

I'd like my browser restored
Enabling this saves your session history every time the browser is shut down manually, and restores it when it is fired up again. Crash recovery remains enabled, independent of this setting.

Expert menu

The expert menu can be viewed by clicking on the "Simple ≡" option in SessionSaver settings.


Automatic

I'd like my browser restored
Enabling this restores your browser session everytime the browser starts up. Further, you can choose whether your last session will be restored, or a pre-defined Default session. Again, crash recovery remains enabled, independent of this setting.
..but ask me first
Enabling this results in SessionSaver prompting you before saving and restoring browser sessions. Clicking on the "≡" further allows you to choose whether you're prompted only at shutdown or at both startup and shutdown


Manual Access

When restoring a saved session, it's OK to clear away Existing windows (and tabs)
Determines whether restoring a session will overwrite the current session
When restoring, join multiple windows into one
If you had more than one window open in your previous session, enabling this option will combine them all into one window
Save a session-backup on shutdown, to
Enabling this saves your browser session when you close the browser. You can choose whether to save the session to the Default session or another one


Snapback Menu/Chronological

Clicking on this heading toggles between Snapback Menu and Snapback Chronological - 2 ways of re-opening previously-closed tabs
The former presents you with a menu allowing you to choose which of your recently closed tabs you would like to re-open. The latter reopens recently closed tabs in the order that they were closed. In either case, the tabs will be restored to their erstwhile position unless the tabs have been reordered, in which case the tabs will be appended to the end of the tab bar.
Allow me to "re-open" Closed tabs
Inserts an option on the Tools menu to re-open previously closed tabs
And windows
Inserts an option on the Tools menu to re-open previously closed windows


Sync

Allows one to synchronize browser sessions to a remote server

(awaiting setup)
Clicking on this phrase reveals a form to setup syncing
Auto sync this session
Allows synchronization of sessions to Apple's iDisk or via ftp/dav
full url
When using ftp/dav, location to store the session information file, written as a URL, e.g. ftp://www.someisp.com (Note: You may have to manually create a blank file called SessionSaverSyncI.txt in the specified location before ftp/dav sync will work. That's a capital "I" between SessionSaverSync and .txt, not a lowercase "l").
login name
Enter the login id you use to log into iDisk or the ftp/dav
password
Enter your password
label
Quick-Sync
Clicking this toggles between the settings to Store or Retrieve a remotely synced session

Sessions

Saving a custom session

Go to the "Tools" menu, open the "SessionSaver" submenu and click either "Save This Window...", or "Save All Windows..." to save your current session. The latter will only be available if you have multiple Firefox windows open. A dialog will then pop up, prompting you for a new name for your session. Afterwards, your saved session should be available directly under the Tools, SessionSaver menu.

Restoring a custom session

Go to the "Tools" menu, click on the "SessionSaver" submenu and click on the name of the session you want to save under the heading "Restore".

Deleting a saved custom session

Go to the "Tools" menu, click on the "SessionSaver" submenu and either middle-click, or hold the Shift key and left-click on the session that you wish to delete.

Where is info on sessions stored?

The sessions are stored in the prefs.js file in your profile folder.

If you want SessionSaver to ignore saved sessions for one startup, set

user_pref("sessionsaver.settings.autoload", false);

I borked my startup by exiting a popup window (which removed all chrome from the interface, including the address bar) after exiting the session that had my actual tabs, and I had to resort to this method. Please note you can only do this when Firefox is closed.

Migrating saved sessions

SessionSaver can archive stored sessions to files. Archival is accessible from three places: the main menu (bottom), the settings window, and when right-clicking on an individual session (in the main menu). The first two places permit exporting of all sessions, along with some settings (for adblock and tabmix). The third place, right-clicking a session, permits exporting of just that individual session, with no extra settings.

Possibly annoying features

Previous versions of SessionSaver showed an animated fade effect. They also suppressed the multiple tabs warning, when closing the last browser. These features are disabled, by default, in the latest version.

Configuring toolbar buttons

Toolbar buttons for SessionSaver can be added using the Customizable Toolbar Buttons extension [1]. Setup may be somewhat arcane for regular users, so step-by-step instructions may be added here at a later date. Alternatively, a somewhat technical tutorial on this extension may be read. Future versions of SessionSaver will take care of the necessary configuration if this extension is installed.

Configuring keyboard shortcuts

The keyconfig extension can be used to configure keyboard shortcuts for SessionSaver. Please refer to this partial list of shortcuts you can configure for SessionSaver. Future versions of SessionSaver will take care of the necessary configuration if this extension is installed.

Hidden SessionSaver preferences

These SessionSaver preferences - some hidden and inaccessible through the UI - can be edited by typing "about:config" in the location bar, pressing enter and searching for preference names with the prefix "sessionsaver".

Pref Meaning
autoload should SessionSaver restore every startup?
autoload.branch ..if so, which session should be restored?
crashload should crashed sessions be restored (overriding the autoload/branch settings)?
orbiter [When Set, This Indicates A Crashed Session-Restore] - which session crashed?
shutdown did the browser properly shutdown? (if not, it crashed)
bluefyre would the user like to be prompted..
bluefyreflip ..at "Startup", "Shutdown", or "Both"?
dontwarn multiple values in a space-collapsed array -- mainly for minor ui-persistence
shutdownsave should a backup-copy of the current session be saved, on shutdown?
shutdownsave.branch ..if so, saved where?
snapdropdown should SnapBack show a 10-item dropdown, or just sequentially access?
snaptabs enable SnapBack for closed-tabs?
snapwindows enable SnapBack for closed-windows?
overwritewindows should existing windows be re-used, when manually restoring a saved-session?
overwritetabs ..if so, should their tabs be re-used too?
concatenate should sessions with multiple windows, be restored into just one?
nofx disable graphics fade-in, for SnapBack + session-restore?
willfocus immediately focus SnapBack tabs?
filemenu show Basic Capture + Restore, in the File-menu?
prefs_set which version of SessionSaver is currently running?

Getting Help / Reporting Bugs

For questions that aren't answered here, or to report bugs, please post in SessionSaver's thread on MozillaZine.

Slow? Performance Optimizing Tips

Diagnosis/Tools: use CPU monitor (such as Windows Task Manager or top on Linux)to check if Firefox is taking 100% and for how long and use file monitor tool (such as Sysinternals File Monitor on Windows) to see what is happening with filesystem, -- if you see Firefox process writing/recreating prefs.js/prefs-1.js/pref.js.moztmp then probably it is time to optimize.

Optimizing:

  • SessionSaver saves for each window and each tab whole browsing history, position, zoom level, session cookies, input values from forms, and more. This gathering of information takes time and CPU. If you have more than few tabs (say 50+) you may notice spikes in CPU usage every 10 seconds when SessionSaver gathers information and converts it into a string (for reference 70 tabs is about 32000 characters long string!). Having fewer windows or tabs leads to better performance
  • make sure you check size of pref.js - keep in mind Sessionsaver saves all session info into this one file (which means that Firefox is essentially regenerating/recreating whole prefs.js going through prefs-1.js and pref.js.moztmp ...) every 10 seconds for auto-save. If prefs.js file is big writing will take time and leads to substantial hard drive activity!

If prefs.js size is more than 100KB then consider trimming it (remove old saved sessions!). I had 1MB and performance was so bad it made Firefox unusable for 5 seconds (or longer) essentially blocking any interaction with Firefox (especially when editing form ...) - not good ...

BEWARE: For experts only! If you want to modify the default of 10 seconds you will need to change value of "10000" (which equals to 10 seconds in milliseconds) in setTimeout (and related) calls inside sessionsaver.js which is inside sessionsaver.jar (and regenerate sessionssaver.jar!). I have used value of 300s (300000ms) which is 5 minutes with great success for very large numer of tabs (>50).

Suggestion to Rue (or whoever is maintaining this extension): add prefs like sessionssaver.timeinterval=10000 to allow users to chnage default 10 seconds ...

I second that suggestion. It's something that obviously should have a preference. Meanwhile, how does one "regenerate sessionsaver.jar" so we can do it manually?