1
1
mirror of https://github.com/wez/wezterm.git synced 2024-09-20 11:17:15 +03:00
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Go to file
Wez Furlong 58d969e77c gui: Avoid 450ms delay on startup(!)
In the case that the published symlink is stale, our default
client connection logic was to retry connecting with backoff
to give a newly spawned server a chance to startup.

In the context of a newly launched gui process checking to see
if an existing gui process can serve the same request, we don't
need to give it any grace: it will either answer immediately
or be deemed not useful.

This commit limits us to a single connection attempt in the case
where we're not automatically starting the server, which in turn
constrains the overhead to something in the order of microseconds
rather than nearly 0.5 seconds.

While we're in here, I noticed that if we thought we had a socket
to try and that failed, we'd always try to publish a new symlink.
However, if we failed due to mismatched version info, we shouldn't
publish over the top of the already running instance.

refs: #1529
2022-01-10 20:31:01 -07:00
.cargo build static on windows for static openssl linkage 2020-02-02 13:03:07 -08:00
.github Revert "ci: add centos 9" 2022-01-01 17:45:24 -07:00
assets update conpty to d7d89ef354 2022-01-08 09:37:48 -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 docs: WslDomain, default_domain, wsl_domains 2022-01-09 12:23:14 -07:00
codec mux: propagate User Vars across to the client 2022-01-10 18:33:32 -07:00
color-types reduce to a single draw call 2021-07-31 00:23:16 -07:00
config SshDomain: assume_unix -> assume_shell = "Posix" 2022-01-10 08:27:09 -07:00
deps upgrade freetype to 2.11.1 2021-12-20 08:22:34 -07:00
docs docs: changelog for #1526 2022-01-10 18:56:57 -07:00
env-bootstrap env: put appimage bin dir into path 2021-12-01 08:42:02 -07:00
filedescriptor Fix uninit UB in filedescriptor unix.rs 2022-01-06 06:17:54 -08:00
licenses macOS: bundle and use MetalANGLE to enable Metal rendering 2020-10-17 09:34:01 -07:00
luahelper Add get_foreground_process_name, expose it and cwd in PaneInformation 2021-12-23 18:49:17 -07:00
mux SshDomain: assume_unix -> assume_shell = "Posix" 2022-01-10 08:27:09 -07:00
procinfo procinfo: tidy up windows impl a bit 2022-01-01 10:01:19 -07:00
promise wezterm-gui start now prefers to run via existing gui instance 2022-01-07 17:12:35 -07:00
pty new: WslDomain, a variant on the local domain 2022-01-08 15:05:05 -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 move strip-ansi-escapes into its own crate 2020-10-03 11:15:57 -07:00
tabout termwiz: s/Fuschia/Fuchsia/g 2021-12-21 20:38:59 -07:00
term mux: propagate User Vars across to the client 2022-01-10 18:33:32 -07:00
termwiz deps: ordered-float -> 2.10 2022-01-09 19:25:48 -07:00
test-data Respect emoji-variation-sequences.txt 2021-11-25 14:37:24 -07:00
tmux-cc tmux-cc: fix suspicious-looking decimal literals 2021-10-27 12:56:48 -07:00
umask Take care to restore the original umask 2021-01-07 09:20:13 -08:00
vtparse vtparse: publish 0.6.0 2021-12-22 13:00:17 -07:00
wezterm gui: Avoid 450ms delay on startup(!) 2022-01-10 20:31:01 -07:00
wezterm-client gui: Avoid 450ms delay on startup(!) 2022-01-10 20:31:01 -07:00
wezterm-font deps: ordered-float -> 2.10 2022-01-09 19:25:48 -07:00
wezterm-gui gui: Avoid 450ms delay on startup(!) 2022-01-10 20:31:01 -07:00
wezterm-gui-subcommands wezterm ssh and wezterm serial: now support --class 2022-01-09 13:18:08 -07:00
wezterm-input-types gui: revise win32-input-mode flow 2022-01-07 13:02:09 -07:00
wezterm-mux-server mux server: redirect stdout,stderr to log file on Windows 2021-12-05 10:11:43 -08:00
wezterm-mux-server-impl remove stray dbg! 2022-01-10 18:39:59 -07:00
wezterm-ssh Add features to enable vendored-openssl for ssh2 and libssh-rs individually 2022-01-09 19:36:56 -08:00
wezterm-toast-notification cargo update, including updating zbus to 2.0.0 stable 2022-01-09 19:29:29 -07:00
window window: x11/wayland keyboard: try harder to populate Composing info 2022-01-09 08:25:25 -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 mux: understand process tree, add mux-is-process-stateful event 2021-12-18 09:46:00 -07: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 cargo update, including updating zbus to 2.0.0 stable 2022-01-09 19:29:29 -07:00
Cargo.toml remove patched openssl-sys crate 2021-11-03 06:38:20 -07:00
CONTRIBUTING.md Add get-deps script for installing dependencies 2018-02-25 09:24:56 -08:00
get-deps Apply suggestions from code review 2021-11-09 07:47:57 -08:00
LICENSE.md gui: bundle and use Roboto for title font on Linux + Windows 2021-12-30 17:51:22 -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.