# Het handboek van &konsolekalendar;

## Inleiding

&konsolekalendar; is een interface op de commandoregel naar agenda's. U kunt evenementen bekijken, wijzigen of verwijderen vanaf een commandoregel of via een scripttaal. Tevens is het mogelijk om via &konsolekalendar; een nieuwe agenda te beginnen, een bestaande agenda te exporteren naar verschillende formaten of een andere agenda te importeren.

De eenvoudigste toepassing van &konsolekalendar; is om de evenementen in uw standaardagenda van vandaag (tussen 7:00u en 17:00u) weer te geven.

De hoofdfuncties van &konsolekalendar;:

- Evenementen tussen twee data en tijdstippen bekijken

- Evenementen toevoegen

- Evenementen verwijderen

- Evenementen wijzigen

- Een nieuwe agenda creëren

- Kalendergegevens exporteren naar andere bestandsformaten

- Een bestaande agenda importeren

&konsolekalendar; heeft geen grafische schil voor de &kde;-agenda. Dit heeft &korganizer; bijvoorbeeld wel. &konsolekalendar; is gemaakt voor gebruikers die geen grafische desktop geactiveerd hebben of waarvoor een grafische desktop onhandig zou zijn.

&konsolekalendar; is geen complete set met alle mogelijke commando's om agenda's te raadplegen. Dat is ook nooit de bedoeling geweest van de auteur. Er kunnen alleen eenvoudige opties worden gebruikt om evenementen van de agenda op te roepen, te wijzigen en te verwijderen.

## Mogelijkheden

In dit hoofdstuk vindt u uitleg over de belangrijkste mogelijkheden van &konsolekalendar; en hoe u deze via parameters op de commandoregel kunt gebruiken (bedenk dat &konsolekalendar; geen grafische schil biedt, het kan alleen op de commandoregel gebruikt worden).

U vindt uitleg over het toevoegen, verwijderen en wijzigen van evenementen en hoe u evenementen kunt exporteren naar bepaalde bestandsformaten. Tevens wordt er aandacht besteed aan het importeren en creëren van agenda's.

### Evenementen bekijken

Standaard, of door het opgeven van de parameter `--view` zal &konsolekalendar; de evenementen weergeven die in een bepaalde periode vallen.

Om alle evenementen van vandaag (tussen 7:00u en 17:00u) te zien, voert u het volgende commando uit:

    % konsolekalendar

In het volgende voorbeeld ziet u alle evenementen voor de week van 18 tot 22 augustus:

    % konsolekalendar --view --date 2016-08-18  --end-date 2016-08-22

Om de komende evenementen vanaf het huidige tijdstip te bekijken:

    % konsolekalendar --next

Om de evenementen voor de komende vijf dagen te bekijken:

    % konsolekalendar --show-next 5

### Evenementen toevoegen

&konsolekalendar; kan evenementen toevoegen in een agenda door de parameter `-add` te gebruiken. Evenementen die succesvol toegevoegd zijn, worden direct getoond in &kde;-agendatoepassingen, zoals &korganizer;.

U krijgt een lijst met alle agenda's en hun id's met:

    % konsolekalendar --list-calendars

In het volgende voorbeeld voegen we een evenement toe op 2016-12-01 (1 december 2016) om 10:00 uur. Het eindigt om 12:00 uur en heeft als titel "Tandarts bezoek". Het zal in de agendahulpbron met de id 8 worden ingevoegd:

    % konsolekalendar --add --calendar 8 --date 2016-12-04 --time 10:00 \
    --end-time 12:00 --summary "Tandarts bezoek"

In het volgende voorbeeld wordt een verjaardag toegevoegd aan de agendahulpbron met id 8:

    % konsolekalendar --add --calendar 8 --date 2016-12-06 --summary "Mijn verjaardag" \
    --description "Feestje bouwen!"

Op de volgende manier kunt u een week vakantie in een agenda met id 8 invoegen:

    % konsolekalendar --add --calendar 12 --date 2017-08-01 \
    --end-date 2017-08-07 --summary "Vacantie" --description "Onbereikbaar voor iedereen!"

### Evenementen verwijderen

U kunt evenementen verwijderen met behulp van &konsolekalendar; door de volgende parameter te gebruiken: `--delete`. Evenementen worden verwijderd door de unieke identificatie-code (UID) te gebruiken bij de parameter `--uid`. UID'ss kunnen gevonden worden door het evenement eerst te bekijken met de opties `--view`, `--next` of `--show-next`.

