This Blog Is Not For Reading

A blog, just like any blog, only more so

How To Use OpenStreetMap with Thunderbird’s “Get Map” button

Posted by Bob Jonkman on October 9th, 2012

Thunderbird’s address book has a “Get Map” button to show an address location on a map. By default, Thunderbird uses Google Maps to display a location. Wouldn’t it be nice to use OpenStreetMap in Thunderbird instead? Here’s how!

OSM

OpenStreetMap

OpenStreetMap uses Nominatim to search for and display a location. The Wiki tells us the URL query is processed left-to-right, and the example shows the address elements from greatest to least resolution:

http://nominatim.openstreetmap.org/search?q=135+pilkington+avenue,+birmingham&format=xml&polygon=1&addressdetails=1



Thunderbird

Thunderbird

The Thunderbird Knowledgebase for Mail and News settings gives us the following address-related parameters:

Substitution variables:
@A1: address, part 1
@A2: address, part 2
@CI: city
@ST: state
@ZI: zip code
@CO: country

Now we combine the two in Thunderbird’s configuration file prefs.js:

user_pref("mail.addr_book.mapit_url.format", "http://nominatim.openstreetmap.org/search.php?q=@A1,@A2,@CI,@ST,@CO");



If you prefer not to edit the pref.js file, here’s a step-by-step procedure to do it with the graphical interface.

If you’re using Linux, select Edit, Preferences from the Thunderbird menu. On Thunderbird for Windows select Tools, Options. Click on the Advanced toolbar button, then the General tab.

Screenshot of the Preferences window, Advanced tab

Click on the Config Editor… button.

Screenshot of advanced configuration warning

Click on the I’ll be careful, I promise! button.

Screenshot of Thunderbird advanced configuration window

Type mapit in the Search field,

Screenshot showing the mail.addr_book.mapit_url.format setting

Double-click on the line for the mail.addr_book.mapit_url.format parameter.

Screenshot of input dialogue

Delete what’s there, and type http://nominatim.openstreetmap.org/search.php?q=@A1,@A2,@CI,@ST,@CO

Screenshot of input box with OSM value

Click OK, close the about:config window, and close the Preferences window.

Now we need to find an address book entry with enough data to generate a map.

From the Thunderbird menu, select Tools, Address Book, and double-click on an entry. Click New Contact if there’s nobody in your address book (and you can enter your own address).

Screenshot showing address book general info entry form

Click on the Private or Work tab to show the screen for address entry.

Screenshot showing address book work info entry form

At minimum, fill in the Country field. Adding State/Province, City and Address will improve the resolution of the map. If you do fill in higher resolution fields (Address or City) then you also need to fill in the lower-resolution fields (State/Province and Country), or the Nominatim search won’t work.

Note that the Nominatim URL query doesn’t include the @ZI variable, so the ZIP/Postal Code field isn’t used to create the map.

When all the data is entered, click OK.

Screenshot of Thunderbird Address Book showing Bob Jonkman

With any address field filled in, the address book entry now displays a Get Map button.

Go ahead, click it!

Screenshot of OpenStreetMap

And there we have it! An OpenStreetMap of the address in the Thunderbird address book.

If you’ve done this, or have suggestions for improving these instructions please let me know in the comments or by e-mail at bjonkman@sobac.com.

–Bob.

All screenshots taken by Bob Jonkman, and freely available for re-use (CC0CC0).

The new OpenStreetMap logo by Ken Vermette from http://blog.osmfoundation.org/2011/05/13/new-openstreetmap-logo/, used under a Creative Commons LicenseCC BY-SA license.

The Thunderbird Logo and Wordmark are used according to the Mozilla Foundation Visual Identity Guidelines for Thunderbird.

Maps © OpenStreetMap contributors, CC BY-SA

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Better Tag Cloud