# Handbok &karm;

Jonathan
Singer

    &Jonathan.Singer.mail;

Mark
Bucciarelli

    mark@hubcapconsulting.com

Sirtaj
Singh
Kang

    &Sirtaj.Singh.Kang.mail;

Lauri
Watts
Granskare

    &Lauri.Watts.mail;

Stefan
Asserhäll

    stefan.asserhall@comhem.se

Översättare
2000-2004
&Jonathan.Singer;
2004-2005
Mark Bucciarelli
&FDLNotice;
2005-02-02
1.5.0

&karm; håller reda på tiden som används för olika aktiviteter.

KDE
karm
kdeutils
tid
spåra
projekt

## Inledning

&karm; håller reda på tiden som används för olika aktiviteter. Det är användbar för att hålla reda på fakturerad kundtid och kan rapportera timmarna loggade enligt aktivitet och dag.

Denna tidshistorik kan exporteras till en textfil avgränsad med kommatecken, för att importera till andra fakturerings- eller projekthanteringsverktyg.

&karm; detekterar när tangentbordet och musen är inaktiva och kan koppla ihop olika aktiviteter med olika skrivbord, två verktyg som kan hjälpa till att hålla tidtagningen igång för den riktiga aktiviteten.

&karm; är ursprungligen skrivet av &Sirtaj.Singh.Kang;. Ordet karm betyder arbete eller gärning på upphovsmannens modersmål Punjabi, och är samma ord som karma (men en bättre transkribering).

## Att använda &karm;

### Starta &karm;

Skriv `ktimetracker` på kommandoraden eller välj Personlig tidmätare från gruppen Program Verktyg i KDE:s startmeny. De vanliga &Qt;- och &kde;-kommandoväljarna är tillgängliga, och kan listas genom att skriva ``ktimetracker` `--help`` på kommandoraden.

&karm; tillhandahåller ytterligare en kommandoradsväljare som låter dig ange namnet på den ICalendar-fil som används för att lagra din arbetshistorik. Du skriver in en fjärrkalenderfil genom att använda http eller ftp som en del av filnamnet, till exempel http://www.min_plats.se/min_data/mitt_arbete.ics.

### Aktiviteter

Problem: Du är en programvarukonsult med många kunder. Vissa kunder har flera projekt. Under en dag byter du fram och tillbaka mellan olika projekt. Du behöver hålla reda på din tid för att skapa månadsvisa fakturor.

Lösning: Skapa en toppnivåaktivitet för varje kund, och en delaktivitet för varje kundprojekt. För projekt som kräver mer detaljerad uppföljning, skapa en lista med delaktiviteter i projektet. Håll reda på tiden genom att dubbelklicka på aktiviteten som du för närvarande arbetar med.

&karm; tillhandahåller stor flexibilitet för att hålla reda på din tid, och tillåter obegränsat antal aktiviteter och aktivitetsdjup. Tid kan loggas för vilken aktivitet som helst, och mer än en aktivitet kan pågå vid en given tidpunkt.

För att skapa en toppnivåaktivitet, välj &Ctrl;N Aktivitet Ny . För att skapa en delaktivitet, markera överliggande aktivitet och välj &Ctrl;&Alt;N Aktivitet Ny delaktivitet .

När &karm; avslutas, sparas aktivitetslistan i filen som anges av Inställningar Anpassa Karm . När det öppnas nästa gång, laddas aktivitetslistan från samma fil.

&karm; kan importera och exportera uppgifter för att minimera ditt arbetet. Se Andra system.

### Inspelningstider

Problem: För att förbli lönsam, måste du fakturera i medeltal fem timmar per dag. För att hålla dig på spåret, bevakar du dina dagliga och veckovisa totalvärden.

Lösning: Återställ sessionstiden vid början av varje arbetsdag, och återställ alla tider i början av varje vecka.

&karm; gör det enkelt att hålla reda på tid. För att börja logga tid för en aktivitet, dubbelklicka på aktiviteten. För att stoppa logga tid, dubbelklicka på aktiviteten igen. Pågående aktiviteter visar en liten klocka i kolumnen Sessionstid.

En annan synlig indikering att aktiviteter loggas är &karm;s ikon i systembrickan. När en aktivitet pågår, rör sig ikonens sekundvisare. Om du håller musen på ikonen, visas namnet på den pågående aktiviteten med ett verktygstips. Om mer än en aktivitet pågår, skiljs aktivitetsnamnen åt med kommatecken i verktygstipset.

