# El manual de &karm;

## Introducción

&karm; registra el tiempo empleado en varias tareas. Es útil para registrar horas para que sean facturadas y para informar de las horar que se pasa registrado por tarea y día.

El historial de tiempos se puede exportar como un archivo de texto separado por comas para importar en otras herramientas de facturación y/o de gestión de proyectos.

&karm; detecta si el teclado y el ratón están inactivos y puede asociar diferentes tareas con diferentes escritorios, dos herramientas que pueden ayudarle a conseguir la temporización adecuada en la tarea correcta.

&karm; fue escrito originalmente por Sirtaj Singh Kang. La palabra karm significa trabajo o hazañas en el Punjabi natal del autor y es la misma palabra (pero con una mejor traducción literal) que karma.

## Usar &karm;

### Iniciar &karm;

Teclee `karm` en un prompt de comandos o seleccione Seguimiento de tiempo personal en el grupo Utilidades del menú de inicio de KDE. Están disponibles las opciones de comando estándar de &Qt; y &kde;, y se puede obtener un listado de las mismas indicando en la línea de órdenes ``karm` `--help``.

&karm; proporciona una opción adicional en la orden que le permite indicar el nombre del archivo de iCalendar que se usa para almacenar el histórico de su trabajo. Para indicar un archivo remoto de iCalendar puede usar http o ftp como parte del nombre del archivo. Por ejemplo, http://www.mysite.com/mydata/mylabor.ics.

### Tareas

Problema: Es un consultor de software libre con muchos clientes. Algunos clientes tienen varios proyectos. A lo largo del día, puede estar con varios proyectos. Tiene que seguirle la pista al tiempo empleado para generar los recibos mensuales.

Solución: Cree una tarea de nivel superior para cada cliente y una subtarea para cada proyecto de cada cliente. Para los proyectos en los que precise un seguimiento más detallado, cree una lista de subtareas para el proyecto. Haga el seguimiento mediante un doble clic en la tareas en la que va a trabajar.

&karm; le da una gran flexibilidad para hacer el seguimiento de su tiempo, permitiendo tareas y profundidad de tareas ilimitadas. El tiempo se puede registrar en cualquier tarea, y puede haber más de una tarea activa en cualquier momento.

Para crear una tarea de nivel superior, seleccione &Ctrl;N Tarea Nueva Para crear una subtarea, elija la tarea padre y seleccione &Ctrl;&Alt;N Tarea Nueva subtarea

Cuando salga de &karm;, la lista de tareas se guardará en el archivo especificado en Preferenciass Configurar KArm . La próxima vez que lo abra, recargará la lista de tareas desde el mismo archivo.

&karm; puede importar y exportar tareas para minimizar su trabajo. Vea Otros sistemas.

### Temporizadores

Problema: Para ser solvente, debe emitir una factura de una media de cinco horas al día. Para seguirle la pista, puede ver los totales diarios y semanales.

Solución: Reinicia el temporizador de la sesión al comienzo de cada día de trabajo y reinicia todos los temporizadores al comienzo de cada semana.

&karm; hace más sencillo el seguimiento del tiempo. Para comenzar a registrar el tiempo de una tarea, haga doble clic sobre la tarea. Para detener el registro del tiempo, vuelva a hacer doble clic sobre la tarea. Las tareas activas muestran un pequeño reloj en la columna Tiempo de sesión.

Otra pista visual de la actividad de registro de &karm; en el icono de la bandeja del sistema. Cuando esté activa una tarea, se moverá la mano del icono. Si hace descansar el puntero del ratón sobre el icono, el nombre de la tarea activa se mostrará en un consejo. Si hay más de una tarea activa, los nombres en el consejo estarán separados por comas.

&karm; mantiene dos temporizadores para cada tarea: uno para el tiempo de la sesión y otro para el tiempo total. En la configuración predefinida, &karm; muestra dos columnas por cada temporizador, dando como resultado un total de cuatro columnas para cada tarea:

Tiempo de sesión

- El tiempo empleado en la tarea desde que comenzó la sesión.

Tiempo total de la sesión

