1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-26 14:54:16 +03:00
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Go to file
Wez Furlong c8c3b8378a ssh: avoid busy loop when all channels are closed on the session
We need to notice when all of the streams associated with a channel are
closed and remove the channel from the set that we're polling in the
main loop, to avoid continually polling the closed descriptors.

Additionally, if the Session has been dropped, we know that we cannot
be asked to create any new channels, so if there are no more channels
then we can and should exit that dispatch loop and allow the resources
to be cleaned up.

refs: https://github.com/wez/wezterm/issues/1993#issuecomment-1130539934
2022-05-19 21:02:06 -07:00
.cargo build static on windows for static openssl linkage 2020-02-02 13:03:07 -08:00
.github ci: separate out the fuzzer to a separate step 2022-05-14 09:31:44 -07:00
assets ci: restore centos7 2022-05-10 23:12:11 -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 remove serde from bidi 2022-05-18 09:25:41 -07:00
bintree bintree: clippy lint 2021-03-26 09:01:54 -07:00
ci add pane:get_foreground_process_info() 2022-05-14 09:14:35 -07:00
codec mux: try to detect invalid data on stdout during connection 2022-04-11 21:08:57 -07:00
color-types fixup a couple more cases found by fuzzing 2022-05-14 08:46:37 -07:00
config deps: prune some unused deps 2022-05-19 06:48:09 -07:00
deps update harfbuzz to 4.2.1 2022-04-24 16:40:53 -07:00
docs fix typo 2022-05-19 18:02:46 -07:00
env-bootstrap config: split out lua functions into their own crates 2022-05-19 06:48:09 -07:00
filedescriptor filedescriptor: bump version for package publish 2022-01-21 17:08:23 -07:00
licenses macOS: bundle and use MetalANGLE to enable Metal rendering 2020-10-17 09:34:01 -07:00
lua-api-crates fixup win32 build 2022-05-19 09:23:32 -07:00
luahelper restore pretty printing lua values in repl 2022-05-18 07:47:39 -07:00
mux deps: prune some unused deps 2022-05-19 06:48:09 -07:00
procinfo cut more things over to dynamic 2022-05-18 07:47:39 -07:00
promise wezterm-gui start now prefers to run via existing gui instance 2022-01-07 17:12:35 -07:00
pty pty: fix compilation warning on !windows 2022-04-19 13:58:27 -07:00
rangeset Speedup font loading with fontconfig and freetype. 2021-09-06 10:53:01 -07:00
ratelim move ratelim to its own crate 2020-10-03 11:15:57 -07:00
strip-ansi-escapes Fix typo in strip-ansi-escapes --help output 2022-01-18 06:18:15 -08:00
tabout termwiz: prep for crates.io 2022-04-07 07:27:54 -07:00
term deps: prune some unused deps 2022-05-19 06:48:09 -07:00
termwiz config: cut over to wezterm-dynamic 2022-05-18 07:47:39 -07:00
test-data x11: window icon had red/blue channels swapped 2022-03-23 07:01:26 -07:00
umask Take care to restore the original umask 2021-01-07 09:20:13 -08:00
vtparse deps: replace pretty_assertions dep with k9 2022-05-04 20:16:41 -07:00
wezterm wezterm: tweak help out for wezterm cli 2022-04-25 07:45:30 -07:00
wezterm-client ssh: avoid busy loop when all channels are closed on the session 2022-05-19 21:02:06 -07:00
wezterm-dynamic dynamic: improve error messaging 2022-05-18 13:39:51 -07:00
wezterm-font deps: prune some unused deps 2022-05-19 06:48:09 -07:00
wezterm-gui config: split out lua functions into their own crates 2022-05-19 06:48:09 -07:00
wezterm-gui-subcommands flesh out % based and named display for positioning on Windows 2022-04-02 11:11:28 -07:00
wezterm-input-types config: cut over to wezterm-dynamic 2022-05-18 07:47:39 -07:00
wezterm-mux-server mux: pass current window_id to Domain::attach 2022-04-17 18:07:58 -07:00
wezterm-mux-server-impl deps: update to rcgen 0.9 2022-05-04 20:16:41 -07:00
wezterm-ssh ssh: avoid busy loop when all channels are closed on the session 2022-05-19 21:02:06 -07:00
wezterm-toast-notification fix hang with open crate when spawning the browser 2022-03-15 07:50:08 -07:00
window wayland: clipboard: fix pasting if active surface id was not set 2022-05-16 14:18:28 -07:00
.cirrus.yml Ensure /run/sshd exists, explicitly set username in sshd fixture, add back use_privilege_mode no 2021-10-10 14:54:45 -07:00
.gitignore termwiz: use perfect hashing for emoji variation sequences 2022-04-26 19:10:00 -07:00
.gitmodules repoint to my freetype mirror 2021-02-03 21:56:30 -08:00
.rustfmt.toml encoding my preferred import grouping in the rustfmt config 2022-01-17 13:50:51 -07:00
Cargo.lock fixup win32 build 2022-05-19 09:23:32 -07:00
Cargo.toml restore pretty printing lua values in repl 2022-05-18 07:47:39 -07:00
CONTRIBUTING.md Add get-deps script for installing dependencies 2018-02-25 09:24:56 -08:00
get-deps get-deps: add artix distribution 2022-05-14 17:49:22 -07:00
LICENSE.md Bundle Symbols Nerd Font Mono 2022-01-16 16:04:35 -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.