72 lines
No EOL
3.3 KiB
Markdown
72 lines
No EOL
3.3 KiB
Markdown
# Commands
|
|
|
|
|
|
## Create & destroy
|
|
|
|
### generate
|
|
|
|
Cette commande génère un fichier de calendrier. L'option --... semble être un placeholder, donc je suppose qu'il pourrait y avoir d'autres options à spécifier ici.
|
|
|
|
### pop
|
|
|
|
## File management
|
|
|
|
### load FILE
|
|
|
|
Cette commande lit un fichier .ics et ajoute le calendrier à la pile.
|
|
|
|
### save FILE
|
|
|
|
Cette commande retire le calendrier du dessus de la pile, et le sauvegarde dans le fichier indiqué.
|
|
|
|
## Transforming calendar content
|
|
|
|
### filter
|
|
|
|
Cette commande retire le calendrier du dessus de la pile, applique un filtre, puis ajoute le résultat à la pile.
|
|
|
|
* --merge: applique une opération de fusion des évènement qui se chevauchent sous forme de nouveaux évenements plus larges et qui incluent les informations des évenements dont ils sont issus.
|
|
* --anonymize: applique une opération d'anonymisation qui supprime le titre et le détails des évenements.
|
|
|
|
### union
|
|
|
|
Cette commande retire les deux fichiers .ics du dessus de la pile, calcule l'union de leurs événements (c'est-à-dire tous les événements qui apparaissent dans l'un ou l'autre fichier), puis ajoute le résultat à la pile.
|
|
|
|
### swap
|
|
|
|
Cette commande inverse l'élément du haut de la pile avec l'élement juste en dessous.
|
|
|
|
### substract
|
|
|
|
Cette commande retire les deux fichiers .ics du dessus de la pile, construit la différence entre les deux (c'est-à-dire retire du calendrier du bas de la pile les éléments qui sont dans celui du haut de la pile), puis ajoute le résultat à la pile.
|
|
|
|
## Exemple
|
|
|
|
|
|
```shell
|
|
kiwimix
|
|
generate --.... # generate X calendar in memory & push the result
|
|
# (we build a calendar from 9:00 to 18:00 for the ... period )
|
|
@ load alice.ics # push alice's meetings calendar on stack
|
|
@ filter --merge # pop alice's meetings calendar, filter & push the result
|
|
@ filter --anonymize # pop alice's meetings calendar, filter & push the result
|
|
@ read bob.ics # push bob's meetings calendar on stack
|
|
@ filter --merge # pop bob's meetings calendar, filter & push the result
|
|
@ filter --anonymize # pop bob's meetings calendar, filter & push the result
|
|
@ union --ranges # pop bob's meetings calendar, pop alice's calendar,
|
|
# compute (alice + bob) on time ranges, push the result
|
|
# (we just build an calendar with events where either alice or bob are occupied by meetings)
|
|
@ substract --ranges # pop bob, pop alice, compute (alice - bob) on time ranges, push the result
|
|
# (we just computed a calendar with all time slots where alice & bob are both free from meetings)
|
|
@ save free-time.ics # pop the resulting calendar, save to a file
|
|
```
|
|
* --events : supprime les evements qui sont dans le calendrier en haut de pile
|
|
* --ranges : supprime les intervales de temps des évenements qui sont dans le cadrier en haut de pile
|
|
|
|
|
|
## intersect
|
|
|
|
Cette commande retire les deux fichiers .ics du dessus de la pile, construit l'intersection entre les deux (c'est-à-dire les éléments qui sont communs au calendrier du bas de la pile et ceux sont dans celui du haut de la pile), puis ajoute le résultat à la pile.
|
|
|
|
* --events : supprime les evements qui sont dans le calendrier en haut de pile
|
|
* --ranges : supprime les intervales de temps des évenements qui sont dans le cadrier en haut de pile |