Bonjour à tous,
Vous vous souvenez peut-être que j’ai envoyé il y a quelques semaines une demande concernant les S:
et DL:
de l’export des fichiers .org vers .ics via org-icalendar.el sur la liste "atelier emacs Paris" (reproduit ci-dessous).
Est-il possible de personnaliser un peu la commande "org-icalendar-export-to-ics" ?
En fait, je souhaiterais pouvoir exporter après chaque modification un fichier.org qui comprend des "schudeled" et des "deadline". Ma logique d’usage est que les informations "schudeled" correspondent à la date et le créneau horaire d’un événement, et que les informations "deadline" ne comprennent qu’une date correspondant à la journée entière (date d’échéance, souvent pour des tâches). Lorsque je fais un export j’ai toujours en debut de ligne de la description des "S:" pour schudeled et des "DL:" pour les deadlines. Je me demande simplement si on pourrait les enlever simplement ?
@[supprimé] avait répondu à cela que c’était codé en dur mais sûrement pas trop difficile à modifier. Simon (zimoun) avait identifié le morceau de code suivant à changer.
--8<---------------cut here---------------start------------->8---
(let ((deadline (org-element-property :deadline entry))
(use-deadline (plist-get info :icalendar-use-deadline)))
(and deadline
(pcase todo-type
(`todo (or (memq 'event-if-todo-not-done use-deadline)
(memq 'event-if-todo use-deadline)))
(`done (memq 'event-if-todo use-deadline))
(_ (memq 'event-if-not-todo use-deadline)))
(org-icalendar--vevent
entry deadline (concat "DL-" uid)
(concat "DL: " summary) loc desc cat tz class)))
(let ((scheduled (org-element-property :scheduled entry))
(use-scheduled (plist-get info :icalendar-use-scheduled)))
(and scheduled
(pcase todo-type
(`todo (or (memq 'event-if-todo-not-done use-scheduled)
(memq 'event-if-todo use-scheduled)))
(`done (memq 'event-if-todo use-scheduled))
(_ (memq 'event-if-not-todo use-scheduled)))
(org-icalendar--vevent
entry scheduled (concat "SC-" uid)
(concat "S: " summary) loc desc cat tz class)))
--8<---------------cut here---------------end--------------->8---
Puis Simon a dit qu’il faudrait peut-être imaginer une option... et @[supprimé] a répondu.
Je me doutais que l'injonction "Pas d'option!" était contradictoire
avec le besoin de souplesse. S'il y a une option, elle peut concerner
le format avec lequel doivent être affichés les lignes de résumé pour
les schedule, deadline, etc. dans iCal. Je regarderai.
J’aimerai faire avancer cela mais je ne suis pas du tout un pro... juste un utilisateur curieux du monde libre. Comprendre et la nature des modifs est pour moi un premier pas ;-) Ça me permet d’essayer de déchiffrer du lisp...
Du coup, j’aimerai bien qu’on discute du principe et de l’usage ici. Personnellement, il me semble que "DL:" et "S:" ne sont pas utiles à partir du moment où on exporte des fichiers séparés (pro.ics | perso.ics | taches.ics par exemple) qui finissent dans des agendas séparés. Actuellement, la situation pour moi est la suivante. Mes entrées simples d’événements ressemble à ça:
* Nom de l’événement
<2020-11-09 lun. 10:00-12:00>
:PROPERTIES:
:LOCATION: 10 rue du confinement, 75013 Paris
:END:
Si j’exporte une entrée de ce type, j’obtiens un événement dont le titre est bien "Nom de l’événement" mais le reste des informations est basculé dans le contenu de l’événement.
En revanche, si mon entrée comprend "scheduled"...
* Nom de l’événement
SCHEDULED: <2020-11-09 lun. 10:00-12:00>
:PROPERTIES:
:LOCATION: 10 rue du confinement, 75013 Paris
:END:
... alors mon export est plus intéressant sur la gestion de propriété car j’ai une entrée qui comprend l’emplacement "10 rue du confinement, 75013 Paris" en plus. En revanche dans ce cas, le titre devient "S: Nom de l’événement".
De ce fait, je me dis que les mentions "S:"
et "DL:"
pourraient éventuellement être gardées (après tout certains en ont peut-être besoin) mais qu’il suffirait d’avoir un export plus complet (avec conversion notamment de :LOCATION:
) pour les entrées avec un "timestamp active".
Qu’en dites-vous ?