&karm; hanterar två tider för varje aktivitet: en för sessionstiden och en för den totala tiden. Med normalinställningar, visar &karm; två kolumner för varje tid, vilket resulterar i totalt fyra kolumner för varje aktivitet:

Sessionstid

  Tiden som använts för aktiviteten sedan sessionen började.

Total sessionstid

  Tiden som använts för aktiviteten och alla dess delaktiviteter sedan sessionen började.

Tid

  Tiden som använts för aktiviteten sedan all tidtagning återställdes.

Total tid

  Tiden som använts för aktiviteten och alla dess delaktiviteter sedan all tidtagning återställdes.

För att starta en ny session, välj Arkiv Starta nysession

För att återställa alla tider, välj Arkiv Återställ alla tider

#### Skrivbordsföljning

Problem: Du har två huvudprojekt som du byter mellan varje dag. För att hjälpa till att organisera arbetet, har du projektfilerna för det första projektet på det första skrivbordet, och projektfilerna för det andra projektet på det andra skrivbordet.

Lösning: Koppla ihop aktiviteten för det första projektet med det första skrivbordet och aktiviteten för det andra projektet med det andra skrivbordet. När du byter från det andra skrivbordet till det första, stoppar &karm; automatiskt aktiviteten för det andra projektet, och startar aktiviteten för det första projektet.

För att koppla ihop en aktivitet med ett eller flera skrivbord, välj &Ctrl;E Aktivitet Redigera . Aktivera Automatisk följning och välj skrivbordet eller skrivborden som ska kopplas ihop med aktiviteten. När något av de valda skrivborden visas, börjar &karm; automatiskt logga tid för aktiviteten efter en kort fördröjning.

#### Upptäckt inaktivitet

Problem: Du slutar arbetet tidigt på fredag för att göra ett ärende och glömmer att stoppa tidtagningen. När du kommer tillbaka på måndag, pågår tidtagningen fortfarande.

Lösning: Aktivera upptäckt inaktivitet.

&karm; kan ställas in att detektera när musen och tangentbordet är inaktiva. Om musen och tangentbordet är inaktiva längre än angivet antal minuter, visar &karm; följande dialogruta:

Upptäckt inaktivitet i &karm;
&karm;s dialogruta Upptäckt inaktivitet

Återgå och stanna

  Subtrahera storleken på inaktiv tid från alla aktiva tidtagare och stoppa dem.

  Du arbetade inte med uppgifterna medan datorn var inaktiv, och du gör det fortfarande inte.

Återgå och fortsätt

  Subtrahera storleken på inaktiv tid från alla aktiva tidtagare men låt dem fortsätta att köra.

  Du arbetade inte med uppgifterna medan datorn var inaktiv, men du gör det nu.

Återuppta tidtagning

  Lägg till inaktiv tid för alla aktiva tidtagare och låt dem fortsätta att köra.

  Du arbetade med uppgifterna medan datorn var inaktiv, och den är det fortfarande.

### Rapportering

&karm; tillhandahåller tre sätt att rapportera tiden du har loggat. Du kan skicka sessions- och totaltider till skrivaren, kopiera totaltider till klippbordet eller kopiera tidshistoriken till klippbordet.

#### Skriv ut totalvärden

För att skapa totalrapporten för skrivaren, välj &Ctrl;P Arkiv Skriv ut . Det skapar en rapport med tre kolumner för hela aktivitetslistan. Den första kolumnen är aktivitetens namn, den andra är Total sessionstid och den tredje är Total tid.

#### Klipp ut totalvärden

För att skapa en rapport med totalvärden på klippbordet, välj &Ctrl;C Arkiv Kopiera totalvärden till klippbordet .

Rapporten skapas för aktiviteten som för närvarande är markerad, och alla dess delaktiviteter. Om nuvarande aktivitet är en toppnivåaktivitet, frågar &karm; om du vill skapa rapporten för nuvarande aktivitet och dess delaktiviteter eller för hela aktivitetslistan.

&karm; Kopiera denna aktivitet
&karm;s dialogruta Kopiera denna aktivitet

När rapporten väl har skapats, öppna &kedit; eller någon annan texteditor och klistra in rapportens data.

    Totalt aktiviteter
    2004-07-10 02:26

       Tid    Aktivitet
    ----------------------------------------------
      9:14    kde
       9:14    karm
        1:08    felrättning
        0:00    arkivera ändringar
       0:00    promotion
       0:00    webbsaker
    ----------------------------------------------
      9:14 Totalt