- El tiempo empleado en la tarea y en todas las subtareas desde que comenzó la sesión.

Tiempo

- El tiempo empleado en la tarea desde que se reiniciaron todos los tiempos.

Tiempo total

- El tiempo empleado en la tarea y todas sus subtareas desde que se reiniciaron todos los tiempos.

Para iniciar una nueva sesión, seleccione Archivo Iniciar nueva sesión

Para reinciar todos los tiempos, seleccione Archivo Reiniciar todos los tiempos

#### Seguimiento de escritorio

Problema: Tiene dos proyectos principales entre los que va alternando a lo largo del día. Para ayudarle a organizar el trabajo, puede mantener los archivos del proyecto 1 en el escritorio 1 y los del proyecto 2 en el escritorio 2.

Solución: Asocie las tareas del proyecto 1 con el escritorio 1 y las tareas del proyecto 2 con el escritorio 2. Cuando pase al escritorio 2 al escritorio 1, &karm; detendrá automáticamente la tarea del proyecto 2 y comenzará la tarea del proyecto 1.

Para asociar una tarea con uno o más escritorios, seleccione &Ctrl;E Tarea Editar . Active Seguimiento automático y seleccione el escritorio o escritorios que va a asociar con esta tarea. Cuando se active alguno de los escritorios seleccionados, &karm; comenzará a registrar automáticamente el tiempo de esa tarea tras un breve retraso.

#### Detección de inactividad

Problema: Ha dejado el trabajo el viernes por la mañana para hacer un mandado y olvidó detener el temporizador. Cuando vuelve el lunes, el temporizador sigue funcionando.

Solución: Active la detección de inactividad.

Puede configurar &karm; para que detecte cuando están inactivos el ratón y el teclado. Si durante un tiempo (los minutos especificados) no se ha producido ninguna acción en el teclado ni en el ratón, &karm; mostrará el siguiente cuadro de diálogo:

Detección de inactividad de &karm; Cuadro de diálogo de detección de inactividad de &karm;

Revertir y detener

- Resta la cantidad de tiempo de inactividad de todos los temporizadores activos y los detiene.

  No estuvo trabajando en las tareas mientras el computador estuvo inactivo y no lo va a hacer ahora.

Revertir y continuar

- Resta la cantidad de tiempo de inactividad de todos los temporizadores activos, pero los mantiene corriendo.

  No estuvo trabajando en las tareas mientras el computador estuvo inactivo, pero va a hacerlo ahora.

Continuar la temporización

- Aplica el tiempo de inactividad a todos los temporizadores activos y los mantiene funcionando.

  Estuvo trabajando en las tareas mientras el computador estuvo inactivo y ahora va a seguir.

### Informes

&karm; proporcione tres formas de realizar informes sobre el tiempo que ha estado registrado. Puede enviar los tiempos de sesión y los totales a la impresora, copiar los tiempos totales al portapapeles o copiar el histórico de tiempos al portapapeles.

#### Imprimir los totales

Para generar el informe de los totales por impresora, seleccione &Ctrl;P Archivo Imprimir . Se genera un informe con tres columnas para la lista de tareas al completo. La primera columna es el nombre de la tareas, la segunda en el Tiempo total de sesión y la tercera es el Tiempo total.

#### Totales al portapapeles

Para generar el informe de los totales en el portapapeles, seleccione &Ctrl;C File Copiar los totales en el portapapeles .

Este informe se genera para la tarea seleccionada en ese momento y para todas sus subtareas. Si la tarea actual es de nivel superior, &karm; le preguntará si quiere generar el informe para la tarea actual y todas sus subtareas o para la lista de tareas al completo.

&karm; Copiar esta tarea &karm; Copiar el cuadro de diálogo de esta tarea

Una vez que se haya generado el informe, abra KEdit o algún otro editor de texto y pegue los datos del informe.

    Totales de la tarea
    2004-07-10 02:26

      Hora    Tarea
    ----------------------------------------------
      9:14    kde
       9:14    karm
        1:08    errores
        0:00    comprobar cambios
       0:00    promo
       0:00    cosas de la web
    ----------------------------------------------
      9:14 Total