Evenementen die succesvol worden verwijderd, worden ook direct verwijderd uit &kde;-agendatoepassingen zoals &korganizer;.

Wanneer u evenementen verwijdert kan dit niet ongedaan gemaakt worden. Met andere woorden, weg is weg, voorgoed.

Voorbeeld van het verwijderen van een evenement met het UID `&konsolekalendar;-1887551750.196`:

    % konsolekalendar --delete --uid &konsolekalendar;-1887551750.196

### Evenementen wijzigen

In &konsolekalendar; kunnen evenementen gewijzigd worden door gebruik te maken van de parameter `--change`. Het wijzigen van evenementen gaat aan de hand van de unieke identificatie-code (UID), die wordt opgegeven bij de parameter `--uid`. UIDs kunnen worden gevonden door het evenement met de opties `--view`, `--next` of `--show-next` te bekijken.

Wijzigen werkt op dezelfde manierals toevoegen: u kunt de start- en eindtijd wijzigen, de start- en einddatum, de titel, de samenvatting, de locatie en de beschrijving. Gewijzigde evenementen worden direct zichtbaar in &kde;-agendatoepassingen zoals &korganizer;.

Voorbeeld: het wijzigen van de titel en beschrijving van een evenement met UID `&konsolekalendar;-1887551750.196`:

`%```konsolekalendar` `--change` `--uid `&konsolekalendar;-1887551750.196`` `--summary `"Mijn hoofd laten nakijken"`` `--description `"Niet meer naar die dokter toe!"```

### Een nieuw agendabestand creëren

&konsolekalendar; kan gebruikt worden om nieuwe agenda's uit bestaande bestanden te maken. U kunt de agenda aanmaken met de optie `--create` met de bestandsnaam als argument. Het bestand moet een geldig iCal of vCal bestand zijn.

Opmerking: U kunt de optie `--dry-run` niet gebruiken om te testen of de hulpbron kan worden aangemaakt.

Opmerking: &konsolekalendar; heeft het bestand nodig om te werken, verwijder het bestand dus nooit handmatig.

Technische opmerking: &konsolekalendar; maakt met dit commando een nieuwe Akonadi-hulpbron aan die naar dit bestand wijst. Het voorkomt niet om meerdere hulpbronnen aan te maken die allen naar hetzelfde bestand wijzen.

Maak een agendabestand aan met de naam ``/data/share/calendars/vacation.ics``:

    % konsolekalendar --create --file vacation.ics

De hulpbron zal de naam vacation krijgen met `--list-calendars`

Het is niet mogelijk om een Akonadi-hulpbron te verwijderen met &konsolekalendar;, u moet &korganizer; gebruiken of akonadiconsole.

### Exporteren naar andere formaten

&konsolekalendar; kan agenda's exporteren naar andere populaire formaten. Exporteren is eigenlijk een aparte manier van bekijken. Standaard worden evenementen bekeken in het &konsolekalendar; tekst-formaat. Om het formaat te wijzigen, wordt de parameter `--export-type` gebruikt.

Om een lijst met de verschillende exportformaten te zien, gebruikt u de parameter `--export-list`:

    % konsolekalendar --export-list

### Exportformaten

Enkele formaten, maar niet allemaal, worden in het volgende gedeelte beschreven.

#### &konsolekalendar; Tekst-formaat

Het &konsolekalendar; tekst-formaat is het standaardformaat dat door &konsolekalendar; gebruikt wordt. Het is ontwikkeld om op een prettige manier de evenementen te kunnen bekijken en om andere scripts de mogelijkheid te geven de gegevens te verwerken.

Het &konsolekalendar;-tekstformaat ziet er als volgt uit:

    Date:\t<Datum evenement>(dddd jjjj-MM-dd)
    [\t<Starttijd evenement>(uu:mm) - <Eindtijd evenement>(uu:mm)]
    Titel:
    \t<Titel van evenement | "(geen titel beschikbaar)">
    Locatie:
    \t<Locatie van evenement | "(geen locatie beschikbaar)">
    Omschrijving:
    \t<Omschrijving van evenement | "(geen omschrijving beschikbaar)">
    UID:
    \t<UID van het evenement>
    --------------------------------------------------

Uitvoer van ``konsolekalendar` `--next` `--export-type` `Text``:

    Datum:   dinsdag 2016-11-29
            08:00 - 09:00
    Titel:
            Directievergadering
    Locatie:
            Vergaderruimte
    Omschrijving:
            Vergadering van complete staf over het project.
    UID:
            &konsolekalendar;-1924621834.134
    --------------------------------------------------

