1
1
mirror of https://github.com/wez/wezterm.git synced 2024-09-20 19:27:22 +03:00
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Go to file
Wez Furlong 62cc64f293 incomplete, basic implementation of kitty image protocol
This isn't complete; many of the placement options are not supported,
and the status reporting is missing in a number of cases, including
querying/probing, and shared memory objects are not supported yet.

However, this commit is sufficient to allow the kitty-png.py script
(that was copied from
https://sw.kovidgoyal.net/kitty/graphics-protocol/#a-minimal-example)
to render a PNG in the terminal.

This implementation routes the basic image display via the same
code that we use for iterm2 and sixel protocols, but it isn't
sufficient to support the rest of the placement options allowed
by the spec.

Notably, we'll need to add the concept of image placements to
the data model maintained by the terminal state and find a way
to efficiently manage placements both by id and by a viewport
range.

The renderer will need to manage separate quads for placements
and order them by z-index, and adjust the render phases so that
images can appear in the correct plane.

refs: #986
2021-07-28 09:04:52 -07:00
.cargo build static on windows for static openssl linkage 2020-02-02 13:03:07 -08:00
.github update actions/cache -> 2.1.6 2021-05-30 23:07:29 -07:00
assets Remove duplicate colorscheme file 2021-06-27 09:57:56 -07:00
async_ossl Raise minimum Rust version to 1.51, de-vendor openssl on unix 2021-03-25 09:43:50 -07:00
base91 dyn everywhere 2019-06-08 21:28:11 -07:00
bintree bintree: clippy lint 2021-03-26 09:01:54 -07:00
ci update actions/cache -> 2.1.6 2021-05-30 23:07:29 -07:00
codec deps: cargo update, and a couple of dependabot suggestions 2021-07-18 19:10:46 -07:00
color-types refactor deps so that window can depend on wezterm-font 2021-06-26 22:58:42 -07:00
config #133 ENQ response 2021-07-24 23:36:20 -07:00
deps fonts: synthesize bold when missing 2021-05-22 16:20:35 -07:00
docs docs: fix table 2021-07-25 09:16:55 -07:00
env-bootstrap tidy up log levels for wgpu 2021-05-09 10:59:48 -07:00
filedescriptor fixup build on macos 2021-05-23 14:42:41 -07:00
licenses macOS: bundle and use MetalANGLE to enable Metal rendering 2020-10-17 09:34:01 -07:00
luahelper add lua repl to the debug overlay 2021-05-03 09:19:44 -07:00
mux #133 cleanup + terminalstate-level reverse video mode 2021-07-24 23:36:49 -07:00
promise deps: misc updates 2020-12-29 09:24:34 -08:00
pty Always provide an absolute path for the working directory to CreateProcessW() 2021-07-19 08:36:08 -07:00
rangeset fix an issue where rangeset::difference with itself gave bad results 2021-04-11 14:34:15 -07:00
ratelim move ratelim to its own crate 2020-10-03 11:15:57 -07:00
strip-ansi-escapes move strip-ansi-escapes into its own crate 2020-10-03 11:15:57 -07:00
tabout vtparse/termwiz: prep for release 2021-04-14 13:04:23 -07:00
term incomplete, basic implementation of kitty image protocol 2021-07-28 09:04:52 -07:00
termwiz incomplete, basic implementation of kitty image protocol 2021-07-28 09:04:52 -07:00
test-data incomplete, basic implementation of kitty image protocol 2021-07-28 09:04:52 -07:00
tmux-cc tmux-cc: parse client-detached (#980) 2021-07-24 21:28:59 -07:00
umask Take care to restore the original umask 2021-01-07 09:20:13 -08:00
vtparse vtparse: parse APC sequences 2021-07-28 09:04:28 -07:00
wezterm add wezterm cli spawn --new-window flag 2021-06-18 22:12:25 -07:00
wezterm-client deps: cargo update, and a couple of dependabot suggestions 2021-07-18 19:10:46 -07:00
wezterm-font Wrap up synchronized output handling, parser changes 2021-07-24 17:01:21 -07:00
wezterm-gui termwiz: parse and encode kitty image protocol 2021-07-28 09:04:37 -07:00
wezterm-gui-subcommands fonts: add wezterm ls-fonts --text "hello" to explain per-glyph font 2021-06-19 16:55:45 -07:00
wezterm-input-types Allow VoidSymbol keycode to be seen by wezterm (#759) 2021-05-07 07:54:24 -07:00
wezterm-mux-server wezterm-mux-server: keep running after all panes are gone 2021-04-03 15:00:08 -07:00
wezterm-mux-server-impl plumb appearance change event -> reload on macos 2021-07-18 00:01:53 -07:00
wezterm-ssh ssh: avoid looping forever if the connection drops 2021-07-16 19:31:37 -07:00
wezterm-toast-notification deps: upgrade open 1.4 -> 2.0 2021-07-26 08:15:02 -07:00
window window: x11: no need to complain loudly if no xsettings 2021-07-24 08:34:36 -07:00
.cirrus.yml ci: workaround rustup hang on freebsd 2021-05-21 20:13:15 -07:00
.gitignore docs: for the new status bar feature 2021-03-10 19:29:17 -08:00
.gitmodules repoint to my freetype mirror 2021-02-03 21:56:30 -08:00
.rustfmt.toml Make rustfmt happy about "async move" 2020-01-20 13:58:21 -08:00
Cargo.lock deps: cargo update 2021-07-26 08:16:03 -07:00
Cargo.toml couple of build tweaks for git versioning and macos build perf 2021-04-23 23:29:43 -07:00
CONTRIBUTING.md Add get-deps script for installing dependencies 2018-02-25 09:24:56 -08:00
get-deps move sudo into script to not use sudo for rust checking 2021-04-02 22:36:27 -07:00
LICENSE.md wezterm: bundle JetBrains Mono and Noto Color Emoji fonts 2020-09-29 22:05:18 -07:00
README.md Update wording in README.md 2021-05-19 19:08:57 -07:00
wt-record fixup wt-record on darwin 2021-03-20 20:14:17 -07:00
wt-replay update record/play scripts for macos 2019-03-22 20:41:50 -07:00

Wez's Terminal

WezTerm Icon A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust

User facing docs and guide at: https://wezfurlong.org/wezterm/

Screenshot

Screenshot of wezterm on macOS, running vim

Installation

https://wezfurlong.org/wezterm/installation.html

Getting help

This is a spare time project, so please bear with me. There are a couple of channels for support:

  • You can use the GitHub issue tracker to see if someone else has a similar issue, or to file a new one.
  • Start or join a thread in our GitHub Discussions; if you have general questions or want to chat with other wezterm users, you're welcome here!
  • There is a Matrix room via Element.io for (potentially!) real time discussions.

The GitHub Discussions and Element/Gitter rooms are better suited for questions than bug reports, but don't be afraid to use whichever you are most comfortable using and we'll work it out.