La primera columa es el Tiempo total y se supone (como los nombres de las tareas) que indica las relaciones entre tareas y subtareas. Los tiempos del informe incluyen los tiempos de las subtareas.

#### Historial al portapapeles

Para generar el informe de los totales al portapapeles, seleccione &Ctrl;&Alt;C Archivo Copiar el historial al portapapeles .

Debe activar la opción Registrar historial en Preferencias Configurar KArm . Si no es así, &karm; sólo le seguirá la pista a los totales y no al historial detallado de la tarea.

Este informe se genera para la tarea seleccionada en ese momento y para sus subtareas. De forma diferente al informe de los totales, este informe no le da la opción de informar de la lista de tareas al completo. Puede hacer el informe sólo de la tarea actual y de todas las subtareas.

Cuando seleccione el informe del historial, &karm; le pedirá en primer lugar que indique el rango de fechas para el informe:

&karm; Introduzca el rango de fechas &karm; Introduzca el rango de fechas

Tras introducir un rango de fechas, abra KEdit o algún otro editor de texto y pegue los datos del informe.

    Historial de tareas
    De Jueves, 1 de Julio de 2004 a Lunes, 12 de Julio de 2004
    Impreso el: 2004-07-12 17:18

                                   Semana de Lunes, 5 de Julio de 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 feature plan
                  1:08                           1:08   bugs
                                                 0:00   comprobar cambios
                                                 0:00  promo
                                                 0:00  cosas de la web
    -------------------------------------------------------------------------
                  2:30  1:46  3:14  1:44         9:14 Total

El historial de tareas contiene los totales de cada día y tarea, agrupados por semanas. Las primeras sigete columnas van desde el lunes hasta el domingo. La octava columna es el total para la semana y la novena es el nombre de la tarea. Los nombres de las tareas pretenden indicar las relaciones entre las tareas y las subtareas.

### Otros sistemas

#### KOrganizer

&karm;, al igual que KOrganizer e iCal de Apple, usa el formato estándar de la industria iCalendar para los datos. &karm; puede leer y escribir las listas de tareas pendientes que crean esas dos aplicaciones.

Si tanto &karm; como KOrganizer tienen abierto el mismo archivo a la vez, si edita el archivo con KOrganizer se arriesga a perder los datos. Para estar seguro, edite el archivo con una sola aplicación a la vez.

#### Planner

Como caso de uso típico, puede quere planificar un proyecto con la herramienta de gestión de proyectos Imendio Planner (desde planner.imendio.org) e importar sus tareas en &karm;, para tenerlos en el formato iCalendar, estándar de la industria. Haciendo esto, podrá planificar las tareas en KOrganizer y contabilizar su tiempo en &karm;. Es una forma de ayudarle a asegurar que su proyecto está dentro de los límites temporales y de presupuesto.

#### &DCOP;

&DCOP; es el mecanismo que usan los programas de KDE para comunicarse entre sí. Un programa de KDE proporciona una lista de funciones que pueden usar otros programas (por ejemplo, un guión de Bash).

##### Guión de Bash que muestra la versión de &karm;.

    DCOPID=`dcop | grep karm`
            if [ $DCOPID ]
            then
                    VERS=`dcop $DCOPID KarmDCOPIface version`
                    echo "La versión de &karm; es $VERS"
            else
                    echo "&karm; no está funcionando"
            fi

La interfaz &DCOP; actual de &karm; se usa principalmente para comprobaciones automatizadas, por lo que está muy limitado. Puede ver la definición completa de la interfaz en el apéndice &DCOP; de la interfaz.

Para ver la interfaz &DCOP; completa de la versión de &karm; que está instalada en su sistema, lance el siguiente guión de Bash:

##### Lista la interfaz &DCOP; de &karm; en la consola.

    DCOPID=`dcop | grep karm`
            if [ $DCOPID ]
            then
                    dcop $DCOPID KarmDCOPIface
            else
                    echo "&karm; no está funcionando"
            fi

#### Exportar los totales como CSV

&karm; puede exportar tanto los totales como el historial con el formato de archivo separado por comas. Para exportar los totales, seleccione Archivo Importar/Exportar Exportar como archivo CSV... , y &karm; mostrará el siguiente cuadro de diálogo de exportación:

