# Handbok &konsolekalendar;

## Inledning

&konsolekalendar; är ett kommandoradgränssnitt för &kde;:s kalendrar. Det låter dig visa, infoga, ta bort eller ändra kalenderhändelser via kommandoraden eller från ett skriptspråk. Dessutom kan &konsolekalendar; skapa en ny &kde;-kalender, exportera en &kde;-kalender till ett antal andra format, och importera en annan &kde;-kalender.

I sitt grundläggande läge visar &konsolekalendar; händelselistan i standardkalendern för aktuellt datum (från 7:00 till 17:00).

Huvudfunktioner i &konsolekalendar;:

- Visa kalenderposter från ett startdatum och -tid till ett slutdatum och -tid

- Infoga (lägga till) kalenderposter

- Ta bort (avlägsna) kalenderposter

- Modifiera (ändra) kalenderposter

- Skapa en ny kalender

- Exportera kalenderposter till andra filformat

- Importera en befintlig &kde;-kalender

&konsolekalendar; är inte ett annat grafiskt gränssnitt till en &kde;-kalender (dvs. &korganizer;) &konsolekalendar; är bara avsett för användning där ett grafiskt användargränssnitt inte är praktiskt eller möjligt.

&konsolekalendar; tillhandahåller inte ett fullständigt språk för att göra förfrågningar om användarens kalender, det är heller inte upphovsmännens avsikt att någonsin lägga till en sådan möjlighet. Enkla kommandoradsväljare tillhandahålls för att komma åt kalenderhändelser i ett datum- och tidsintervall.

## Funktioner

I det här kapitlet lär du dig om huvudfunktionerna i &konsolekalendar;, och hur du kan styra dem med kommandoradsväljare (kom ihåg att &konsolekalendar; inte har ett grafiskt användargränssnitt, utan bara är ett kommadoradsprogram).

Du lär dig om att infoga, ta bort och ändra kalenderhändelser, och hur händelser kan exporteras till andra filformat. Att skapa och importera &kde;-kalendrar täcks också i det här kapitlet.

### Visa händelser

I normalläge, eller genom att använda väljaren `--view`, listar &konsolekalendar; händelser i ett angivet datum- och tidsintervall.

För att visa alla dagens händelser (från 7:00 till 17:00), kör helt enkelt:

    % konsolekalendar

I nästa exempel, visar vi alla händelser för veckan från 18 till 22 augusti:

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

### Infoga händelser

&konsolekalendar; kan infoga händelser i en &kde;-kalender eller kalenderresurs med kommandoradsväljaren `--add`.

I följande exempel infogas en händelse som börjar 2003-06-04 (4:e juni, 2003) klockan 10:00 och slutar klockan 12:00 med sammanfattningen "Läkarbesök" i användarens standardkalenderresurs:

    % konsolekalendar --add --date 2003-06-04 --time 10:00 \
    --end-time 12:00 --summary "Läkarbesök"

I det här exemplet läggs en födelsedag till i användarens standardkalenderresurs:

    % konsolekalendar --add --date 2003-06-06 --summary "Min födelsedag" \
    --description "Tid för fest"

Nuvarande version av &konsolekalendar; stöder inte att infoga fria händelser (fria händelser är de som inte upptar någon plats under dagen, dvs. tiden är inte markerad som upptagen). Födelsedagar, årsdagar, etc. ska idealt infogas som fria händelser. Vi hoppas att det ska finnas en funktion för fria händelser i nästa version av &konsolekalendar;.

Här infogas en veckas semester i en delad `semester`-kalender:

    % konsolekalendar --add --file semester.ics --date 2003-08-01 \
    --end-date 2003-08-20 --summary "Semester" --description "Ingen kan någonsin hitta mig!"

### Ta bort poster

&konsolekalendar; stöder att ta bort poster i en kalenderfil eller resurs med kommandoradsväljaren `--delete`. Kalenderposter som ska tas bort specificeras exakt med en unik identifieringssträng (UID) med väljaren `--uid`. Unika identifierare hittas genom att först titta på händelsen med väljaren `--view`.

När du tar bort något från kalendern kan du inte ångra det! Med andra ord, när du tar bort en post kan du inte få tillbaka den borttagna posten. Den är borta för alltid.

Här tar vi bort en kalenderpost med UID `&konsolekalendar;-1887551750.196`:

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

### Ändra händelser

&konsolekalendar; stöder att ändra befintliga poster i en kalenderfil eller resurs med kommandoradsväljaren `--change`. Kalenderposter som ska ändras specificeras exakt med en unik identifieringssträng (UID) med väljaren `--uid`. Unika identifierare hittas genom att först titta på händelsen med väljaren `--view`.

Att ändra beter sig på samma sätt som att infoga: Du kan ändra startdatum och -tid, slutdatum och -tid, beskrivning och sammanfattning för en händelse.

Exempel: Här ändrar vi sammanfattningen och beskrivningen för en kalenderpost med UID `&konsolekalendar;-1887551750.196`:

`%```konsolekalendar` `--change` `--uid `&konsolekalendar;-1887551750.196`` `--summary `"Få huvudet undersökt"`` `--description `"Gå inte till den läkaren igen!"```

### Skapa en ny kalenderfil

&konsolekalendar; kan användas för att skapa en ny &kde;-kalenderfil. Eftersom du inte kan infoga en post i en kalender som inte finns, måste du först skapa filen med kommandoradsväljarna `--create` och `--file`.

Skapa en kalenderfil som heter ``/data/share/calendars/semester.ics``.

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

### Export till andra format

&konsolekalendar; kan exportera en &kde;-kalender till andra välkända format. Att exportera är ett särskilt sätt att visa. Normalt visas händelser med &konsolekalendar; textformat. För att ändra visningsformat använd kommandoradsväljaren `--export-type`.

För att se en lista med alla exportformat som stöds, använd alternativet `--export-list`, som följer:

    % konsolekalendar --export-list

### Exportformat

Några, men inte nödvändigtvis alla, format som stöds beskrivs i det här avsnittet.

#### &konsolekalendar; textformat

&konsolekalendar;-textformat är &konsolekalendar;s eget format och det är konstruerat för att vara bekvämt att läsa och kunna tolkas av efterföljande skript.

&konsolekalendar; textformat är:

    Datum- och tidsinformation:
    1:a raden Date:        ÅÅÅÅ-MM-DD
    2:a raden                 TT:MM
    Sammanfattning:
    3:e raden Summary:
    4:e raden                 Sammanfattningstext.
    Beskrivning:
    5:e raden Description:
    6:e raden                Beskrivningstext
    UID:
    7:e raden UID:
    8:e raden                 UID.

    Date:   2003-11-01
            8:00 - 9:00
    Summary:
            Personalmöte
    Description:
            Träffa hela personalen i det stora konferensrummet.
    UID:
            &konsolekalendar;-1128954167.1013

#### Format med värden åtskilda av kommatecken (CSV)

Formatet med värden åtskilda av kommatecken visar händelsevärden i samma ordning som &konsolekalendar;s textformat. Den enda skillnaden är att informationen finns på samma rad med varje fält åtskilt av ett kommatecken. De skapade exportfilerna kan direkt importeras i kalkylark som &kspread;, OpenOffice.org Calc och &Microsoft; Excel. Dessutom är CSV-formatet lätt att tolka med efterföljande skript.

Formatet med värden åtskilda av kommatecken (CSV) är:

    ÅÅÅÅ-MM-DD,HH:MM,ÅÅÅÅ-MM-DD,TT:MM,sammanfattning, beskrivning,UID

    2003-11-01,08:00,2003-11-01,09:00,Personalmöte,Träffa hela personalen\
    i det stora konferensrummet.,&konsolekalendar;-1128954167.1013

#### HTML-format

Exportformatet HTML skapar en giltig HTML-fil som kan publiceras på WWW. Exportformatet är inte lämpligt för efterföljande tolkning av ett skript, men är mycket trevligt för att publicera kalendrar så att de enkelt kan beskådas.

Här ska en skärmbild visas

### Importera kalendrar

&konsolekalendar; kan importera en ICS-kalenderfil till en &kde;-kalender. Alla händelser från kalendern som importeras infogas, inklusive identiska händelser. I nästa utgåva av &konsolekalendar; kommer inte identiska händelser att infogas.

För att importera kalenderfilen ``annan.ics`` i kalendern ``aktuell.ics``, kör:

    % konsolekalendar --import annan.ics --file aktuell.ics

## Kommandoradsväljare

&konsolekalendar; stöder följande väljare:

Alternativ | Beskrivning
`--help, --help-all` | Visar hjälp om programmets väljare.
`--author` | Visar information om programmets upphovsmän.
`-v, --version` | Visar programmets versionsinformation.
`--license` | Visar programmets licensinformation.
`--verbose` | Skriver ut hjälpsamma meddelanden under körning.
`--dryrun` | Skriv ut vad som skulle ha gjorts, men utför det inte. Ändrar inga filer: infogar, tar bort eller ändrar inga befintliga filer, eller skapar några nya filer.
`--file` `kalenderfil` | Ange en kalenderfil att använda. Om den inte anges, används &korganizer;s standardresurs.
Huvudkommandolägen:
`--view` | Skriv ut kalenderhändelser i angivet exportformat.
`--add` | Infoga en händelse i kalendern.
`--change` | Ändra en befintlig händelse i kalendern.
`--delete` | Ta bort en befintlig händelse i kalendern.
`--create` | Skapa en ny kalenderfil om den inte finns.
`--import` `importfil` | Importera kalendern i huvudkalendern.
Väljare för kommandolägen:
`--all` | Visa alla kalenderposter.
`--uid` `UID` | Visa, ta bort eller ändra händelsen med den här unika identifieringssträngen.
`--date` `datum` | Börja med dagen [ÅÅÅÅ-MM-DD]. Standardvärde är dagens datum.
`--time` | Börja med tiden [TT:MM]. Standardvärde är 07:00.
`--end-date` `slutdatum` | Sluta med dagen [ÅÅÅÅ-MM-DD]. Standardvärde anges av `--date`.
`--end-time` `sluttid` | Sluta med tiden [TT:MM]. Standardvärde är 17:00.
`--epoch-start` `epok` | Börja vid tiden [sekunder efter epoken].
`--epoch-end` `epok` | Sluta vid tiden [sekunder efter epoken].
`--summary` `sammanfattning` | Lägg till sammanfattning till händelse (fungerar vid tillägg och ändring).
`--description` `beskrivning` | Lägg till beskrivning till händelse (fungerar vid tillägg och ändring).
Exportalternativ:
`--export-type` `exporttyp` | Exportera filtypen. Standardfiltyp för export är text.
`--export-file` `exportfil` | Exportera till fil. Normalt skrivs utdata till standardutmatningen.
`--export-list` | Skriv ut lista med exporttyper som stöds och avsluta.

