The Address Book Netscape and Mozilla

Updated 02/25/05 - Click HERE


General:

Address books are a vital part of your Netscape and Mozilla mail programs. The address book files are "*.mab" files located in your profile directory, in the *.slt folder. See: Profiles Folder Location for your OS.

As a matter of routine you should "back-up" the Profile Folder on a regular basis. Save the Folder to a location OTHER than the Application Data folder. Create a folder on your HD for this purpose.

You should ALSO export ALL address books [*.mab files] as LDIF files for future use in the event the Address Book becomes corrupt. When you export the files, assign them a descriptive name. This is the Name that will be displayed when you import them later.

Troubleshooting

: If your Address Book did not convert from Netscape Communicator 4.7x, or Netscape 7.x Profile:

Open the Address Book in the Old Netscape Application, either Communicator 4.7x, or Netscape 7.x
Click on Tools | Export
Export the Address Book as an LDIF file to your HD
Name the Exported LDIF file as you wish it to appear when Imported into the NEW Netscape Profile. Create a folder for this purpose.

Now Open the New Netscape or Mozilla Install
Open the Address Book
Click on Tools | Import
Import the saved LDIF file from your HD


Prior to Netscape 7.1/Mozilla 1.4 - Netscape handles Address Books as follows
:
Display Name
.
  *.slt File Name
.
Display Position
.
Personal Address Book
.
abook.mab
.
First on List (DEFAULT)
.
Collected Addresses
.
history.mab
.
Second on List (DEFAULT)
.
* First Created Address Book
   (User defined at creation)
.
.
 abook-1.mab
.
.
Dependent on creation/imported order
.
.
* Second created Address book
   (user defined at creation)
.
  abook-2.mab
.
Dependent on creation/imported order
.
** First imported address book
    (Display Name same as imported file name)
.
  impab.mab Dependent on imported/creation order
.
** Second imported address book
    (Display Name same as imported file name)
.
  impab-1.mab
.
Dependent on imported/creation order
.

*   Display Names are assigned when Address Books are created. The position in the list is dependent on when they were created. If you create an address book before you import an address book, it will appear as the first entry, after Collected Addresses. If you create a second address book, it will appear as the second entry, after Collected Addresses etc.

**   Imported address books assume the name of the file that is being imported. E.g., if the LDIF file is named "oldaddresses.ldif" the display name will be "old addresses", etc. The position on the list is dependent on the order of the importation. In other words, if you create an address book (abook1.mab) it will appear after Collected Addresses and appear in position 3. If you then import address book impab.mab, it will appear after the created address book, and appear in position 4., etc. Position and display name can be changed, to a limited degree, in the prefs.js file. As you can see from the above, pre-planning is needed to keep Address Book management clean and simple.


Address Book Entries in the prefs.js file:

The Display Name and position are controlled by the generated entries in the prefs.js file. You should have entries similar to the following:

user_pref("ldap_2.servers.abook.description", "abook");
user_pref("ldap_2.servers.abook.dirType", 2);
user_pref("ldap_2.servers.abook.filename", "impab-6.mab");
user_pref("ldap_2.servers.abook.isOffline", false);
user_pref("ldap_2.servers.abook.position", 4);
user_pref("ldap_2.servers.abook.replication.lastChangeNumber", 0);

Note:
The description line shows the Name that appears in the Display list.
user_pref("ldap_2.servers.abook.description", "abook");

This will display as "abook" in the display list (without the quotes) This line can be edited to change the Displayed Name.
user_pref("ldap_2.servers.abook.description", "");

The filename line shows the associated .slt file
user_pref("ldap_2.servers.abook.filename", "impab-6.mab");

The file "impab-6.mab" shows that this file is associated with "abook".

The position line shows that this entry is in the 4th position in the Display list. (after Personal Address Book & Collected Addresses - which are First and Second by default) This line can be change to alter the Displayed list, BUT be very careful...   This scheme holds true for remaining entries except as noted.

user_pref("ldap_2.servers.history.filename", "history.mab");
user_pref("ldap_2.servers.history.replication.lastChangeNumber", 0);

Note:
As you can see, there is NO description as this is set as "Collected Addresses" default.
("chrome://messenger/locale/addressbook/addressBook.properties");
You can change the "Name" by adding the appropriate line to the user/prefs.js file.
user_pref("ldap_2.servers.history.description", "");

