1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-24 13:52:55 +03:00
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Go to file
Wez Furlong dcbbda7702 allow images to overlay text
This commit introduces a 4th draw pass for rendering sixel and
iterm images that are attached to cells.

Previously, a cell could container either text or an image from
the perspective of the renderer.  If it had an image then the glyph
bitmap would be ignored in favor of the image.

However, that causes sixel behavior to diverge from other terminals
(https://github.com/wez/wezterm/issues/942) so we need to be render
both of these.

The simplest way to achieve this is to add a distinct set of texture
coordinates for the attached image and then add a draw pass to alpha
blend it over the glyph content.

The sixel/iterm image processing stage is also adjusted to preserve
the prior cell information and "simply" attach the image info to
the cell.  Previously, the cell would be replaced with a blank cell
with the image attached.

The result of this is that the notcurses-demo intro section can
now render the orca "enveloped in the soft glow of glyphs" rather
than caged in a black box.

Note that there are some cases where the render turns blocky but
I suspect that that is due to some other misunderstanding between
wezterm and notcurses and that we'll root cause it as a follow up.
2021-07-22 09:46:08 -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 config: capture the value of WSLENV, rather than its name 2021-07-22 07:14:03 -07:00
deps fonts: synthesize bold when missing 2021-05-22 16:20:35 -07:00
docs docs: changelog for https://github.com/wez/wezterm/issues/857 2021-07-22 07:52:14 -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 deps: cargo update, and a couple of dependabot suggestions 2021-07-18 19:10:46 -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 allow images to overlay text 2021-07-22 09:46:08 -07:00
termwiz fix background color cloning 2021-07-21 07:56:36 -07:00
test-data Add test-data files for braille characters 2021-07-08 09:30:27 -07:00
tmux-cc tmux: attach control mode parser to terminal 2020-11-20 09:24:50 -08:00
umask Take care to restore the original umask 2021-01-07 09:20:13 -08:00
vtparse vtparse: recognize utf8 encoded c1 codes in more cases 2021-05-08 00:39:29 -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 deps: cargo update, and a couple of dependabot suggestions 2021-07-18 19:10:46 -07:00
wezterm-gui allow images to overlay text 2021-07-22 09:46:08 -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: windows 0.9 -> 0.11 2021-06-16 08:29:09 -07:00
window window: x11: avoid extraneous title updates 2021-07-21 08:58:35 -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, and a couple of dependabot suggestions 2021-07-18 19:10:46 -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.