WORK IN PROGRESS terminal pager
Find a file
Daniel Eklöf a6e9943f67
document: replace HYPHEN with plain dash
Many fonts don't have a glyph for HYPHEN
2024-07-23 06:53:54 +02:00
subprojects wip: initial work at a zig implementation 2023-04-27 19:04:54 +02:00
.gitignore build: add initial version of build.zig 2023-04-28 19:11:24 +02:00
build.zig build: zig 0.13 2024-06-13 15:04:35 +02:00
c.zig misc: OSC-8, VT parsing etc 2023-05-16 16:39:52 +02:00
document.zig document: replace HYPHEN with plain dash 2024-07-23 06:53:54 +02:00
input.zig zig-0.12 2024-05-11 09:35:47 +02:00
main.zig zig-0.12 2024-05-11 09:35:47 +02:00
prototype.py vt: initial implementation of a VT parser 2023-05-02 18:34:40 +02:00
README.md readme: mention we’re going to use an actual VT parser 2023-04-28 19:08:16 +02:00
screen.zig zig-0.12 2024-05-11 09:35:47 +02:00
util.zig zig-0.11 2023-09-08 16:27:31 +02:00
vt.zig zig-0.12 2024-05-11 09:35:47 +02:00

Pager

Pager is a terminal pager.

It is currently work-in-progress, and under heavy development.

Development will be done in two steps: first a prototype is developed in Python. This is to quickly be able to test design ideas.

Once the overall design is set, and all major features have been implemented, the prototype will be replaced by a version written in either zig or C.

Targeted features

  • Don’t require terminfo
  • Support for both XTerm’s modifyOtherKeys, and the Kitty keyboard protocol
  • Support for SGR (color escape sequences)
  • Parse both user input and file/stream with an actual VT parser
  • Handle very large files well
  • Handle infinite streams
  • Configurable (key bindings, colors and style etc)
  • Application synchronized updates, for a flicker free experience