Also, there is NO position line as this is set to Position 2 by default (SEE: mailnews.js file). While you can ADD a "Position" line, It will disrupt the accociation of "Position" and "Display" that may not result in the display that you want. You can go in and CHANGE all the positon lines so you do not have any duplicate entries and they are in the order that you want them. This looks like more work than it is worth. (Changing "description" name and/or "position" will only effect the current profile). This also holds true for "Personal Address Book".

user_pref("ldap_2.servers.imported1.description", "imported 1");
user_pref("ldap_2.servers.imported1.dirType", 2);
user_pref("ldap_2.servers.imported1.filename", "impab-2.mab");
user_pref("ldap_2.servers.imported1.isOffline", false);
user_pref("ldap_2.servers.imported1.position", 5);
user_pref("ldap_2.servers.imported1.replication.lastChangeNumber", 0);
user_pref("ldap_2.servers.imported3.description", "imported 3");
user_pref("ldap_2.servers.imported3.dirType", 2);
user_pref("ldap_2.servers.imported3.filename", "impab-4.mab");
user_pref("ldap_2.servers.imported3.isOffline", false);
user_pref("ldap_2.servers.imported3.position", 6);
user_pref("ldap_2.servers.imported3.replication.lastChangeNumber", 0);


user_pref("ldap_2.servers.pab.filename", "abook.mab");
user_pref("ldap_2.servers.pab.replication.lastChangeNumber", 0);

Note:
As you can see, there is NO description as this is set as "Personal Address Book" by default. ("chrome://messenger/locale/addressbook/addressBook.properties");
You can change the "Name" by adding the appropriate line to the user/prefs.js file.
user_pref("ldap_2.servers.pab.description", "Jim's Address book");
This will display as Jim's Address book - first (top position - by default) on the list.

There is also NO position line as this is set to Position 1 by default (SEE: mailnews.js file). While you can ADD a "Position" line, It will disrupt the accociation of "Position" and "Display" that may not result in the display that you want. You can go in and CHANGE all the positon lines so you do not have any duplicate entries and they are in the order that you want them. This looks like more work than it is worth - Re-name has no adverse effect.

Easiest way to get the book you want FIRST would be to just Drag and drop the add's you want to first book (default).
(Changing "description" name and/or "position" will only effect the current profile)

user_pref("ldap_2.servers.pab_1.description", "pab");
user_pref("ldap_2.servers.pab_1.dirType", 2);
user_pref("ldap_2.servers.pab_1.filename", "impab-5.mab");
user_pref("ldap_2.servers.pab_1.isOffline", false);
user_pref("ldap_2.servers.pab_1.position", 3);
user_pref("ldap_2.servers.pab_1.replication.lastChangeNumber", 0);

Version 7.1, and Mozilla 1.4 thru 1.6 handle the address books in a slightly different manner:

The naming conventions are the same as previous versions. The display positions are somewhat different.
By default:
Personal Address Book is in display position one (first on list)
Collected Addresses is in position two (second on list)
These cannot be changed

Remaining address books are listed in alphabetical order AFTER collected addresses. The sort order is not case sensitive.
Changing the "position line" in prefs.js or about:config has NO effect.

To change the name of an existing address book, other than the Personal Address Book or Collected Addresses:
Open Address Book window, select the address book that you want to rename in the LEFT column.
Double click the entry or select "properties"
In the properties dialog box, edit the name to the name of your choice consistent with the Alpha order that you want,
e.g. "A. < name >", "c. < name >" etc.

To change the name of the "Personal Address Book"

Browse to "about:config"
Scroll to the description line , "ldap_2.servers.pab.description"
Right click and select "Modify" -enter the name of your choice. - This entry will be the FIRST displayed entry.
Description name change does not effect the "filename" - abook.mab

To change the name name of the "collected Address":

Browse to "about:config"
Scroll to the description line , "ldap_2.servers.history.description"
Right click and select "Modify" -enter the name of your choice. - This entry will be the SECOND displayed entry.
Description name change does not effect the "filename" - history.mab

Changes made through "about:config" are written to the prefs.js file on exit, so there is no need to edit the prefs.js file manually.
You will have to re-start NS for the changes to take effect.


NS 7.1 handles collected addresses a little differently than previous version.

Default settings for collected addresses are set in:
< Drive >:\program files\............\defaults\pref\mailnews.js