## Vanliga frågor

&reporting.bugs; &updating.documentation;

Vilka inställningsfiler använder &konsolekalendar;?

Inga.

Vad är programnamnet för &konsolekalendar;?

&konsolekalendar;s programnamn är konsolekalendar.

Vad är formatet för att ange datum?

&konsolekalendar; förkastar datum som anges på kommandoraden om de inte anges enligt standarden ISO 8601, det vill säga ÅÅÅÅ-MM-DD, där ÅÅÅÅ representerar år med fyra siffror (som 2003), MM representerar månader med två siffror (01, 02, ... 12), och DD representerar dagar med två siffror (01, 02, ... 31).

&konsolekalendar; exporterar alltid datum enligt formatet ISO 8601.

Vad är formatet för att ange tid?

&konsolekalendar; förkastar tider som anges på kommandoraden om de inte anges enligt standarden ISO 8601, det vill säga TT:MM:SS, där TT representerar timmar med två siffror (01, 02, ... 24), MM representerar minuter med två siffror (01, 02, ... 60), och SS representerar sekunder med två siffror (01, 02, ... 60).

&konsolekalendar; exporterar alltid tider enligt formatet ISO 8601.

Kommer &konsolekalendar; att infoga en ny händelse i kalendern som är identisk med en som redan finns?

Nej. Se nästa fråga.

Hur avgör &konsolekalendar; att en händelse är identisk till en som redan finns i kalendern?

&konsolekalendar; kontrollerar angivet startdatum och -tid, slutdatum och -tid, och sammanfattningen mot alla händelser i kalendern. En träff sker om alla tre värden passar ihop med en befintlig händelse.

Hur kan jag få en fråga tillagd bland de här vanliga frågorna?

Skicka dina frågor till illuusio@lycos.com.

## Tack till och licens

&konsolekalendar; program copyright 2002,2003:

- Tuukka Pasanen illuusio@mailcity.com

- Allen Winter awinterz@users.sourceforge.net

Dokumentation copyright 2003:

- Allen Winter awinterz@users.sourceforge.net

- Tuukka Pasanen illuusio@mailcity.com

Stefan Asserhällstefan.asserhall@comhem.se

&underFDL; &underGPL;

## Installation

### Hur man skaffar &konsolekalendar;

&install.intro.documentation;

&konsolekalendar; levereras tillsammans med &kde; 3, och är inte separat tillgängligt.

### Krav

&konsolekalendar; kräver att &kde;:s standardbibliotek är installerade (paketet `kdelibs`). För att kompilera från källkod, behöver du också &Qt; och `kdelibs` utvecklingspaket.

Du hittar en lista över ändringar i filen `ChangeLog`.

### Kompilering och installation

Det här avsnittet ger en snabb översikt av byggprocessen. Läs gärna Kompilera &kde; 3.2.x för fullständiga instruktioner.

Om du inte kan skaffa ett lämpligt förkompilerat binärpaket, måste du kompilera &konsolekalendar; själv från källkod. Hämta källkodspaketfilen `kdepim-x.x.tar.bz2`. Packa upp den i en ny katalog med ett kommando som liknar ``tar` `xvfj `paket.tar.bz2```, och gå till katalogen som har skapats.

&install.compile.documentation;

Om du har mer än en version av &kde; installerad (t.ex. &kde; 2 och &kde; 3), kan &konsolekalendar; möjligen installeras i fel &kde;-katalog. Om det behövs, kan du ange &kde;-katalogen som en väljare till ``./configure``. Till exempel, om &kde; är installerad i `/opt/kde3`:

``./configure` --prefix=`/opt/kde3``

### Anpassning

Inga särskilda inställningar krävs för att få &konsolekalendar; att köra med &kde;:s skrivbordsmiljö.

&documentation.index;