#### Verkort &konsolekalendar;-tekstformaat

Het verkorte tekstformaat is een compacte, minder uitgebreide versie van het gebruikelijke &konsolekalendar;-tekstformaat.

Het verkorte &konsolekalendar;-tekstformaat ziet er als volgt uit:

    [--------------------------------------------------]
    {<Datum evenement>(dddd jjjj-MM-dd)]
    [<Starttijd evenement>(uu:mm) - <Eindtijd evenement>(uu:mm) | "\t"]
    \t<Titel evenement | \t>[, <Locatie evenement>]
    \t\t<Omschrijving evenement | "\t">

Uitvoer van ``konsolekalendar` `--next` `--export-type` `Short``:

    --------------------------------------------------
    Dinsdag 2016-11-29
    08:00 - 09:00   Directievergadering, Vergaderruimte
                    vergadering van complete staf over het project.

#### Door komma's gescheiden (CSV) formaat

In het door komma's gescheiden formaat staan de velden in dezelfde volgorde als het &konsolekalendar;-tekstformaat. Het enige verschil is dat alle gegevens op één regel staan en gescheiden worden door een komma. Indien de gegevens in een bestand worden opgeslagen, kunnen deze zonder veel problemen in een spreadsheet worden geïmporteerd. Voorbeelden hiervan zijn &calligrasheets;, OpenOffice.org Calc en &Microsoft; Excel. Ook is dit formaat uitermate geschikt voor verdere verwerking door andere scripts en toepassingen.

Het door komma's gescheiden formaat ziet er als volgt uit:

    "Weekdag, Maand dag, Jaar","HH:MM","Weekdag, Maand dag, Jaar","HH:MM","Samenvatting","Locatie","Beschrijving","UID"

Uitvoer van ``konsolekalendar` `--next` `--export-type` `CSV``:

    "Tuesday, November 29, 2016","08:00","Tuesday, November 29, 2016","09:00","Staff Meeting","Conference Room","Meet in the big conference \
    room with the entire staff.","&konsolekalendar;-1924621834.134"

### Kalenders importeren

&konsolekalendar; kan een iCal- of vCal-agenda importeren in een agenda. Alle evenementen van de agenda die worden geïmporteerd, worden ook toegevoegd aan de agenda met overslaan van identieke evenementen die al in de agenda zitten.

Om een agendabestand `vacation.ics` te importeren in de agenda met de id `8` voer uit:

    % konsolekalendar --import vacation.ics --calendar 8

## Commandoregel-parameters

&konsolekalendar; ondersteunt de volgende parameters:

Parameter | Beschrijving
Algemene opties:
`--help, --help-all` | Toont informatie over de mogelijke parameters.
`--author` | Toont gegevens over de auteur van dit programma.
`-v, --version` | Toont het versienummer van dit programma.
`--license` | Toont de licentie van dit programma.
Opties:
`--verbose` | Geeft meer informatie tijdens het uitvoeren van commando's.
`--dry-run` | Drukt af wat er gedaan zou gaan worden zonder deze parameter. Nu veranderen er geen bestanden, er wordt niets toegevoegd, gewijzigd of verwijderd. Ook worden geen nieuwe bestanden aangemaakt.
`--allow-gui` | Staat bronnen toe die mogelijk een interactief gebruikersinterface nodig hebben. In het normale werken worden alleen bronnen gebruikt die geen gebruikersinterface nodig hebben (zoals agenda's in een bestand).
Itemtype (deze opties kunnen gecombineerd worden):
`--event` | Alleen op evenementen uitvoeren (standaard)
`--todo` | Alleen op Taken uitvoeren. (Niet geïmplementeerd)
`--journal` | Alleen op journaals uitvoeren. (Niet geïmplementeerd)
Hoofdhandelingen:
`--view` | Toont de evenementen in het opgegeven exportformaat.
`--add` | Voegt een evenement toe aan de agenda.
`--change` | Wijzigt een bestaand evenement.
`--delete` | Verwijdert een bestaand evenement.
`--create` `bestandsnaam` | Een nieuwe agenda uit een bestaand bestand aanmaken.
`--import` `importbestand` | Importeert deze agenda in de huidige agenda.
`--list-calendars` | Maak lijst van beschikbare agenda's.
Handeling aanpassen:
`--all` | Toont alle evenementen.
`--next` | Toont het volgende evenement.
`--show-next` `dagen` | Toont de evenementen binnen het opgegeven aantal dagen.
`--uid` `UID` | Toont, verwijdert of wijzigt de evenementen met deze unieke identificatiecode.
`--date` `datum` | Start vanaf deze dag [JJJJ-MM-DD]. Standaard is dit vandaag
`--time` `tijd` | Start vanaf dit tijdstip [UU:MM]. Standaard is dit 07:00u. Om een evenement toe te voegen of te wijzigen zonder dat deze een vaste tijd heeft, gebruikt u `--time float` of `--end-time float`.
`--end-date` `einddatum` | Eindig op deze dag [JJJJ-MM-DD]. Standaard is hetgeen opgegeven is bij `--date`.
`--end-time` `eindtijd` | Eindig op dit tijdstip [UU:MM]. Standaard is dit 17:00u. Om een evenement toe te voegen of te wijzigen zonder dat deze een vaste tijd heeft, gebruikt u `--time float` of `--end-time float`.
`--epoch-start` `epoch-tijd` | Start op dit tijdstip. De waarde is het aantal seconden sinds epoch.
`--epoch-end` `epoch-tijd` | Eindig op dit tijdstip. De waarde is het aantal seconden sinds epoch.
`--summary` `titel` | Geeft een titel aan het evenement (werkt bij toevoegen en wijzigen).
`--description` `omschrijving` | Geeft een omschrijving aan het evenement (werkt bij toevoegen en wijzigen).
`--location` `locatie` | Geeft een locatie aan het evenement (werkt bij toevoegen en wijzigen).
`--calendar` `id` | Specificeert een te gebruiken agenda. Indien niet opgegeven wordt de standaard &korganizer;-agenda gebruikt.
Exportopties:
`--export-type` `export-type` | Exportformaat. Het standaard formaat is Tekst
`--export-file` `exportbestand` | Exporteert naar een bestand. Standaard wordt naar het beeldscherm geëxporteerd.
`--export-list` | Toont een lijst met exportformaten.

## Vragen en antwoorden

Welk configuratiebestand wordt door &konsolekalendar; gebruikt?

Geen.

Wat zijn de applicatienamen van &konsolekalendar;?

&konsolekalendar;'s applicatienaam is konsolekalendar.

Welk datumformaat wordt er gebruikt?

&konsolekalendar; weigert alle data op de commandoregel die niet voldoen aan de ISO 8601 standaard. Dit formaat is: JJJJ-MM-DD. JJJJ staat voor het jaartal in vier cijfers (zoals 2003). MM staat voor de maand in twee cijfers (01,02,..,12) en DD staat voor de dag (01,02,..,31).

&konsolekalendar; gebruikt bij het exporteren altijd het ISO 8601-formaat.

Welk formaat wordt er voor de tijd gebruikt?

&konsolekalendar; weigert alle tijden op de commandoregel die niet voldoen aan de ISO 8601 standaard. Dit formaat is: HH:MM:SS. HH staat voor de uren in twee cijfers (00,01,..,24). MM staat voor de minuten in twee cijfers (01,02,..,60) en SS staat voor de seconden (01,02,..,60).

&konsolekalendar; gebruikt bij het exporteren altijd het ISO 8601-formaat.

Zal &konsolekalendar; een nieuw evenement aanmaken dat identiek is aan een reeds bestaand evenement?

Nee, zie volgende vraag.

Hoe bepaalt &konsolekalendar; of een evenement identiek is aan een reeds bestaand evenement?

&konsolekalendar; kijkt naar de opgegeven start- en eindtijd, start- en einddatum, titel en omschrijving. Een evenement is identiek als alle waarden hetzelfde zijn.

Kan een evenement zonder vast tijdstip veranderd worden in een evenement met een vast tijdstip?

Ja. Door gebruik te maken van de `--time float` en de `--change` parameters.

Waarom worden UIDs getoond bij de meeste exportformaten?

Omdat u de UID moet opgeven als u een evenement wilt wijzigen of verwijderen. Indien u de UID van evenementen niet wilt zien, kunt u gebruik maken van het verkorte exportformaat (`--export-type short`).

Hoe kan ik mijn vraag toevoegen aan deze FAQ?

Stuur uw vragen naar winter@kde.org.

## Dankbetuigingen en licentie

&konsolekalendar; programma copyright 2002,2007:

- Tuukka Pasanen illuusio@mailcity.com

- Allen Winter winter@kde.org

Documentatie copyright 2003:

- Allen Winter winter@kde.org

- Tuukka Pasanen illuusio@mailcity.com

&vertaling.tom;&vertaling.sander;&nagelezen.natalie; &underFDL; &underGPL;
&documentation.index;