Ir al contenido

La línea de órdenes

El binario acepta estas opciones y ningún subcomando. Todo lo demás está en el fichero de configuración, porque un horario no es algo que se reescriba a mano.

Ventana de terminal
ghchronicle -config /etc/ghchronicle/config.yaml
OpciónPor omisiónQué hace
-configconfig.yamlRuta del fichero de configuración
-onceapagadaHace una pasada y sale en vez de quedarse programando; una familia a la que no le toca por cadencia se salta igual
-listapagadaImprime los repositorios que se recogerían, y cuáles quedan aparte, y sale
-versionapagadaImprime la versión, el commit y la fecha de compilación, y sale
-groupsapagadaImprime los grupos con las familias de cada uno, y sale
-backfillapagadaLlega tan atrás como permita cada superficie, esperando a que se reponga el límite en vez de parar
-backfill-sinceningunoAcota el relleno: una fecha (2024-01-01), una duración (720h), días (90d) o años (2y)
-cardningunoHace una pasada y escribe un SVG de resumen en esta ruta; esa pasada recoge todas las familias, digan lo que digan las cadencias
-card-onlyapagadaCon -card, escribe el SVG y nada más: no hace falta ningún destino, no se escribe en ninguno y el fichero de estado se queda como estaba
-card-themeautodark, light, auto o both: la tarjeta clara en -card y la oscura a su lado con _dark antes de la extensión, en una sola pasada
-card-motiononceonce, loop u off; loop solo cambia terminal y ticker
-card-layoutsummaryCuál de los trece diseños dibujar
-card-fieldsningunoCampos que muestra la tarjeta, separados por comas, de entre los campos; vacío significa el valor por omisión del diseño
-card-widthel del diseñoAncho de la tarjeta en píxeles. Cada diseño dibuja entre dos extremos propios, que dicen tanto su sección como -card-layouts; badge-row la ignora, porque su ancho lo deciden sus píldoras
-card-speed0.5A qué velocidad se reproduce un diseño animado, como decimal de 0 a 1. 0 es la animación más lenta y 1 la más rápida; 0.5 es el ritmo con el que siempre se han dibujado las tarjetas. 0 no es una tarjeta quieta, eso es -card-motion off
-card-layoutsapagadaImprime los diseños con los campos y los anchos que dibuja cada uno, y sale

-version, -groups, -card-layouts y -list responden y paran. Las tres primeras no necesitan token ni configuración; -list lee la configuración y le pregunta a GitHub en qué repositorios se resuelven los objetivos, que es la forma barata de comprobar un cambio antes de gastar cuota en una pasada.

Ventana de terminal
ghchronicle -version
ghchronicle -groups
ghchronicle -card-layouts
ghchronicle -config config.yaml -list
Ventana de terminal
ghchronicle -config config.yaml # el bucle: cada familia en su cadencia
ghchronicle -config config.yaml -once # una pasada, en primer plano, y salir
ghchronicle -config config.yaml -backfill # el recorrido de la historia, una vez

El bucle es lo que ejecuta un servicio. -once es lo que ejecuta un trabajo programado, y es también la forma más rápida de ver qué hace un cambio de configuración. Un relleno histórico es otra intención y lo dice: recorre cada superficie hasta el final y espera a que se reponga un presupuesto agotado en vez de rendirse.

Ventana de terminal
ghchronicle -config config.yaml -backfill -backfill-since 2y
Ventana de terminal
ghchronicle -config config.yaml -card profile.svg -card-only \
-card-layout github-stats -card-theme dark

-card-only es la combinación que conviene recordar: hace una ejecución que no escribe puntos, así que no necesita ningún destino configurado y se acepta una configuración que de otro modo se rechazaría al arrancar. La tarjeta tiene los diseños y los campos.

-card-width es la única opción que cambia lo que dice una tarjeta y no solo cómo se ve, y en un solo diseño. activity-heatmap se gasta el sitio en datos: dieciséis semanas del calendario de contribuciones en su extremo cercano, veintitrés con el ancho que declara y el año entero que guarda el recolector en su extremo lejano, que cae justo donde cae el año para que a la tarjeta nunca se le pida llenar un sitio para el que no tiene nada. Cualquier otro diseño reparte el mismo contenido por el ancho que le den, así que ensanchar uno de esos compra proporciones y no información, y su extremo lejano es solo una defensa contra una errata. Un ancho fuera de los dos extremos de un diseño se rechaza antes de la pasada, nombrándolos, y -card-layouts los imprime para cada diseño.

Ventana de terminal
ghchronicle -config config.yaml -card calendar.svg -card-only \
-card-layout activity-heatmap -card-width 700

La velocidad, y lo que no es su extremo lento

Sección titulada «La velocidad, y lo que no es su extremo lento»

-card-speed es un solo número para toda la tarjeta. Todos los diseños animados se escalan juntos, los movimientos continuos con el resto: con el mismo ajuste, la banda del ticker tarda más en dar la vuelta y el cursor del terminal parpadea más despacio. Es un mando y no uno por diseño porque el movimiento que tiene la tarjeta se calibró contra sí mismo, el ciclo de un diseño elegido al lado del de otro, y a quien le parezca lenta la banda le parecerá lento también el tecleo.

0.5 es el centro del rango y es exactamente la tarjeta que este renderizador ha dibujado siempre, byte a byte, así que omitir la opción y pedir 0.5 son la misma orden, y cada extremo llega a la misma distancia de ella: 0 dibuja la animación el doble de larga que la de por omisión, 1 la mitad de larga que la de por omisión.

Ventana de terminal
ghchronicle -config config.yaml -card slow.svg -card-only \
-card-layout ticker -card-motion loop -card-speed 0.25

Todo lo que no está en esa tabla es una clave de configuración y no una opción: el fichero es el mapa de todas ellas.