Dieses Python-Tool exportiert Geburtstagsinformationen aus Apple Contacts und erstellt eine Remind-Datei für Geburtstagserinnerungen.
Find a file
2025-04-18 15:49:19 +02:00
.gitignore closes #1 2025-04-16 19:38:25 +02:00
contacts_to_remind.py Upload files to "/" 2025-04-18 13:16:23 +02:00
future-improvements.md Add future-improvements.md 2025-04-18 15:49:19 +02:00
LICENSE Initial commit 2025-04-15 17:56:14 +02:00
README.md Update README.md 2025-04-18 13:51:00 +02:00

Apple Contacts to Remind Exporter

Dieses Python-Tool exportiert Geburtstagsinformationen aus Apple Contacts und erstellt eine Remind-Datei für Geburtstagserinnerungen.

Funktionen

  • Extrahiert Geburtstage aller Kontakte aus Apple Contacts
  • Erzeugt eine Remind-kompatible .rem-Datei
  • Erstellt Erinnerungen mit 7-Tage-Vorwarnung vor jedem Geburtstag
  • Berechnet das Alter automatisch (wenn das Geburtsjahr bekannt ist)
  • Sortiert Einträge nach Monat und Tag
  • Generiert einen Bericht über Kontakte mit fehlendem Geburtsjahr

Voraussetzungen

  • macOS (da Apple Contacts verwendet wird)
  • Python 3.6+
  • pyobjc-framework-Contacts

Installation

  1. Repository klonen oder die Datei herunterladen
git clone https://github.com/dein-username/apple-contacts-to-remind.git
cd apple-contacts-to-remind
  1. Python-Umgebung einrichten (mit uv oder pip)
# Mit uv
uv venv
source .venv/bin/activate
uv pip install pyobjc-framework-Contacts

# Mit pip
python -m venv venv
source venv/bin/activate
pip install pyobjc-framework-Contacts
  1. Das Script ausführbar machen
chmod +x contacts_to_remind.py

Verwendung

Grundlegende Verwendung

./contacts_to_remind.py

Dies erstellt eine Datei geburtstage.rem im aktuellen Verzeichnis.

Optionen

usage: contacts_to_remind.py [-h] [-o OUTPUT] [-v]

Exportiert Geburtstage aus Apple Contacts in eine Remind-Datei.

options:
  -h, --help            Zeigt diese Hilfe an und beendet das Programm
  -o OUTPUT, --output OUTPUT
                        Ausgabedatei (Standard: geburtstage.rem)
  -v, --verbose         Ausführliche Ausgabe

Beispiele

Standard-Ausgabedatei erstellen:

./contacts_to_remind.py

Benutzerdefinierte Ausgabedatei angeben:

./contacts_to_remind.py -o ~/remind/meine_geburtstage.rem

Mit ausführlicher Ausgabe:

./contacts_to_remind.py -v

Ausgabeformat

Das Tool erzeugt eine Remind-Datei im folgenden Format:

# Geburtstage aus Apple Contacts
# Erstellt am: 2025-04-15 14:23:45
# Enthält Erinnerungen am Geburtstag mit 7-Tage-Vorwarnung

if !defined("init")
 set init 1
 fset since(x) ord(year(trigdate())-x)
endif

REM 15 JAN +7 MSG Max Mustermanns [since(1986)] Geburtstag ist am 15. JAN %b
REM 28 FEB +7 MSG Erika Beispiels Geburtstag ist am 28. FEB %b

Das Script erstellt Erinnerungen, die 7 Tage vor dem eigentlichen Geburtstag angezeigt werden. Für Kontakte mit bekanntem Geburtsjahr wird das Alter dynamisch berechnet.

Integration mit Remind

Die generierte .rem-Datei kann direkt mit Remind verwendet werden, einem leistungsfähigen Erinnerungstool für die Kommandozeile.

Um die Geburtstagsdatei in Remind zu verwenden, fügen Sie sie zu Ihrer Remind-Konfiguration hinzu oder laden Sie sie direkt:

remind geburtstage.rem

Bericht über fehlende Geburtsjahre

Das Script gibt nach dem Ausführen einen Bericht über Kontakte aus, bei denen das Geburtsjahr fehlt:

Kontakte mit fehlendem Geburtsjahr (1604):
-----------------------------------------
• Anna Beispiel (23.4.)
• Max Mustermann (15.1.)

Hinweis: Bei diesen Kontakten wird kein Alter berechnet.

Dies hilft Ihnen, Kontakte zu identifizieren, bei denen das Geburtsjahr fehlt, falls Sie diese Informationen ergänzen möchten.

Lizenz

Dieses Projekt steht unter der GNU General Public License v3.0.

Beitragen

Beiträge sind willkommen! Bitte fühlen Sie sich frei, Issues zu eröffnen oder Pull Requests einzureichen, um dieses Tool zu verbessern.