Goldbug Software

vCard Editor2

What is the difference between vCard Editor2 and vCard Editor

vCard Editor2 is a redesigned version of vCard Editor with using Contacts.framework which is introduced from macOS 10.11. So vCard Editor2 works in macOS 10.11 and later, but vCard Editor works in macOS 10.9 and later.

In addition to the change, code refactoring and optimization are done. For example the reading speed of vCard file is faster than before, and the "Replace All" function is added in the Find and Replace.

And the change to the Contacts.framework is not only for performance but also related to the application life cycle. Because Apple has announced that the AddressBook.framework is deprecated in macOS 10.11. It means it will be discontinued at some future date.

It is hard to know when it will happen, but usually a function which is announced as deprecated is discontinued after 3 or 4 years later. If you are not using old macOS such as 10.9, it will be better to choose vCard Editor2.

Further more, vCard Editor is buit by Xcode 13.3 in order to work in macOS 10.9 and later. The deployment target of Xcode 13.3 is macOS 10.9 - 12.3. So please note that it may cause any unexpected issues when you use vCard Editor in macOS 11.x and later.

How to use vCard Editor2

Contact Info View

The contact info is shown at right of the window, when you click the side bar button in the toolbar or select the "Show Contact Info" menu in the contact menu of the Navigate menu.

The view is switched when you click the edit button.

If the button is "Edit", the following table is shown and you can edit the values as same as before.

If the button is "Lock", following new table is shown to be more readable. And it is not editable.

The view turns to two columns according to the window width.

Editing Tips

There are two types of data in the vCard file. One is just string such as company, and the other is labeled value. The labeled value consists of label and string and you can have multiple label and sting pairs.

And if the data is the labeled value, you can add multiple values as the data like the picture below. So the panel is used to add/delete the labeled value.

In case of the address and instant message, those string consists of sub strings such as ZIP, State, Street, and so on.

Country code in the address panel

When you double-click the address cell or with holding the command key, the following address panels are shown. The country code in the panel is used to change the format of the postal address. If it is empty, county code in the system default is used. Please note that the Country value is not related to the country code. You can set any string as the Country.


The country code is used to format a address.

When you select the country code in the column, the string at the top of the panel will be formatted as the code.
For example, when you select US at the column, the strings will order like "1 Infinite-loop Cupertine, CA 95014". When you select JP, it will be "95014 CA Cupertinoe 1 Inifinite-loop".


vCard Editor2 has a Find&Replace function.
The FindBar will be shown when you select the Find menu in the edit menu or click the find button in the Toolbar.

The matched strings are shown in gray background. And the orange background shows that the string is replaced when you click the Replace button.

When you click the All button, the strings that has the gray background in the table are all replaced.

Replacing string in the Address cell

You can replace the Cupertino with other string directly. The way of matching string is done in each item of the address. Howerver you can not find the "Cupertino, CA", because the string consists of the two items.

Please note that the search string is done by the each sub item. For example the Address stirng consists of 5 sub items: ZIP, State, City, Street and County.
You can find "Cupertino" or "CA" separately, but cann't find "Cupertino, CA".

The string in the Birthday and Dates cells can be searched by the FindBar. However the string can not be replaced via the Replace Button.

Use the Find Panel

The Find Panel is shown when you select the "Show Find Panel" menu in the edit menu or type Cmd+Shift+F as a short cut.

In this panel, the search is performed by narrowing down the items selected by the data type and label. Matching items are listed in the table with their names.
Click the Replace button to replace the orange highlighted text with the string in the Replace field.
Click the "Replace All" button to replace the orange and blue highlighted text.
These operations can be undone by clicking "Undo" in the edit menu.

Also click the "Edit / Lock" button at the top right of the panel to enter edit mode (the button name will be Lock), then double-click a cell in the "Value" column to directly rewrite the value in that cell. This operation can be undoable too.

You can sort the table by each item by clicking the header of the table column.

Search by Regex expression

When you select the "Regex" in the search mode menu, the regex expression is used to find a word. Please refer to the detail of the regex expression at "WiKi Regex expression".

The following example is that the expression, "^.[op]" is used to look for the word which starts with any charcter and the second is "o" or "p".

Setting the same label or value in the selected rows

You can set the same label or value in the seleced rows at once.
It works on the phone, email and note column and so on.
Please try to change a label in a column such as Phone with selecting multiple rows, an alert will be shown for making sure the operation.
When you click the OK button, all the labels of the Phone column you selected will be changed.

Adding/Deleting members in a group

You can add/delete members of a group in the Group view which is opened by the "Show Groups" menu in the Group Button.

To add members in a certain group, select contacts in the "All Contacts", then drag and drop them to the group.

To delete members in a certain group, select contacts in the group, then select the "Delete Contacts" menu in the contact button.

The contacts are deleted in the group but not deleted in the "All Contacts".

Editing contact image

You can set the image of contact in the contact info panel.

Show the contact info and "drag and drop" the image on to the contact image.

In order to delete the image, control-click on the image, then the context menu show the menu to delete the image.

Reading CSV file

vCard Editor expects the items in a CSV file are ordered as the following keywords. If the file has a line at the beginning to designate the items order, the items are read as the specified order.
Please check the sample file if you want to add the items line.

Name,Home Phone,Work Phone,Other Phone,Home Email,Work Email,Other Email,Home ZIP,Home State,Home City,Home Street,Work ZIP,Work State,Work City,Work Street,Other ZIP,Other State,Other City,Other Street,Birthday,Title,Company,Department,Job Title,First Name,Last Name,Nickname,Note,Facebook,LinkedIn,Flickr,SinaWeibo

download the sample csv Sample CSV File

Exporting as CSV

The "Export as CSV" menu in the file menu is for exporting contacts as CSV.

The menu is enabled when more than one contact are selected in the windows. And the exported file has a first line as explained above, and the text encoding will be UTF-8.

The CSV file has the first line which is mentioned above in order to designate the order of value. It means that not all the values in the contact are written in the file.

Reordering table rows in the contact info view

The rows in the contact info view can be reordered by the Drag and Drop.

Click the cell in the type column and drag the cell with holding the button to the row you want to move. When you release the button, the source row will move to the destination row.

Register Custom Items

From vCard Editor2 3.3.0, you can register arbitrary information (custom items) in the vCard file. You can show the information in the contact row with the name and label of your choice.

Register a custom item by specifying its name and type. There are two types, string type and labeled type. For the string type, the value is a string. The labeled type consists of a string with a label, such as a telephone number or email. You have to choose either type depending on the data you want to register.

After you register a custom item, its name is listed in the item menu and displayed in the column. To enter a value, double-click the cell and enter the value directly in the text field as you would enter a company name or phone number, or enter a label and value from the panel that appears. Registered custom items can be sorted and searched in the same way as conventional items.

Please note that the registered custom items are saved for each contact using custom format of vCard. In other words, the custom items may not be shown in the window of other vCard applications.