NAME
vcardtidy - normalize the format of VCARD files
VERSION
v1.1.0 (2026-01-20)
SYNOPSIS
vcardtidy [FILES...] [OPTIONS...]
DESCRIPTION
vcardtidy formats VCARD files, using Text::vCard::Addressbook to normalize field order and capitalization.
By default vcardtidy acts like a filter, reading from stdin and writing to stdout.
If FILES... are specified they are tidied up in place! Users are encouraged to use a revision control system (e.g. Git) and/or have secure backups.
OPTIONS
- --debug, -d
-
Output debugging statements to STDERR.
- --regex, -r REGEX
-
Before tidying, evaluate
REGEXreplacement expression against the input. Can be used multiple times. To add a NOTE and an additional CATEGORY in one go for example:$ vcardtidy untidy.vcf \ -r 's/^END:VCARD/NOTE:My note\r\nEND:VCARD/m' -r 's/^(CATEGORIES:.*)(\s+)$/\1,NewCategory\2/m'Tools like sed(1), awk(1) and of course perl(1) are obviously natively designed to modify text, in a better way. But
--regexensures that you still have a valid VCARD afterwards, allowing you to easily iterate while you develop your change. - --force, -f
-
Force a tidy to occur when the N or FN fields are missing, by creating them based on the card's UID.
This flag can also be used to overwrite the VERSION field or ensure the the REV field is updated.
- --help, -h
-
Print the full usage message and exit.
- --no-rev, -R
-
Prevent vcardtidy from updating the "REV" timestamp.
- --nothing, -n
-
Do not write tidied output to files. In filter mode outputs the original VCARD.
- --vcard-version, -v VERSION
-
The value of VERSION to update (with
--force) or add (when none exists). Defaults to "4.0". - --version, -V
-
Print the version and exit.
SUPPORT
This tool is managed via github:
https://github.com/mlawren/vcardtidy
SEE ALSO
Text::vCard::Addressbook, githook-perltidy(1)
AUTHOR
Mark Lawrence <nomad@null.net>
COPYRIGHT AND LICENSE
Copyright 2022-2026 Mark Lawrence <nomad@null.net>
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.