Diálogo de exportación a CSV de &karm; Diálogo de exportación a CSV de &karm;

Introduzca el archivo al que quiera exportar los datos, y modificar las opciones predefinidas de los otros cuadros de diálogo si fuera necesario. Tenga en cuenta que el control de rango de fechas está desactivada porque va a exportar los tiempos totales, no los datos del historial. Haga clic en Exportar y &karm; exportará los totales de todas las tareas en el archivo que haya seleccionado.

Aquí tiene un ejemplo del formato de la salida:

    "kde",,,,,0.00,0.00,6.88,9.83
    ,"karm",,,,6.88,8.70,6.88,9.83
    ,,"3.2 feature plan",,,0.00,0.00,0.00,0.00
    ,,"bugs",,,0.00,1.13,0.00,1.13
    ,,"checkin changes - translation strings",,,0.00,0.00,0.00,0.00
    ,,"time card report",,,0.00,0.00,0.00,0.00
    ,"kopete",,,,0.00,0.00,0.00,0.00
    ,"promo",,,,0.00,0.00,0.00,0.00
    ,"web stuff",,,,0.00,0.00,0.00,0.00

Las tareas de nivel superior se muestran en la primera columna, las subtareas en la segunda y así sucesivamente. Los datos del tiempo se muestran tras la profundidad más alta (cinco en este ejemplo). El tiempo de la primera columna en el Tiempo de sesión, el segundo es el Tiempo, el tercero es el Tiempo total de sesión y el cuarto es el Tiempo total.

#### Exportar el historial como CSV

Para exportar el historial de tarea, seleccione Archivo Importar/Exportar Exportar historial como archivo CSV... y &karm; muestra el mismo cuadro de diálogo de exportación que se mostró arriba.

Introduzca el archivo al que quiera exportar los datos, y seleccione un rango de fechas para las que obtener el historial. Modifique las opciones predefinidas de los cuadros de diálogo si fuera necesario. Haga clic en Exportar y &karm; exportará el historial de todas las tareas en el archivo que haya seleccionado.

Aquí tiene un ejemplo del formato de la salida:

    Historial de tareas
    De Martes 6 de Julio de 2004 a Martes 13 de julio de 2004
    Impreso el: 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 feature plan"
    ,1.13,,,,,,,1.13,,,"bugs"
    ,,,,,,,,0.00,,,"checkin changes - translation strings"
    ,,,,,,,,0.00,,,"time card report"
    ,,,,,,,,0.00,,"kopete"
    ,,,,,,,,0.00,,"promo"
    ,,,,,,,,0.00,,"web stuff"

Las tres líneas identifican cuándo se generó el informe y en qué rango de fechas. La cuarta fila es una lista separada por comas de las fechas del rango, en formato ISO 8601 (AAAA-MM-DD). Todas las filas siguientes muestran el tiempo registrado para cada tarea. La última columna numérica es la fila de totales para todos los días. El nombre de la tarea se imprime tras la columna de totales, y se pretende que indique las relaciones de tareas y subtareas. Los nombres de las tareas de nivel superior aparecen en la primera columna tras el total.

## El interfaz de &karm;

La ventana principal de &karm; tiene los siguientes componentes: barra de menú, barra de herramientas, ventana de tarea/tiempo y barra de estado.

Pantalla de &karm; Pantalla de &karm;

### La ventana de tarea/tiempo

En esta ventana se muestran las diferentes tareas, junto con el tiempo acumulado para cada uno en la sesión actual y en total. Las tareas de las que se sigue el tiempo tiene un pequeño icono de reloj junto al tiempo de sesión.

Se pueden crear subtareas para cada tarea. Al hacer clic sobre los signos más y menos que están delante de las tareas principales, alterna la vista de las subtareas asociadas. El tiempo total acumulado para una tarea incluye los tiempos para sus subtareas, así como su propio tiempo acumulado.

### La barra de menú de &karm;

#### El menú Archivo

&Ctrl;S Archivo Guardar

