diff --git a/osxphotos/photoinfo.py b/osxphotos/photoinfo.py index 61ef0a57..4dca2604 100644 --- a/osxphotos/photoinfo.py +++ b/osxphotos/photoinfo.py @@ -614,10 +614,17 @@ class PhotoInfo: exif["Title"] = self.title if self.keywords: - exif["TagsList"] = exif["Keywords"] = self.keywords + exif["TagsList"] = exif["Keywords"] = list(self.keywords) + # Photos puts both keywords and persons in Subject when using "Export IPTC as XMP" + exif["Subject"] = list(self.keywords) if self.persons: exif["PersonInImage"] = self.persons + # Photos puts both keywords and persons in Subject when using "Export IPTC as XMP" + if "Subject" in exif: + exif["Subject"].extend(self.persons) + else: + exif["Subject"] = self.persons # if self.favorite(): # exif["Rating"] = 5 diff --git a/tests/test_export_catalina_10_15_1.py b/tests/test_export_catalina_10_15_1.py index 988d9a3d..5ab9ed13 100644 --- a/tests/test_export_catalina_10_15_1.py +++ b/tests/test_export_catalina_10_15_1.py @@ -451,6 +451,7 @@ def test_exiftool_json_sidecar(): "Title": "St. James\'s Park", "TagsList": ["London 2018", "St. James\'s Park", "England", "United Kingdom", "UK", "London"], "Keywords": ["London 2018", "St. James\'s Park", "England", "United Kingdom", "UK", "London"], + "Subject": ["London 2018", "St. James\'s Park", "England", "United Kingdom", "UK", "London"], "GPSLatitude": "51 deg 30\' 12.86\\" N", "GPSLongitude": "0 deg 7\' 54.50\\" W", "GPSPosition": "51 deg 30\' 12.86\\" N, 0 deg 7\' 54.50\\" W", diff --git a/tests/test_export_mojave_10_14_6.py b/tests/test_export_mojave_10_14_6.py index 9f41b657..40ffc616 100644 --- a/tests/test_export_mojave_10_14_6.py +++ b/tests/test_export_mojave_10_14_6.py @@ -393,6 +393,7 @@ def test_exiftool_json_sidecar(): "Title": "St. James\'s Park", "TagsList": ["London 2018", "St. James\'s Park", "England", "United Kingdom", "UK", "London"], "Keywords": ["London 2018", "St. James\'s Park", "England", "United Kingdom", "UK", "London"], + "Subject": ["London 2018", "St. James\'s Park", "England", "United Kingdom", "UK", "London"], "GPSLatitude": "51 deg 30\' 12.86\\" N", "GPSLongitude": "0 deg 7\' 54.50\\" W", "GPSPosition": "51 deg 30\' 12.86\\" N, 0 deg 7\' 54.50\\" W",