1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-27 15:37:29 +03:00
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Go to file
Wez Furlong e241ea58be
kitty keeb: move encoding logic to wezterm-input-types
We need access to the underlying raw/physical key in order
to correctly encode in some modes, so we need the full KeyEvent
struct for that.

Move the encoder up so it sits alongside the win32 input mode
encoder.

This should give us better results for both shifted/unshifted
and the "base layout" (US english) representations of a number
of keys.

Note that this is still not 100% technically correct: the unshifted
keys require knowledge of the keyboard layout that we don't have
at this OS-independent layer.

Right now we're assuming a US layout to unshift punctuation, which
is not right if you're not using that layout.  To resolve that,
more work is needed on each OS to be able to extract that information
and then to store it in the KeyEvent.

refs: https://github.com/wez/wezterm/issues/3479
refs: https://github.com/wez/wezterm/issues/2546
2023-04-10 08:54:03 -07:00
.cargo build static on windows for static openssl linkage 2020-02-02 13:03:07 -08:00
.github Push folks towards the bug report template 2023-04-07 11:50:58 -07:00
assets docs: update for wezterm replay changes 2023-04-08 08:35:14 -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
bidi fix(clippy): Use faster methods on Iterators 2023-03-19 07:29:23 -07:00
bintree Add SplitPane assignment 2022-05-21 21:09:11 -07:00
ci docs: update for 20230408-112425-69ae8472 release 2023-04-08 15:01:26 -07:00
codec expose the tty name associated with a pane 2023-04-06 17:13:07 -07:00
color-types fix(clippy): Implement From instead of Into 2023-04-03 08:31:12 -07:00
config build: revise dep graph for version changes 2023-04-08 17:03:03 -07:00
deps build: fix some log spew on macos 2023-04-08 17:03:03 -07:00
docs fixup kitty keyboard encoding for F1-F4 2023-04-08 18:19:07 -07:00
env-bootstrap build: revise dep graph for version changes 2023-04-08 17:03:03 -07:00
filedescriptor Image decoding is now done in a bg thread 2023-03-17 11:41:20 -07:00
frecency refactor: replace the deprecated usage of chrono::TimeZone::ymd 2022-11-20 09:39:10 -08:00
lfucache lfucache: improve LFU algorithm and structure 2022-11-14 10:00:49 -07:00
licenses macOS: bundle and use MetalANGLE to enable Metal rendering 2020-10-17 09:34:01 -07:00
lua-api-crates expose the tty name associated with a pane 2023-04-06 17:13:07 -07:00
luahelper fix(clippy): Remove unnecessary clone/to_string calls 2023-03-16 07:40:12 -07:00
mux config: defer evaluating default wsl domains 2023-04-08 08:51:47 -07:00
procinfo fix(clippy): Remove closures where possible 2023-03-19 08:41:38 -07:00
promise fix(clippy): Remove closures where possible 2023-03-19 08:41:38 -07:00
pty pty: fix unused import warning on windows 2023-04-08 11:13:12 -07:00
rangeset rangeset: fix accidentally quadratic complexity 2022-07-24 12:48:02 -07:00
ratelim ratelimit: remove indirect dep on quanta 2023-04-08 15:47:34 -07:00
strip-ansi-escapes deps: update to clap 4 2022-10-04 08:55:31 -07:00
sync-color-schemes schemes: fix origin url when importing toml files 2023-04-07 10:48:19 -07:00
tabout fixup images with the multiplexer 2023-03-23 21:43:28 -07:00
term mux: allow client to provide palette to mux server 2023-03-31 08:02:32 -07:00
termwiz kitty keeb: move encoding logic to wezterm-input-types 2023-04-10 08:54:03 -07:00
test-data add tty-test.txt for showing most attributes 2022-09-08 08:14:29 -07:00
umask fix(clippy): Remove unnecessary clone/to_string calls 2023-03-16 07:40:12 -07:00
vtparse Add missing license files 2022-08-17 07:19:12 -07:00
wezterm wezterm replay: add --explain-only and --cat options 2023-04-07 18:19:47 -07:00
wezterm-blob-leases deps: update sha2 2023-03-26 19:50:53 -07:00
wezterm-client add wezterm cli get-pane-direction 2023-04-05 07:00:49 -07:00
wezterm-dynamic fix(clippy): Remove closures where possible 2023-03-19 08:41:38 -07:00
wezterm-font add display_pixel_geometry config option for subpixel geometry 2023-04-01 11:05:09 -07:00
wezterm-gui kitty keeb: move encoding logic to wezterm-input-types 2023-04-10 08:54:03 -07:00
wezterm-gui-subcommands Add serial_ports config 2023-03-29 19:05:13 -07:00
wezterm-input-types kitty keeb: move encoding logic to wezterm-input-types 2023-04-10 08:54:03 -07:00
wezterm-mux-server mux: fix pid file locking 2023-03-29 06:10:11 -07:00
wezterm-mux-server-impl add wezterm cli get-pane-direction 2023-04-05 07:00:49 -07:00
wezterm-open-url remove open dependency 2023-03-19 13:12:20 -07:00
wezterm-ssh expose the tty name associated with a pane 2023-04-06 17:13:07 -07:00
wezterm-toast-notification add own open_url crate 2023-03-19 12:44:12 -07:00
wezterm-version build: revise dep graph for version changes 2023-04-08 17:03:03 -07:00
window keyboard: improve support for numpad buttons 2023-04-09 12:28:30 -07:00
.cirrus.yml ci: use freebsd 13 2023-02-01 08:05:08 -07:00
.gitignore docs: simplify templating of install pages 2023-03-21 09:31:49 -07:00
.gitmodules repoint to my freetype mirror 2021-02-03 21:56:30 -08:00
.mailmap add .mailmap 2022-12-07 12:09:06 -08:00
.rustfmt.toml encoding my preferred import grouping in the rustfmt config 2022-01-17 13:50:51 -07:00
Cargo.lock kitty keeb: move encoding logic to wezterm-input-types 2023-04-10 08:54:03 -07:00
Cargo.toml add own open_url crate 2023-03-19 12:44:12 -07:00
CONTRIBUTING.md Update rust by example url 2022-07-29 13:18:53 -07:00
get-deps ci: persuade zypper to install deps in get-deps 2023-03-21 20:01:57 -07:00
LICENSE.md Bundle Symbols Nerd Font Mono 2022-01-16 16:04:35 -07:00
mkdocs_macros.py docs: simplify templating of install pages 2023-03-21 09:31:49 -07:00
README-DISTRO-MAINTAINER.md fonts: remove last resort font 2022-09-15 08:23:58 -07:00
README.md Expand sponsor section of readme 2023-04-02 23:37:54 -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

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.

Supporting the Project

If you use and like WezTerm, please consider sponsoring it: your support helps to cover the fees required to maintain the project and to validate the time spent working on it!

Read more about sponsoring.