# tjot

A colorize [djot](https://djot.net) terminal pager.

[![Build status](https://builds.sr.ht/~ser/tjot/.build.yml.svg)](https://builds.sr.ht/~ser/tjot/.build.yml?)
★ [Releases](https://downloads.ser1.net/software/tjot/)
★ ![Latest release](https://downloads.ser1.net/software/tjot/badges/latest_release.svg)  
[![License](https://downloads.ser1.net/software/tjot/badges/license.svg)](https://{{.Vcs}}.sr.ht/~ser/tjot/raw/LICENSE?rev=tip)
★ [Changelog](https://hg.sr.ht/~ser/tjot/browse/CHANGELOG.md?rev=tip)
★ [Software metrics](https://downloads.ser1.net/software/tjot/badges/METRICS.md)
★ [Issues](https://todo.sr.ht/~ser/tjot)
★ [Mailing List](https://lists.sr.ht/~ser/tjot)
★ [Credits](https://hg.sr.ht/~ser/tjot/browse/CREDITS.md?rev=tip)  
[![Go Report Card](https://goreportcard.com/badge/ser1.net/tjot)](https://goreportcard.com/report/ser1.net/tjot)
★ ![Code linting](https://downloads.ser1.net/software/tjot/badges/linting.svg)
★ ![Code security](https://downloads.ser1.net/software/tjot/badges/vulnerabilities.svg)
★ ![Markdown linting](https://downloads.ser1.net/software/tjot/badges/doc_linting.svg)
★ ![Unit tests](https://downloads.ser1.net/software/tjot/badges/unit_tests.svg)  
![Code coverage](https://downloads.ser1.net/software/tjot/badges/coverage.svg)
★ ![Code complexity](https://downloads.ser1.net/software/tjot/badges/complexity.svg)
★ ![ABC metrics](https://downloads.ser1.net/software/tjot/badges/abc_score.svg)
★ ![Lines of code](https://downloads.ser1.net/software/tjot/badges/loc.svg)

A terminal pager for djot documents

- [Features](#features)
- [Usage](#usage)
- [Install](#install)
- [To-do & known bugs](https://hg.sr.ht/~ser/tjot/browse/CHANGELOG.md#todo?rev=tip)
- [Other solutions](#other-solutions)

## Features

Implementation: 48%

(Run with `-c` to get an accurate count)

It renders about half of djot at the moment.

And it's not really a pager yet; you have to dump the output to less.

## Usage

`-h` will give you usage.

```sh
$ go run . tests/design.dj | less
...
```

## Install

You need [my fork of the godjot library](https://github.com/xxxserxxx/godjot) at
the moment. The current go.mod rewrites that module to expect it in the parent
directory. To test this:

```
$ hg clone https://hg.sr.ht/~ser/tjot
# Super fast awesome Mercurial clone
$ git clone https://github.com/xxxserxxx/godjot  
# Slow, boring git clone, booo
$ cd tjot
$ go run . <some djot file> | less
```

## Other solutions

NONE. There are no terminal pagers, this is the first and only. tjot has a
monopoly on the djot terminal rendering market.