Den första kolumnen är Totaltiden och den är indenterad (som aktivitetsnamnen) för att ange förhållandet mellan aktiviteter och delaktiviteter. Tiden som rapporteras innefattar delaktiviteternas tider.

#### Klipp ut historik

För att skapa en rapport med totalvärden på klippbordet, välj &Ctrl;&Alt;C Arkiv Kopiera historik till klippbordet .

Du måste aktivera alternativet Logga historik under Inställningar Anpassa Karm . Annars håller &karm; bara reda på totaltider och inte den detaljerade aktivitetshistoriken.

Rapporten skapas för aktiviteten som för närvarande är markerad, och alla dess delaktiviteter. Du har också valet att skapa den för alla aktiviteter.

När du väljer historikrapport, ber &karm; dig först att skriva in datumintervall för rapporten:

&karm;s skriv in datumintervall
&karm;s skriv in datumintervall

Efter att ha skrivit in ett datumintervall, öppna &kedit; eller någon annan texteditor och klistra in rapportens data.

    Aktivitetshistorik
    Fån torsdagen den 1 juli 2004 till måndagen den 12 juli 2004
    Utskriven den: 2004-07-12 17:18

                                   Vecka under måndagen den 05 juli 2004
         5     6     7     8     9    10    11
    -------------------------------------------------------------------------
                                                 0:00 kde
                                                 0:00  dc
                  !:22  1:46  3:14  1:44         8:06  karm
                                                 0:00   3.2 funktionsplan
                  1:08                           1:08   felrättning
                                                 0:00   arkivera ändringar
                                                 0:00  promotion
                                                 0:00  webbsaker
    -------------------------------------------------------------------------
                  2:30  1:46  3:14  1:44         9:14 Totalt

Aktivitetshistoriken summeras för varje dag och vecka, grupperad per vecka. De första sju kolumnerna är måndag till söndag. Den åttonde kolumnen är totaltiden för veckan och den nionde kolumnen är aktivitetsnamnet. Aktivitetsnamnen är indenterade för att ange förhållandet mellan aktiviteter och delaktiviteter.

### Andra system

#### &korganizer;

&karm;, liksom &korganizer; och Apples iCal, använder industristandardformatet iCalendar för data. &karm; kan läsa och skriva att-göra-listor som skapas av dessa två program.

Om både &karm; och &korganizer; har samma fil öppen, och du redigerar filen med Korganizer, riskerar du att förlora data. För att vara på säkra sidan, redigera bara filen antingen med det ena programmet eller med det andra.

#### Planner

Som ett typiskt användarfall, kan du vilja planera ett projekt med projekthanteringsverktyget Imendio Planner (från planner.imendio.org) och importera dess aktiviteter till &karm;, för att få dem på industristandard-formatet iCalendar. När du har gjort det kan du schemalägga aktiviteterna i &korganizer; och hålla reda på tiden du arbetar med dem i &karm;. Det är ett sätt att kontrollera om projektet håller sig innanför budget- och tidsramarna.

#### &DBus;

&DBus; är mekanismen som &kde;-program använder för att kommunicera med varandra. Ett &kde;-program tillhandahåller en lista med funktioner som andra program (till exempel ett Bash-skript) kan använda.

##### Bash-skript som ekar &karm;s version

    qdbus org.kde.ktimetracker /KTimeTracker version 2
    >/dev/null || echo "ktimetracker kör inte"

&karm;s nuvarande &DBus; gränssnitt används för närvarande i huvudsak för automatiserade tester, så det är mycket begränsat. För den fullständiga definitionen av gränssnittet, se appendix &DBus; gränssnitt.

För att se det fullständiga &DBus; gränssnittet för versionen av &karm; som är installerad på ditt system, kör följande Bash-skript.

##### Visa lista med &karm;s &DBus; gränssnitt på terminalen

    qdbus org.kde.ktimetracker /KTimeTracker 2
    >/dev/null || echo "ktimetracker kör inte"

#### Exportera totalvärden till CSV

&karm; kan både exportera totalvärden och historik till ett filformat avgränsat med kommatecken. För att exportera totalvärden, välj Arkiv Importera och exportera Exportera till CSV-fil... , så visar &karm; följande exportdialogruta:

&karm;s CSV-exportdialogruta
&karm;s CSV-exportdialogruta

Skriv in filen du vill exportera data till, och ändra övriga förvalda värden i dialogrutan om det behövs. Observera att datumintervallet är inaktiverat, eftersom du exporterar totaltider, inte historikdata. Klicka på Exportera, så exporterar &karm; totaltiderna för alla aktiviteter till filen du valde.

