VCF Support =========== The script supports both vCard 3.0 and vCard 4.0 formats and extracts the following fields: - **UID**: Unique Identifier (used for stable filename generation) - **FN**: Full Name - **N**: Structured Name (Family;Given;Additional;Prefix;Suffix) - **ORG**: Organization - **TEL**: Phone Numbers (with type detection) - **EMAIL**: Email Addresses (with type detection) - **ADR**: Addresses (with type detection) - **URL**: Website URL - **BDAY**: Birthday - **NOTE**: Notes/Comments vCard 4.0 Support ----------------- The script uses the ``vobject`` library for enhanced vCard parsing, which provides: - **Better vCard 4.0 compatibility**: Improved parsing of modern vCard format - **Robust field handling**: More accurate extraction of complex fields like addresses - **Type parameter support**: Proper handling of type parameters (HOME, WORK, etc.) Parsing Engine -------------- The script uses the ``vobject`` library for comprehensive vCard 3.0/4.0 support. This ensures reliable parsing of VCF files while taking advantage of modern parsing capabilities. Filename Generation ------------------- The script uses a priority-based approach for generating Markdown filenames: 1. **Full Name (FN)** (highest priority): Uses the full name from the VCF FN field (e.g., ``John Doe.md``) 2. **Constructed Name** (fallback): If no FN field, combines given and family names (e.g., ``John Smith.md``) 3. **UID** (fallback): If no name is available, uses the UID field (e.g., ``12345-abcde-67890.md``) 4. **VCF Filename** (final fallback): Uses the original VCF filename if no other options are available This approach prioritizes human-readable filenames while providing UID-based fallback for stability when contact information is incomplete.