- Guarda la tarea actual y las subtareas con sus tiempos acumulados

&Ctrl;P Archivo Imprimir

- Imprime la ventana de &karm;

Archivo Comenzar sesión nueva

- Reinicia los tiempos de todas las sesiones a cero

Archivo Reiniciar los tiempo

- Reinicia todos los tiempos a cero

Archivo Importar/Exportar Importar archivo heredado plano...

- Importa archivos guardados al viejo estilo de &karm; (ahora, &karm; usa para guardar el tipo de archivo iCalendar).

Archivo Importar/Exportar Importar tareas desde Planner...

- Importa un archivo de proyecto de imendio (vea planner.imendio.org). Todas las tareas, subtareas y su herramienta «completado» se importará desde un archivo .planner. Puede importarlas como una subtarea creando una subtarea, dejándolo marcado e importarla luego.

Archivo Importar/Exportar Exportar como archivo CSV...

- Exporta el Tiempo total de sesión, el Tiempo de sesión, el Tiempo y el Tiempo total como un archivo de texto.

Archivo Importar/Exportar Exportar historial como archivo CSV...

- Exporta el historial de tareas como un archivo de texto.

&Ctrl;C Archivo Copiar totales al portapapeles

- Copia el tiempo total actual para una tarea o para todos las tareas al portapapeles de &kde;.

&Ctrl;&Alt;C Archivo Copiar historia al portapapeles

- Copia los tiempos diarios para un período dado al portapapeles de &kde;.

&Ctrl;Q Archivo Salir

- Cierra &karm;

#### El menú Reloj

S Reloj Iniciar

- Inicia el cronometraje de la tarea seleccionada

Reloj Detener

- Detiene el cronometraje de la tarea seleccionada

&Esc; Reloj Detener todos los relojes

- Detiene el cronometraje de todas las tareas.

#### El menú Tarea

&Ctrl;N Tarea Nueva

- Añade una nueva tarea

&Ctrl;&Alt;N Tarea Nueva subtarea

- Añade una nueva subtara a la tarea seleccionada

Del Tarea Borrar

- Borra la tarea o subtarea seleccionada

&Ctrl;E Tarea Editar

- Cambia el nombre o el tiempo acumulado de la tarea actual

  Hay dos opciones para cambiar el tiempo: Edición absoluta, en la que los tiempos de sesión y totales se pueden cambiar por separado, y Edición relativa, en la que un cierto cambio se añade a o se sustrae tanto del tiempo de sesión como del total.

  La opción de seguimiento automático le permite comenzar y detener automáticamente el cronometraje cuando pase de un escritorio en particular de &kde; a otro.

#### El menú Preferencias

Preferencias Configurar atajos

- Abre un diálogo para permitir al usuario personalizar los atajos de teclado

Preferencias Configurar KArm

- Abre un diálogo para permitir al usuario configurar &karm;

  El cuadro de diálogo tiene tres zonas: Comportamiento, que le permite especificar una alerta para cuando no haya actividad y un mensaje de aviso cuando elimine un conjunto de tareas; Pantalla, que configura los campos que se muestran en la ventana principal; y Almacenamiento, que configura la ubicación del archivo para guardar, si se activa el guardado automático y el intervalo de dicho guardado automático.

#### El menú Ayuda

&help.menu.documentation;

### La barra de herramientas

La barra de herramientas contiene iconos para los siguientes comandos:

(Todos los comportamientos son idénticos al comando menú.)

- Iniciar

- Detener

- Nueva

- Nueva subtarea

- Borrar

- Editar

### La barra de estado

Informa del tiempo total transcurrido para la sesión.

## Créditos y licencia

&karm;

Copyright del programa:

- 1997-2000 Sirtaj Singh Kang taj@kde.org.

- 2001-2002 Tomas Pospisek tpo_deb@sourcepole.ch

- 2003-2004 Mark Bucciarellimark@hubcapconsulting.com

Colaboradores (en orden alfabético)

- Allen Winter winterz@verizon.net

- David Faure faure@kde.org

- Espen Sand espen@kde.org

- Gioele Barabucci gioele@gioelebarabucci.com

