To package the extension
First create a directory structure in custom/ that corresponds to your site name. Use "sogo-demo" as an example. You can do so by doing:
% cp -a custom/sogo-demo custom/mysite
Then customize the following file:
You must at least customize the sogo-connector.baseURL value. If you want to force-push preferences prefix your option with force_.
To build the extension, do:
% make distclean % make build=mysite
For development enable debug messages
browser.dom.window.dump.enabled = true. Enables the use of the dump() statement to print to the standard console. See window.dump for more info. You can also use nsIConsoleService from privileged script.
You can do so automatically by setting these preferences in custom-preferences.js:
Making the standard output console visible
On Windows, you will need a console to actually see anything. If you don't have one already, closing the application and re-opening it with the command line parameter -console should create the console. On other operating systems, it's enough to launch the application from a terminal.
Debugging and changing code without restart Thunderbird
Place all your code, you want to test, there and execute it. You can even defined functions there. If you cannot override an existing JS function, you have to rename it.
Command line parameter for starting Thunderbird in DEVEL mode: -purgecaches -console -no-remote -P dev
More useful hints for developers: https://developer.mozilla.org/en/docs/Setting_up_extension_development_environment
Migrating to Thunderbird v68 from previous versions
First of all, SOGo Integrator is no longer needed. All SOGo Integrator preferences have been renamed to "sogo-connector". For example:
was renamed to:
Here is the list of renamed preference keys:
sogo-integrator.autocomplete.server.urlid sogo-integrator.disable-calendaring sogo-integrator.disable-send-invitations-checkbox
All SOGo Connector preferences:
sogo-connector.autoComplete.commentAttribute sogo-connector.autoComplete.delay sogo-connector.contacts.categories sogo-connector.identification.use_email_address sogo-connector.sogo-prefix