# Het handboek van &konsolekalendar;

## Inleiding

&konsolekalendar; is een toepassing om op de commandoregel de &kde;-kalender te kunnen raadplegen. U kunt evenementen bekijken, wijzigen of verwijderen vanaf een commandoregel of via een scripttaal. Tevens is het mogelijk om via &konsolekalendar; een nieuwe kalender te beginnen, een bestaande kalender te exporteren naar verschillende formaten of een andere &kde;-kalender te importeren.

De eenvoudigste toepassing van &konsolekalendar; is om de evenementen in uw standaardkalender 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 kalender creëren

- Kalendergegevens exporteren naar andere bestandsformaten

- Een bestaande &kde;-kalender importeren

&konsolekalendar; heeft geen grafische schil voor de &kde;-kalender. 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 kalenders te raadplegen. Dat is ook nooit de bedoeling geweest van de auteur. Er kunnen alleen eenvoudige opties worden gebruikt om evenementen van de kalender 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 &kde;-kalenders.

### 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 2005-08-18  --end-date 2005-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 &kde;-kalender door de parameter `-add` te gebruiken. Evenementen die succesvol toegevoegd zijn, worden direct getoond in &kde;-kalendertoepassingen, zoals &korganizer;.

In het volgende voorbeeld voegen we een evenement toe op )4 juni 2005, 10:00u. Het eindigt om 12:00u en heeft als titel "Tandarts bezoek".

    % konsolekalendar --add --date 2005-06-04 --time 10:00 \
    --end-time 12:00 --summary "Tandarts bezoek"

In het volgende voorbeeld wordt een verjaardag toegevoegd aan de standaardkalender:

    % konsolekalendar --add --date 2005-06-06 --summary "Mijn verjaardag" \
    --description "Feestje bouwen!"

Op de volgende manier kunt u een week vakantie in een gedeelde kalender invoegen:

    % konsolekalendar --add --file vacation.ics --date 2005-08-01 \
    --end-date 2003-08-07 --summary "Vakantie" --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`. UIDs kunnen gevonden worden door het evenement te bekijken met de `--view` parameter.

Evenementen die succesvol worden verwijderd, worden ook direct verwijderd uit &kde;-kalendertoepassingen 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 `--view` parameter 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;-kalendertoepassingen 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 kalenderbestand creëren

&konsolekalendar; kan gebruikt worden om een nieuw &kde;-kalenderbestand te creëren. Aangezien het niet mogelijk is om een evenement toe te voegen aan een kalender die niet bestaat, moet het bestand eerst aangemaakt worden met de parameters `--create` en `--file`.

Creëer een kalenderbestand met de naam ``/data/share/calendars/vacation.ics``:

    % konsolekalendar --create --file /data/share/calendars/vacation.ics

### Exporteren naar andere formaten

&konsolekalendar; kan &kde;-kalenders 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>
    --------------------------------------------------

Bijvoorbeeld:

    Datum:   Dinsdag 2005-11-01
            08:00 - 09:00
    Titel:
            Directievergadering
    Locatie:
            Vergaderruimte
    Omschrijving:
            Vergadering van complete staf over het project.
    UID:
            &konsolekalendar;-1128954167.1013
    --------------------------------------------------

#### 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">

Bijvoorbeeld:

    --------------------------------------------------
    Dinsdag 2005-11-01
    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 &kspread;, 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:

    JJJJ-MM-DD,UU:MM,JJJJ-MM-DD,UU:MM,Titel,Locatie,Omschrijving,UID

Bijvoorbeeld:

    2005-11-01,08:00,2005-11-01,09:00,Directievergadering,Vergaderruimte,Vergadering van complete staf\
     over het project.,&konsolekalendar;-1128954167.1013

#### &HTML;-opmaak

Het &HTML;-formaat zal een geldig HTML-bestand aanmaken dat geschikt is om op het WWW te publiceren. Dit formaat is niet geschikt voor verdere bewerkingen door andere scripts, maar is erg goed voor het publiceren van kalenders op het internet.

TODO: hier komt een schermafdruk

#### HTMLmonth-formaat

Dit formaat maakt een &HTML;-bestand aan dat alle afspraken in de maanden uit het opgegeven datumbereik toont. Dit formaat is niet geschikt voor verdere bewerkingen door andere scripts, maar is erg goed voor het publiceren van kalenders op het internet.

TODO: hier komt een schermafdruk

### Kalenders importeren

&konsolekalendar; kan een iCal- of vCal-kalender importeren in een &kde;-kalender. Alle evenementen van de kalender die worden geïmporteerd, worden ook toegevoegd aan de kalender. Dit zou kunnen leiden tot twee identieke evenementen op dezelfde datum en tijd. In de volgende uitgave van &konsolekalendar; zal dit waarschijnlijk verholpen worden.

Om een ``andere.ics`` te importeren in de ``huidige.ics``-kalender voert u het volgende commando uit:

    % konsolekalendar --import andere.ics --file huidige.ics

## Commandoregel-parameters

&konsolekalendar; ondersteunt de volgende parameters:

Parameter | Omschrijving
`--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.
`--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 kalenders in een bestand).
`--file` `kalenderbestand` | Specificeert het te gebruiken kalenderbestand. Indien niet opgegeven wordt de standaard &korganizer;-kalender gebruikt.
Hoofdhandelingen:
`--view` | Toont de evenementen in het opgegeven exportformaat.
`--add` | Voegt een evenement toe aan de kalender.
`--change` | Wijzigt een bestaand evenement.
`--delete` | Verwijdert een bestaand evenement.
`--create` | Creëert een nieuw kalenderbestand indien het niet bestaat.
`--import` `importbestand` | Importeert deze kalender in de huidige kalender.
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).
Exportparameters:
`--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

&reporting.bugs; &updating.documentation;

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;

## Installatie

### Verkrijgbaarheid &konsolekalendar;

&install.intro.documentation;

&konsolekalendar; komt samen met &kde;4 en is niet los verkrijgbaar.

### Benodigdheden

&konsolekalendar; vereist de standaard &kde;-bibliotheken. Deze zijn te vinden in het `kdelibs`- en `kdepimlibs`-pakket. Om vanuit de broncode te compileren zijn ook &Qt;, de ontwikkelpakketten van `kdelibs` en `kdepimlibs` nodig.

Een lijst van verbeteringen en aanpassingen is te vinden in het `ChangeLog`-bestand.

### Configuratie

Er is geen speciale configuratie vereist om &konsolekalendar; te gebruiken.

&documentation.index;