Lire ses agenda en ligne de commande
Pour avoir accès hors ligne à mes agendas rapidement en ligne de commande (et donc également via emacs), j'utilise la combinaison vdirsyncer (gérant la synchronisation) et khal (donnant une interface interactive ou non).
La configuration de vdirsyncer se fait via le fichier
~/.config/vdirsyncer/config. On aura un espace local qui sera
synchronisé avec un espace distant, ce dernier sera mis à read_only
pour ma part (comme je n'utilise khal que pour la visualisation, bien
qu'il puisse être étendu).
La configuration est la suivante:
[general]
"~/.config/vdirsyncer/status/"
[pair calname_calendar]
"calname_calendar_local"
"calname_calendar_remote"
["from a", "from b"]
[storage calname_calendar_local]
"filesystem"
"~/.config/vdirsyncer/calendars/calname"
".ics"
[storage calname_calendar_remote]
"caldav"
"https://CALDAVURL/"
"USERNAME"
"PASSWORD"
true
Pour chaque calendrier calname, on aura deux emplacements
calname_calendar_local et calname_calendar_remote. L'ajout d'un
deuxième calendrier demandera d'ajouter le triplet pair cal2, storage cal2_local et storage cal2_remote.
Une fois fait, il suffit de lancer la commande vdirsync discover. La
synchronisation des agendas se fera via la commande vdirsyncer sync,
que l'on peut ajouter à son crontab.
Vient ensuite la configuration de khal. La configuration se fait via
le fichier ~/.config/khal et vaut:
[calendars]
[[calname]]
"~/.config/vdirsyncer/calendars/calname/<UUID>"
true
"#6BBA88"
[locale]
%H:%M
%Y-%m-%d
%Y-%m-%d %a
%Y-%m-%d %H:%M
%Y-%m-%d %H:%M
[view]
{calendar-color}{cancelled}{start-end-time-style} {title} {location} {repeat-symbol}{alarm-symbol}{description-separator}{description} {url}{reset}
Chaque calendrier de ~/.config/vdirsync/calendars/ pourra être rajouté
dans la partie [calendars] (ls =~/.config/vdirsync/calendars/ pour
récupérer l'uuid du dossier).
On a accès ensuite aux commandes:
khal calendarqui affiche les premiers mois.khal interactivequi permet de naviguer dans le calendrierkhal listqui liste tous les événements à venir. Un peut spécifier une date de début et de fin, utiliser pour exporter ses agendas.khal searchpour rechercher des occurrences dans tous les agendas.