- Jan Schaumann jschauma@netmeister.org

- Jesper Pedersen blackie@ifad.dk

- Kalle Dalheimer kalle@kde.org

- 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; se ispiró en una utilidad muy buena de Harald Tveit Alverstrand llamada titrax. La única pega era que estaba basada en el toolkit Xt.

Copyright de la documentación 2000-2004 Jonathan Singer jsinger@leeta.net y Sirtaj Singh Kang taj@kde.org.

&underFDL; &underGPL;
tarea activa

Una tarea que tiene un temporizador funcionando.

&DCOP;

El protocolo de comunicación entre procesos que se usa en KDE. Es una abreviatura de «Desktop COmmunication Protocol» (protocolo de comunicación para escritorio).

escritorio

GNU/Linux, FreeBSD y otros sistemas que trabajan con X-Windows tienen múltiples escritorio. Normalmente, tendrá cuatro escritorios diferentes instalados de forma predefinida. Cada escritorio puede mostrar su propio conjunto de programas y archivos. Cuando KDE se inicia por primera vez, el escritorio que ve es el 1. Si presiona &Alt;F2, verá el escritorio 2. Si presiona &Alt;F1 volverá el escritorio 1.

historial

Si &karm; está configurado para que registre el historial, recordará cada evento de inicio y parada del temporizador. Este historial no se limpia nunca cuando se reinician los tiempos y permanece en el archivo hasta que se elimina la tarea.

sesión

Un punto de inicio definido por el usuario para los temporizadores de la sesión. Una sesión nueva comienza cuando selecciona Archivo Iniciar nueva sesión . Los datos de la sesión no se guardan cuando crea una sesión nueva.

Tiempo de sesión

El tiempo empleado en la tarea desde que comenzó la sesión.

bandeja del sistema

La bandeja del sistema es la barra que aparece (de forma predefinida) en la parte inferior de la pantalla. En esta bandeja del sistema, el icono de &karm; está a la derecha.

tarea de nivel superior

Una tarea que no tiene tareas padre.

Tiempo total de la sesión

El tiempo empleado en la tarea y en todas las subtareas desde que comenzó la sesión.

Tiempo

El tiempo empleado en la tarea desde que se reiniciaron todos los tiempos.

Tiempo total

El tiempo empleado en la tarea y todas sus subtareas desde que se reiniciaron todos los tiempos.

## Instalación

### Cómo obtener &karm;

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

## Interfaz &DCOP;

version

version

Devuelve la ejecución de «version» de &karm;.

    QString version()

#### Descripción

`version()` es una llamada &DCOP; que devuelve el número de versión de &karm;. Por ejemplo, 1.5.0. El número de versión se devuelve como una cadena con el típico formato de GNU de mayor.menor.correccióndefallos.

quit

quit

Devuelve la ejecución de «quit» de &karm;.

    QString quit()

#### Descripción

`quit()` es una llamada &DCOP; que proporciona un medio para que un programa externo pueda detener de forma elegante &karm;.

hastodo

hastodo

Comprueba si existe una tarea pendiente de nivel superior.

    QString hastodo(QString taskname)

#### Parámetros

`taskname`

- El nombre de la tarea pendiente que se está buscando.

#### Descripción

`hastodo(QString taskname)` es una llamada &DCOP; que busca un nombre que se le proporciona. Si lo encuentra, devuelve el UID del iCalendar que identifica la tarea pendiente. Si no lo encuentra, devuelve una cadena vacía.

El archivo iCalendar que ha abierto actualmente &karm; es en el que se estaba buscando. Se busca en todo el árbol, no sólo en las tareas pendientes de nivel superior. Si hay más de una tarea pendiente cuyo nombre coincida, se devuelve la primera que se encuentre.

addtodo

addtodo

Añade una tarea pendiente nueva.

    QString addtodo(QString todoname)

#### Parámetros

`todoname`

- El nombre de la tarea pendiente nueva.

#### Descripción

`addtodo(QString todoname)` es una llamada &DCOP; que añade una tarea pendiente de nivel superior al almacenamiento actual. Se devuelve el UID de la nueva tarea pendiente.

&documentation.index;