.gitignore | ||
contacts_to_remind.py | ||
future-improvements.md | ||
LICENSE | ||
README.md |
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
- Repository klonen oder die Datei herunterladen
git clone https://github.com/dein-username/apple-contacts-to-remind.git
cd apple-contacts-to-remind
- 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
- 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.