// by default, only collect addresses the user sends (outgoing)
pref("mail.collect_email_address_incoming", false);
pref("mail.collect_email_address_outgoing", true);
pref("mail.collect_email_address_newsgroup", false);

// by default, use the Personal Address Book for collection
pref("mail.collect_addressbook","moz-abmdbdirectory://abook.mab"); // the Personal addressbook.

These settings appear in "about:config" as default.

The user can set limited criteria through the UI - Edit|preferences|Mail & Newsgroups|Addressing By default, the option is set to "Add Email addresses to my"- "Personal addressbook" You can select which address book to add addresses to, or you can de-select the option to add ANY addresses.

There is NO OPTION on this page to add addresses from incoming email. If you wish to collect addresses from incoming email you can add the appropriate entry through "about:config": Browse to about:config - select the following entry:

mail.collect_email_address_incoming
select MODIFY - edit to read "true"
OR
Manually add the following to your PREFS.JS:
user_pref("mail.collect_email_address_incoming",true);

Adding to the prefs.js will force the entry to "about:config" as "user set".

There is NO OPTION to limit the number of collected addresses.


Mozilla 1.7 Address Book Display Order:

Address Book files are named and created with the same conventions as previous Mozilla installs. Mozilla 1.7 handles the Address Book order in somewhat the same way as pre Mozilla 1.4, i.e., the displayed order is the order that the book was created or imported. Please see the "General" section above.

To determine the association between "Display" name and Entry name:
In "about:config" - in the Filter field, type in: "description"
E.g.,
ldap_2.servers.book1.description - user's addresses
book1=created reference (based on the name you selected when you created/imported the Address Book)
Users's addresses= the name displayed

Mozilla 1.7 does not remove the associated position entry from the prefs.js file when an Address Book is deleted. To determine what entries are valid:

In "about:config" in the Filter field, type in: "Position"
Any "user set" entry with a value of "0" is a leftover entry and can be deleted. To delete the entry, select Modify -> Reset.

The value entry is the display order
Eg.,
ldap_2.servers.book1.position -> 3
[book1 is displayed in position 3]
ldap_2.servers.book2.position -> 4
[book2 is displayed in position 4]
and so on.......

To change the display order, Modify value of the entry to reflect the display position you want.

The easiest way is through the "about:config" file.
If you add more Address Books, they will be displayed as the next available "position" and will display in that order.

********** OR **********

Open about:config - in the Filter field, type in: "Position"

Modify -> Reset ALL "position" lines that show:
"User Set" with a value "0"

Open Address Book window

Re-name Address Books, [other than "Personal Address Book" and "Collected Addresses"] with a Right click -> properties, to an "alpha order" name based on the order you want. The display order is NOT case sensitive.....

Close the Address Book window
Open about:config - in the Filter field, type in: "Position"
Modify User Set values to read "3" (without quotes)
This will FORCE the display to "alpha order" starting after "Collected Addresses"

Open the Address Book window

If you add more Address Books, they will be displayed as the next available "position" and will display in that order. ( in this case - they will be assigned "position" 4 and be displayed AFTER previously alpha ordered books.)

To re-establish order - simply Modify the value from "4" to "3"
By Modifying the "position" value, you can order the display to virtually any order you want.
-----


UPDATE

Printing the Address Book:
Updated: 02/25/05


The UI for "Print Address Book" is very poor, and creates a considerable waste of paper.

The first problem with Printing an address book via the built in Print feature is that the Print out will be IN THE ORDER THAT THE ADDRESSES WERE ENTERED - not the order that YOU have selected to display them.

To overcome this shortcoming do the following:
1. Create a Temporary address book - call it anything you like (I will use ( "Print_abook" ) for illustration purposes).
2. Set the Address Book that you want to print from (Original Address Book) to display the order that you want.
3. Select ALL entries in the Original Address Book - Drag and Drop to the newly created book ( "Print_abook" )
4. Print Prieview the NEW ( "Print_abook" ) to verify that it will print in the order that you want.
5. Print the newly created "Print_abook"

You can delete the new ( "Print_abook" ) once it is printed.

Alternate solution:

Export desired address book as .tab or .csv file. Open, and import into a Spreadsheet application (Lotus, Excel, M$ works) of your choice. Manipulate, sort, and format as you want, then print. Simple - easy. Can be used to combine several Address Books into one if desired.


captjlddavis



Back to Top


Return to Netscape Solutions