Skip to content

Commit

Permalink
readme additions
Browse files Browse the repository at this point in the history
  • Loading branch information
benjajaja committed Dec 8, 2024
1 parent 660e531 commit 8965ed2
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 30 deletions.
35 changes: 20 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,24 +124,22 @@ false`). To only support a selection of image formats and cut down dependencies,

Compatibility and QA:

Terminal | Protocol | Fixed | Resize | Notes
----------|----------|-------|--------|-------
Xterm | `Sixel` | ✔️ | ✔️ | Run with `-ti 340` to make sure sixel support is enabled.
Foot | `Sixel` | ✔️ | ✔️ | Wayland.
kitty | `Kitty` | ✔️ | ✔️ |
Wezterm | `iTerm2` | ✔️ | ✔️ | Also would support `Sixel` and `Kitty`, but only `iTerm2` actually works bug-free.
Alacritty | `Sixel` | ❌ | ❌ | [There is a sixel fork](https://github.com/microo8/alacritty-sixel), but it's stale and does not clear graphics.
iTerm2 | `iTerm2` | ❔ | ❔ | Untested (needs apple hardware), however should be the same as WezTerm.
konsole | `Sixel` | ❌ | ❌ | [Wontfix: does not clear graphics](https://bugs.kde.org/show_bug.cgi?id=456354), other artifacts.
Contour | `Sixel` | ❌ | ❌ | Does not clear graphics.
ctx | `Sixel` | ❌ | ❌ | Buggy.
Blackbox | `Sixel` | ❔ | ❔ | Untested.

Here, "Fixed" means the `Image` widget, and "Resize" is the `StatefulWidget`.
Terminal | Protocol | Fixed | Notes
----------|----------|-------|-------
Xterm | `Sixel` | ✔️ | Run with `-ti 340` to make sure sixel support is enabled.
Foot | `Sixel` | ✔️ | Wayland.
Kitty | `Kitty` | ✔️ |
Wezterm | `iTerm2` | ✔️ | Also would support `Sixel` and `Kitty`, but only `iTerm2` actually works bug-free.
Alacritty | `Sixel` | ❌ | [There is a sixel fork](https://github.com/microo8/alacritty-sixel), but it's probably never getting merged, and does not clear graphics.
iTerm2 | `iTerm2` | ❔ | Feedback from mac users wanted.
Konsole | `Sixel` | ❌ | [Possibly fixed in 24.12](https://bugs.kde.org/show_bug.cgi?id=456354)
Contour | `Sixel` | ❌ | Does not clear graphics.
ctx | `Sixel` | ❌ | Buggy.
Blackbox | `Sixel` | ❔ | Untested.

A basic [screenshot test](./assets/screenshot_xterm.png) is run with xterm on Xvfb in the CI (or `cargo make screenshot-xvfb && cargo make screenshot-diff`).

Halfblocks should work in all terminals.
Halfblocks should work in all terminals, even if the font size could not be detected, with a 4:8 pixel ratio.

### Projects that use ratatui-image

Expand All @@ -167,4 +165,11 @@ Halfblocks should work in all terminals.
and/or iterm2 protocols (any means necessary). There exists several wrapper or bindings crates.
More battle-tested but essentially stateful, which makes it hard to use with immediate-mode.

### Contributing

PRs and issues/discussions welcome!

You can run an aproximation of the CI with `cargo make ci`. I must manually approve CI runs for new
PRs to prevent github-action attacks. The demo is useful to test that everything works correctly.

License: MIT
35 changes: 20 additions & 15 deletions README.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -21,24 +21,22 @@

Compatibility and QA:

Terminal | Protocol | Fixed | Resize | Notes
----------|----------|-------|--------|-------
Xterm | `Sixel` | ✔️ | ✔️ | Run with `-ti 340` to make sure sixel support is enabled.
Foot | `Sixel` | ✔️ | ✔️ | Wayland.
kitty | `Kitty` | ✔️ | ✔️ |
Wezterm | `iTerm2` | ✔️ | ✔️ | Also would support `Sixel` and `Kitty`, but only `iTerm2` actually works bug-free.
Alacritty | `Sixel` | ❌ | ❌ | [There is a sixel fork](https://github.com/microo8/alacritty-sixel), but it's stale and does not clear graphics.
iTerm2 | `iTerm2` | ❔ | ❔ | Untested (needs apple hardware), however should be the same as WezTerm.
konsole | `Sixel` | ❌ | ❌ | [Wontfix: does not clear graphics](https://bugs.kde.org/show_bug.cgi?id=456354), other artifacts.
Contour | `Sixel` | ❌ | ❌ | Does not clear graphics.
ctx | `Sixel` | ❌ | ❌ | Buggy.
Blackbox | `Sixel` | ❔ | ❔ | Untested.

Here, "Fixed" means the `Image` widget, and "Resize" is the `StatefulWidget`.
Terminal | Protocol | Fixed | Notes
----------|----------|-------|-------
Xterm | `Sixel` | ✔️ | Run with `-ti 340` to make sure sixel support is enabled.
Foot | `Sixel` | ✔️ | Wayland.
Kitty | `Kitty` | ✔️ |
Wezterm | `iTerm2` | ✔️ | Also would support `Sixel` and `Kitty`, but only `iTerm2` actually works bug-free.
Alacritty | `Sixel` | ❌ | [There is a sixel fork](https://github.com/microo8/alacritty-sixel), but it's probably never getting merged, and does not clear graphics.
iTerm2 | `iTerm2` | ❔ | Feedback from mac users wanted.
Konsole | `Sixel` | ❌ | [Possibly fixed in 24.12](https://bugs.kde.org/show_bug.cgi?id=456354)
Contour | `Sixel` | ❌ | Does not clear graphics.
ctx | `Sixel` | ❌ | Buggy.
Blackbox | `Sixel` | ❔ | Untested.

A basic [screenshot test](./assets/screenshot_xterm.png) is run with xterm on Xvfb in the CI (or `cargo make screenshot-xvfb && cargo make screenshot-diff`).

Halfblocks should work in all terminals.
Halfblocks should work in all terminals, even if the font size could not be detected, with a 4:8 pixel ratio.

### Projects that use ratatui-image

Expand All @@ -64,5 +62,12 @@ Halfblocks should work in all terminals.
and/or iterm2 protocols (any means necessary). There exists several wrapper or bindings crates.
More battle-tested but essentially stateful, which makes it hard to use with immediate-mode.

### Contributing

PRs and issues/discussions welcome!

You can run an aproximation of the CI with `cargo make ci`. I must manually approve CI runs for new
PRs to prevent github-action attacks. The demo is useful to test that everything works correctly.

License: {{license}}

0 comments on commit 8965ed2

Please sign in to comment.