Här är ett exempel på utmatningsformatet:

    "kde",,,,,0.00,0.00,6.88,9.83
    ,"karm",,,,6.88,8.70,6.88,9.83
    ,,"3.2 funktionsplan",,,0.00,0.00,0.00,0.00
    ,,"felrättning",,,0.00,1.13,0.00,1.13
    ,,"arkivera ändringar - översättningar",,,0.00,0.00,0.00,0.00
    ,,"tidrapport",,,0.00,0.00,0.00,0.00
    ,"kopete",,,,0.00,0.00,0.00,0.00
    ,"promotion",,,,0.00,0.00,0.00,0.00
    ,"websaker",,,,0.00,0.00,0.00,0.00

Toppnivåaktiviteter skrivs ut i första kolumnen, delaktiviteter i den andra och så vidare. Tidsdata skrivs ut efter maximalt aktivitetsdjup (fem i exemplet). Den första tidskolumnen är Sessionstid, den andra är Tid, den tredje är Total sessionstid och den fjärde är Total tid.

#### Exportera historik till CSV

För att exportera aktivitetshistorik, välj Arkiv Importera och exportera Exportera historik till CSV-fil... , så visar &karm; samma exportdialogruta som visas ovan.

Skriv in filen du vill exportera data till, och välj det datumintervall du vill ha aktivitetshistorik för. Andra övriga förvalda värden i dialogrutan om det behövs. Klicka på Exportera, så exporterar &karm; aktivitetshistoriken för alla aktiviteter till filen du valde.

Här är ett exempel på utmatningsformatet:

    Aktivitetshistorik
    Från tisdagen den 06 juli 2004 till tisdagen den 13 juli 2004
    Utskriven den: 2004-07-13 18:10
    2004-07-06,2004-07-07,2004-07-08,2004-07-09,2004-07-10,2004-07-11,2004-07-12,2004-07-13,
    ,,,,,,,,0.00,"kde"
    ,,1.77,3.23,1.73,,1.37,0.82,8.95,,"karm"
    ,,,,,,,,0.00,,,"3.2 funktionsplan"
    ,1.13,,,,,,,1.13,,,"felrättning"
    ,,,,,,,,0.00,,,"arkivera ändringar - översättningar"
    ,,,,,,,,0.00,,,"tidrapport"
    ,,,,,,,,0.00,,"kopete"
    ,,,,,,,,0.00,,"promotion"
    ,,,,,,,,0.00,,"webbsaker"

De tre raderna anger när rapporten skapades och för vilket datumintervall. Den fjärde raden är en lista med datum i datumintervallet, åtskilda med kommatecken, på ISO 8601-format (ÅÅÅÅ-MM-DD). Alla följande rader listar tiden som loggats för varje aktivitet. Den sista numeriska kolumnen är radens totaltid för alla dagar. Aktivitetsnamnet skrivs ut efter totaltidskolumnen, och är indenterad för att ange förhållandet mellan aktiviteter och delaktiviteter. Namn på toppnivåaktiviteter visas i den första kolumnen efter totaltiderna.

## &karm;s gränssnitt

Huvudfönstret för &karm; har följande delar: menyrad, verktygsrad, aktivitets/tidsfönster och en statusrad.

&karm;s fönster
&karm;s fönster

### Aktivitets/tidsfönstret

De olika aktiviteterna visas i det här fönstret, tillsammans med tiden som har gått åt för var och en i den nuvarande sessionen och totalt. Aktiviteter som tidsmäts har en liten klockikon intill sessionstiden.

Delaktiviteter kan skapas för varje aktivitet. Genom att klicka på plus- och minustecknen framför huvudaktiviteten visas eller döljs motsvarande delaktiviteter. Den totala tiden som gått åt för en aktivitet innehåller tiderna för dess delaktiviteter samt dess egen åtgångna tid.

### Verktygsraden

Verktygsraden innehåller ikoner för följande kommandon:

(Alla beter sig på samma sätt som menykommandot.)

- Start

- Stoppa

- Ny

- Ny delaktivitet

- Ta bort

- Redigera

### Statusraden

Rapporterar den totala förflutna tiden för en session.

## Tack till och licens

&karm;

Program copyright:

- 1997-2000 &Sirtaj.Singh.Kang; &Sirtaj.Singh.Kang.mail;.

- 2001-2002 Tomas Pospisek tpo_deb@sourcepole.ch

- 2003-2004 Mark Bucciarellimark@hubcapconsulting.com

Bidragsgivare

- Allen Winter winter@kde.org

- &David.Faure; &David.Faure.mail;

