1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-19 03:11:31 +03:00
Commit Graph

4584 Commits

Author SHA1 Message Date
Andrew V. Jones
81aaab2c1f Add an FAQ entry documenting wezterm's use font shaping/ligatures #1264
Signed-off-by: Andrew V. Jones <andrew.jones@vector.com>
2021-10-25 14:34:46 -07:00
Wez Furlong
f4ee31fe74 cargo update 2021-10-24 19:20:45 -07:00
Wez Furlong
81d40b905f windows: workaround Rust 1.56 bug 88576
Skip initializing pretty logger when running in the windows subsystem.

refs: https://github.com/wez/wezterm/issues/1245
refs: https://github.com/rust-lang/rust/issues/88576
2021-10-24 11:50:16 -07:00
Greg V
c6062d9d22 wayland: Actually properly fix HiDPI initialization
The issue was that surface vs pixel conversions used dpi which wasn't updated yet.
2021-10-23 22:06:04 -07:00
Greg V
a1209096f6 wayland: do not skip reshaping the title on DPI scale change
Otherwise HiDPI screens start out with a too-small title text until the text changes once
2021-10-23 22:06:04 -07:00
Greg V
57a2c660bc wayland: do not reshape_title if it won't be rendered
It's a waste of CPU time
2021-10-23 22:06:04 -07:00
Greg V
a90e6dde75 wayland: frame: fix window title being too high on HiDPI screens 2021-10-23 22:06:04 -07:00
Greg V
6fbb8802c0 wayland: do not spam the compositor with title "changes" that don't change
In the worst case this can cause badly implemented desktop components like panels
to constantly rerender and waste 100% CPU (that's how I found a bug in mine :D)
when anything is constantly updating in the terminal (like viewing a log stream).
2021-10-23 22:06:04 -07:00
Wez Furlong
04768fd1e2 Speculative fix for wonky vertical alignment
The issue seems to correlate with fractional pixels produced
by 0.5cell padding, so let's round down to avoid the fraction.

refs: https://github.com/wez/wezterm/issues/1228
2021-10-21 18:56:11 -07:00
Wez Furlong
124248028f ssh: enable proxycommand overrides via command line for libssh backend 2021-10-21 07:18:26 -07:00
Wez Furlong
c1a766404c config: add ssh_backend config, and default to libssh
refs: #1014
2021-10-21 07:16:42 -07:00
Wez Furlong
6f0757b73c ssh: update for to pick up https://github.com/wez/libssh-rs/pull/1 2021-10-20 21:46:37 -07:00
Wez Furlong
b32e077231 ssh: another bump for debian9 and centos7 2021-10-20 08:28:22 -07:00
Wez Furlong
a55ba2be35 ssh: maybe fix build 2021-10-20 07:53:55 -07:00
Wez Furlong
d74ffbfb75 and capture cargo.lock too 2021-10-20 07:25:03 -07:00
Wez Furlong
7f138409a3 ssh: point to rev with older openssl build tweaks 2021-10-20 07:16:19 -07:00
Wez Furlong
58ad4a2c4b ssh: update to fixed win32 build
refs: #1014
2021-10-19 21:04:56 -07:00
Wez Furlong
d43f1e9e26 ssh: fixup vendored-openssl selection for libssh-rs 2021-10-19 20:33:30 -07:00
Wez Furlong
561eaa69be ssh: adopt dispatch helper in a couple more places 2021-10-19 20:33:30 -07:00
Wez Furlong
5ada8e20cc ssh: adopt dispatch helper for ssh file and dir requests too
@chipsenkbeil: I spotted a latent bug in here that got fixed as
a side effect of this change.  For `write_file` and possibly others,
reply.try_send was only called in the case where file_id was valid.
For an invalid id, I think the caller could hang.

Not sure if this was a problem in practice, but I wonder if it might
have contributed to some of the weird state issues you mentioned.
2021-10-19 20:33:30 -07:00
Wez Furlong
74b763a3f6 ssh: remove some boilerplate 2021-10-19 20:33:30 -07:00
Wez Furlong
199fd6f52f ssh: use only the first known host location for libssh 2021-10-19 20:33:30 -07:00
Wez Furlong
8be442e39b ssh: can now pass e2e tests using libssh backend 2021-10-19 20:33:30 -07:00
Wez Furlong
390fcc56ca ssh: stub out DirWrap::read_dir for libssh 2021-10-19 20:33:30 -07:00
Wez Furlong
e3f5174dcc ssh: introduce separate Dir and DirWrap types 2021-10-19 20:33:30 -07:00
Wez Furlong
9d44cc1720 ssh: introduce SftpWrap 2021-10-19 20:33:30 -07:00
Wez Furlong
a6022f5c65 ssh: allow selecting libssh or ssh2 backend via config
Pass this via the ssh option overrides:

```
wezterm ssh -o wezterm_ssh_backend=libssh hostname
```
2021-10-19 20:33:30 -07:00
Wez Furlong
1f073db776 ssh: flatten out session module 2021-10-19 20:33:30 -07:00
Wez Furlong
75f946c22c ssh: split SessionWrap out 2021-10-19 20:33:30 -07:00
Wez Furlong
65eaa44b0d ssh: split FileWrap out 2021-10-19 20:33:30 -07:00
Wez Furlong
e8b83b29c9 ssh: split ChannelWrap out 2021-10-19 20:33:30 -07:00
Wez Furlong
228df03059 ssh: move sftp module to top level
was getting too deep in there!
2021-10-19 20:33:30 -07:00
Wez Furlong
44bbfd2894 ssh: split SessionInner, out 2021-10-19 20:33:30 -07:00
Wez Furlong
bd47566681 ssh: Improve some logging/diagnostics 2021-10-19 20:33:30 -07:00
Wez Furlong
a8b64a2756 Run with libssh
This works, but on macOS, there is a segfault in openssl when the
session is closed... I'm going to try this on Linux to see if it
is consistent behavior and ponder next steps.
2021-10-19 20:33:30 -07:00
Wez Furlong
0bf50924b1 ssh: stub out libssh impl 2021-10-19 20:33:30 -07:00
Wez Furlong
f1e5c59566 ssh: introduce wrapper enum
This is a pre-cursor step to adding libssh support
2021-10-19 20:33:30 -07:00
Wez Furlong
24875004f6 add canonicalize_pasted_newlines config option
refs: #1213
2021-10-17 13:14:16 -07:00
Wez Furlong
3b12aa1038 mux: mux_env_remove config to control which env var are removed
closes: #1225
2021-10-17 12:46:16 -07:00
Wez Furlong
32d18905cc Add wezterm.background_child_process 2021-10-17 10:37:47 -07:00
Wez Furlong
cf58d5b696 docs: add categories to changelog
Just a quick first-pass for @bew :-)
2021-10-17 10:14:25 -07:00
Wez Furlong
c3c7ac3a58 docs: changelog for #1222 2021-10-17 10:05:05 -07:00
Wez Furlong
9d5a8ec7e8 mux: fix local/remote tab tracking
The issue here is that when spawning a new tab in the mux client,
we didn't record the local/remote tab id mapping.

