1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-25 22:33:52 +03:00
wezterm/term
Wez Furlong 23ebcf324d term: revise image geometry calculation
The texture coordinates into the source image weren't quite right;
previously we'd do this math:

num_cells = (image_size / cell_size).ceil()
delta = num_cells / image_size

that would result in the image being stretched to fit across the rounded
up number of cells, leading to a distored image.

This commit changes the delta calculation to be based on the remaining
number of pixels in a given dimension relative to the cell size.

refs: #1300
refs: #1270
2021-12-11 10:51:13 -07:00
..
src term: revise image geometry calculation 2021-12-11 10:51:13 -07:00
Cargo.toml introduce unicode_version config 2021-11-25 09:00:45 -07:00
README.md term: rename crate to wezterm-term in advance of publishing 2020-06-13 09:55:16 -07:00

wezterm-term

This crate provides the core of the virtual terminal emulator implementation used by wezterm. The home for this crate is in the wezterm repo and development is tracked at https://github.com/wez/wezterm/.

It is full featured, providing terminal escape sequence parsing, keyboard and mouse input encoding, a model for the screen cells including scrollback, sixel and iTerm2 image support, OSC 8 Hyperlinks and a wide range of terminal cell attributes.

This crate does not provide any kind of gui, nor does it directly manage a PTY; you provide a std::io::Write implementation that could connect to a PTY, and supply bytes to the model via the advance_bytes method.

The entrypoint to the crate is the Terminal struct.

License: MIT