khard.formatter

Formatting and sorting of contacts

Module Contents

class khard.formatter.Formatter(display: str, preferred_email: List[str], preferred_phone: List[str], show_nicknames: bool)

A formtter for CarddavObject.

It recieves some settings on initialisation which influence the formatting of the contact.

static format_labeled_field(field, preferred)

Format a labeled field from a vcard for display, the first entry under the preferred label will be returned

Parameters
  • field (dict(str:list(str))) – the labeled field

  • preferred (list(str)) – the order of preferred labels

Returns

the formatted field entry

Return type

str

get_special_field(self, vcard: CarddavObject, field: str)

Returns certain fields with specific formatting options (for support of some list command options).

static get_nested_field(vcard: CarddavObject, field: str)

Returns the value of a nested field from a string

get_nested_field(vcard,’emails.home.1’) is equivalent to vcard.emails[‘home’][1].

Parameters
  • vcard – the contact from which to get the field

  • field – a field specification

Returns

the nested field, or the empty string if it didn’t exist