- &Espen.Sand; espen@kde.org

- Gioele Barabucci gioele@gioelebarabucci.com

- Jan Schaumann jschauma@netmeister.org

- &Jesper.Pedersen; blackie@ifad.dk

- Kalle Dalheimer &Matthias.Kalle.Dalheimer.mail;

- Klarälvdalens Datakonsult AB

- Mark Bucciarelli mark@hubcapconsulting.com

- Thorsten Stärk dev@staerk.de

- Tomas Pospisek tpo_deb@sourcepole.ch

- Willi Richert w.richert@cox.net

&karm; inspirerades av Harald Tveit Alvestrands mycket användbara verktyg som heter titrax, vars enda fel är att det är baserat på Xt-verktygslådan.

Dokumentation copyright 2000-2004 &Jonathan.Singer; &Jonathan.Singer.mail; och &Sirtaj.Singh.Kang; &Sirtaj.Singh.Kang.mail;.

Översättning Stefan Asserhäll stefan.asserhall@comhem.se

&underFDL; &underGPL;
pågående aktivitet

  En aktivitet som har tidtagning igång.

&DBus;

  Protokollet för kommunikation mellan processer som används i &kde;. Kort för Desktop COmmunication Protocol.

skrivbord

  &GNU;/&Linux;, FreeBSD och andra system som kör X-windows har flera skrivbord. Du har typiskt fyra olika skrivbord installerade som standard. Varje skrivbord kan visa sin egen uppsättning med program och filer. När &kde; först startas, är skrivbordet du ser det första. Om du trycker på &Ctrl;F2, visas det andra skrivbordet. Att trycka på &Ctrl;F1 går tillbaka till det första.

historik

  Om &karm; är inställd för att logga historik, lagras varje start och stopp av tidtagning som en händelse. Historiken rensas aldrig när tider återställs, utan förblir i filen till aktiviteten tas bort.

session

  En användardefinierad startpunkt för sessionstider. En ny session börjar när du väljer Arkiv Starta ny session . Sessionsdata sparas inte när du skapar en ny session.

Sessionstid

  Tiden som använts för aktiviteten sedan sessionen började.

systembricka

  Systembrickan finns i raden som (normalt) visas längst ner på skärmen. På den här systembrickan finns &karm;s ikon längst till höger.

toppnivåaktivitet

  En aktivitet utan överliggande aktiviteter.

Total sessionstid

  Tiden som använts för aktiviteten och alla dess delaktiviteter sedan sessionen började.

Tid

  Tiden som använts för aktiviteten sedan all tidtagning återställdes.

Total tid

  Tiden som använts för aktiviteten och alla dess delaktiviteter sedan all tidtagning återställdes.

## Installation

### Hur man skaffar &karm;

&install.intro.documentation; &install.compile.documentation;

## &DBus; gränssnitt

version

### version

Returnerar &karm;s version.

    QString version()

#### Beskrivning

`version()` är ett &DBus; anrop som returnerar &karm;s versionsnummer, till exempel 1.5.0. Versionsnumret returneras som en sträng med det typiska &GNU;-formatet huvudversion.delversion.felrättning.

quit

### quit

Returnerar &karm;s avslutning.

    QString quit()

#### Beskrivning

`quit()` är ett &DBus; anrop som tillhandahåller ett sätt för ett externt program att avsluta &karm; på ett snyggt sätt.

hastodo

### hastodo

Kontrollera om en aktivitet på toppnivå finns.

    QString hastodo(QString aktivitetsnamn)

#### Parametrar

`aktivitetsnamn`

  Namnet på aktiviteten att leta efter.

#### Beskrivning

`hastodo(QString taskname)` är ett &DBus; anrop som letar efter en uppgift med angivet namn. Om den hittas, returneras iCalendar-användarid som identifierar uppgiften. Om den inte hittas, returneras en tom sträng.

Filen som söks igenom är iCalendar-filen som &karm; för närvarande har öppen. Alla uppgiftsträd söks igenom, inte bara uppgifter på översta nivån. Om mer än en uppgift har ett matchande namn, returneras den första som hittas.

addtodo

### addtodo

Lägg till en ny aktivitet.

    QString addtodo(QString aktivitetsnamn)

#### Parametrar

`aktivitetsnamn`

  Namnet på den nya aktiviteten.

#### Beskrivning

`addtodo(QString todoname)` är en &DBus; funktion som lägger till en ny uppgift på översta nivån i nuvarande lagringsobjekt. Den nya uppgiftens användarid returneras.

&documentation.index;