<commit_before># tl (timelog)

Stack-oriented time tracking.

## Description

`tl` is a command-line utility for logging time and generating reports.

`tl` supports a set of seven commands; `tl init`, `tl timepoint`,
`tl pending`, `tl pop-drop`, `tl merge-add`, `tl unlog` and `tl report`.

### Timestamp format

The timestamp format of `tl timepoint` is
`[<YYYY>-<mm>-<dd>T]<HH>:<MM>`. (Similar to, but not quite, ISO 8601.)

### Time zone

Timestamps are not good for much without a time zone.

Time zone is included in the timestamp as provided by your OS.

The time zone recorded by `tl timepoint` will be used when presenting
timepoints (such as by `tl pending` and `tl report`).

## Supported platforms

`tl` is being developed on FreeBSD/armv6, FreeBSD/amd64 and OpenBSD/i386.

## Known issues

* The tests only check the execution return values.
  They need to be rewritten so that they instead test the actual outcome.
* Some operating systems, when faced with an invalid `$TZ`, will
  silently ignore it and use UTC.

## Compiling

```
make test
```
<commit_msg>Specify what is executed.<commit_after># tl (timelog)

Stack-oriented time tracking.

## Description

`tl` is a command-line utility for logging time and generating reports.

`tl` supports a set of seven commands; `tl init`, `tl timepoint`,
`tl pending`, `tl pop-drop`, `tl merge-add`, `tl unlog` and `tl report`.

### Timestamp format

The timestamp format of `tl timepoint` is
`[<YYYY>-<mm>-<dd>T]<HH>:<MM>`. (Similar to, but not quite, ISO 8601.)

### Time zone

Timestamps are not good for much without a time zone.

Time zone is included in the timestamp as provided by your OS.

The time zone recorded by `tl timepoint` will be used when presenting
timepoints (such as by `tl pending` and `tl report`).

## Supported platforms

`tl` is being developed on FreeBSD/armv6, FreeBSD/amd64 and OpenBSD/i386.

## Known issues

* The tests only check the `tl` execution return values.
  They need to be rewritten so that they instead test the actual outcome.
* Some operating systems, when faced with an invalid `$TZ`, will
  silently ignore it and use UTC.

## Compiling

```
make test
```

{'fraction_non_alphanumeric': 0.1031929662193429, 'fraction_numerical': 0.00925497454881999, 'mean_word_length': 4.172248803827751, 'pattern_counts': {'":': 0, '<': 13, '<?xml version=': 0, '>': 13, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3328490', 'n_tokens_mistral': 680, 'n_tokens_neox': 649, 'n_words': 314}