QString Formatting::prettyUserID( const UserID & uid ) {
    if ( uid.parent().protocol() == OpenPGP )
        return prettyNameAndEMail( uid );
    const QByteArray id = QByteArray( uid.id() ).trimmed();
    if ( id.startsWith( '<' ) )
        return prettyEMail( uid.email(), uid.id() );
    if ( id.startsWith( '(' ) )
        // ### parse uri/dns:
        return QString::fromUtf8( uid.id() );
    else
        return DN( uid.id() ).prettyDN();
}
QString Formatting::prettyEMail( const UserID & uid ) {
    return prettyEMail( uid.email(), uid.id() );
}
QString Formatting::prettyNameAndEMail( const UserID & uid ) {
    return prettyNameAndEMail( uid.parent().protocol(), uid.id(), uid.name(), uid.email(), uid.comment() );
}