lookout — convert Microsoft Outlook address-book export files to KAB or GnomeCard format


lookout [--gc] [--kab] [file]


The lookout converts Outlook address-book export files, as produced by Outlook 97 or Outlook Express, to either the KAB format used by the abbrowser address-book browser in KDE or the GnomeCard format used by the GNOME address book application.

You may select the format to be written with --kab for KAB or -gc for GnomeCard. If you do not select a format, lookout will try to determine what format it should translate to by looking for a ~/.kde or ~/.gnome directory.

Run with a single file argument, lookout will interpret it as an Outlook address-book export file to be converted, and write the corresponding KAB- or GnomeCard format address file to the default location for the calling user's address book. The new information will be appended to any previously existing address book.

Run with no arguments, lookout will act as a filter, translating an Outlook address-book export file presented on standard input to KAB or GnomeCard address-book data written to standard output.

The fields supported by Outlook do not always have exact equivalents in the output address-book formats that lookout supports. Despite this, no information is ever discarded in translation; lookout inserts untranslated fields into whatever facility for notes or user-defined fields the output format supports.

Theory of Operation

To export your Outlook address book in the format this program reads, use the the 'Tab Separated Values (Windows)' export format. To generate this export file:

  1. In Outlook (on your Windows machine), select File -> 'Import and Export' to call up the import/export wizard.

  2. In that wizard, select 'Export to a file', which should be the second entry of the wizard's first menu. Press Next to continue.

  3. Select the "Contacts" folder. Press Next to continue.

  4. Select 'Tab Separated Values (Windows)'. This is the last entry in the list; you may have to scroll down to see it. Press Next to continue.

  5. Outlook will prompt you for a path and filename to write to. Supply one, or accept the default. Press Next to continue.

  6. Press `Finish' to write the file.

  7. Transfer the export file to your Unix machine by any available means. (An MS-DOS-formatted floppy disk read on your Unix box by mcopy(1) will do nicely.)

To use the export file you have just generated in KDE:

  1. Select abbrowser as your address-book interface. Note that it is not (at time of writing) the default address-book interface of KMail. To enable it, run kmail select Settings -> Configuration to pull up the Configuration dialog, then select `Appearance' and select the `Addressbook' tab. Change the pulldown from `Traditional Kmail' (the default) to `Abbrowser'.

  2. Make sure that the directory in which your contact manager expects to find address-book files exists before running lookout. The easiest way to make sure is to run abbrowser once before converting, to create a dummy address-book file in the right location.

As of KDE 2.1.1 (as shipped in Red Hat 7.1) abbrowser is the only address-book interface shipped with KDE which can handle anything like the full set of Outlook address-book fields. The KAB format that lookout writes can be written and read by some other KDE address books, however.

Under either KDE or GNOME:

  1. Run lookout file, replacing file with the actual name of your Outlook export file.

  2. Call up your address-book application to verify that the transfer was successful.



location of the address book used by abbrowser and other KDE address book plugins.


location of the address book used by the GNOME address-book application.


Requires Python 1.5.2 or greater.


This version of lookout was written for the 1.2.0 of gnomecard and the KDE 2.1.1 version of abbrowser. Future versions of these addressbook applications may add more fields matching Outlook fields. Therefore, you should check which version of your addressbook you are using; it may be that a more up-to-date version of lookout will do a better semantic translation, relegating less data to the notes or extension fields. You can find the latest version of lookout at the lookout project page.


Eric S. Raymond <>

Rob Landley <>