Subsequently, when processing the overall list of tabs, we'd realize
that the mapping was missing and allocate a new local tab to act
as the holder for the existing remote tab and end up with a strange
aliased view of the tab in a second tab!

This commit establishes that mapping at the time that we spawn
the new pane.

refs: https://github.com/wez/wezterm/issues/1222
2021-10-17 09:52:19 -07:00
Wez Furlong
fb50014ed5 mux: avoid inheriting wrong pane/socket env
The first problem in #1222 is that the environment in the spawned
mux server has inherited the unix socket path from the GUI that
is the client, rather than the mux server.

That means that `wezterm cli` is operating on the mux namespace
of the client (which is a layered/wrapped view of the mux server),
rather than the mux server.

This fixes `wezterm cli split-pane` in the case where unix domains
are in use together with `connect_automatically = true`, although
there is still a really weird issue with tabs that needs to be
run down.

refs: https://github.com/wez/wezterm/issues/1225 (sort of)
refs: https://github.com/wez/wezterm/issues/1222
2021-10-17 09:44:23 -07:00
Wez Furlong
e7fc5f0e9e fix: whole tab terminated when only zoomed pane exited
closes: https://github.com/wez/wezterm/issues/1235
2021-10-17 08:34:35 -07:00
Wez Furlong
d461c1c0b6 deps: lru 0.6 -> 0.7 2021-10-10 19:29:42 -07:00
Wez Furlong
ebd938cadf cargo update 2021-10-10 19:15:00 -07:00
Wez Furlong
52d18d4564 docs: changelog for *BSD toast notifications
https://github.com/wez/wezterm/issues/489
2021-10-10 17:20:36 -07:00
Wez Furlong
774f845289 Enable toast notifications on freebsd
refs: https://github.com/wez/wezterm/issues/489
2021-10-10 17:18:52 -07:00
Wez Furlong
d635512138 wezterm-ssh: restore dep after cargo publish 2021-10-10 16:38:03 -07:00