1
1
mirror of https://github.com/wez/wezterm.git synced 2024-11-23 23:21:08 +03:00
Commit Graph

5717 Commits

Author SHA1 Message Date
Wez Furlong
3018a8f32e launcher: process ESC and CTRL-G ahead of feeding into filter
refs: https://github.com/wez/wezterm/issues/1977
2022-05-13 18:48:51 -07:00
Wez Furlong
95b3770434 termwiz: avoid panic with a malformed escape
`echo "\x9b>-m"` was the trigger
2022-05-13 18:33:45 -07:00
Wez Furlong
97f0bd16f2 launcher: allow CTRL-G to cancel
refs: https://github.com/wez/wezterm/issues/1977
2022-05-12 14:27:30 -07:00
Wez Furlong
64921bf8a1 docs: changelog for #1976 2022-05-12 09:02:39 -07:00
kumattau
ab8ea8b559 Fix X11 IME candidate window position 2022-05-12 09:01:04 -07:00
kumattau
ae4e3a65a2 Fix Windows IME candidate window position 2022-05-12 09:01:04 -07:00
kumattau
cba1cfe533 Fix text cursor position when showing tab bar 2022-05-12 09:01:04 -07:00
Wez Furlong
b2dad7fa32 docs: add Fedora 36 to install page 2022-05-11 21:29:02 -07:00
Wez Furlong
566b58a64b ci: add Fedora 36 2022-05-11 18:25:51 -07:00
Wez Furlong
cd623dffa8 fix xcb raising a fatal error when closing a window
The rust xcb bindings seem to have gotten more strict in 1.x;
previously we might generate two DestroyWindow calls for the same
window when closing one and things were fine, but now the second
call generates a protocol error which has the effect of terminating
the program.

This commit ensures that we only generate a single DestroyWindow
call by zeroing out the saved window_id after we emit it.

refs: #1974
2022-05-11 06:52:52 -07:00
Wez Furlong
3afa00a56c docs: remove centos7 stable link for now
We don't have a current one
2022-05-10 23:33:57 -07:00
Wez Furlong
d56bc3fe9f docs: restore centos7 download links
refs: https://github.com/wez/wezterm/issues/1947
refs: https://github.com/wez/wezterm/issues/1948
2022-05-10 23:20:50 -07:00
Wez Furlong
7e460c3784 ci: restore centos7
It was removed in be1b54ba33 citing
difficulties with GH CLI, but I think I subsequently solved
that by not running it in the container.

refs: https://github.com/wez/wezterm/issues/1947
refs: https://github.com/wez/wezterm/issues/1948
2022-05-10 23:12:11 -07:00
Wez Furlong
ea7571734f config: remove some dead code 2022-05-10 20:57:52 -07:00
Soc Virnyl S. Estela
6f0888cd7d Add install instructions for openSUSE Tumbleweed 2022-05-09 21:58:03 -07:00
Wez Furlong
156b0ae44c ci: skip full build when updating just the .markdown docs 2022-05-09 21:57:18 -07:00
Wez Furlong
e5a483ff8b window: point to re-integrated xkbcommon
refs: https://github.com/rust-x-bindings/xkbcommon-rs/pull/30
2022-05-09 17:24:20 -07:00
Wez Furlong
8523a1b0e7 docs: changelog for https://github.com/wez/wezterm/pull/1953 2022-05-09 07:40:38 -07:00
datasone
74e1cdcb40
Add support for drag and drop files in Windows (#1953)
* Add support for drag and drop files in Windows

* Add two drag and drop filename quoting patterns (mainly) for Windows, change doc examples.

* Code style cleanup

* Improve Windows quoting pattern and rename DoubleQuoteAlways to WindowsAlwaysQuoted

* Improve special char finding for DroppedFileQuoting::Windows and fix doc.
2022-05-09 07:38:52 -07:00
Wez Furlong
7858f652fb input: fix ALT when used for the leader key
The issue here was that we'd try to match this:

```
key_event RawKeyEvent { key: Char('t'), modifiers: ALT | LEFT_ALT, phys_code: Some(T), raw_code: 17, repeat_count: 1, key_is_down: true, handled: Handled(false) }
```

which has mods=`ALT|LEFT_ALT` against `ALT` and would fail.

We need to strip out the positional ALTs from the modifiers
in order to successfully match.

refs: https://github.com/wez/wezterm/issues/1958
2022-05-08 22:34:36 -07:00
Wez Furlong
6484b3adc0 switch macos clipboard crate
This cleans up the `cargo audit` output on linux because the `clipboard`
crate (which hasn't been updated in 3 years) depends on xcb=0.8.2
which is flagged by cargo audit.

We don't use `clipboard` on any platform except macos

This commit switches to the `clipboard_macos` crate; that appears to
use a copy and paste of the macos specific code from the `clipboard`
crate, so this shouldn't have any change in functionality.

refs: https://github.com/wez/wezterm/issues/1952
2022-05-08 21:11:39 -07:00
Wez Furlong
e9e590c64e cargo update
note: this pins the openssl crate to workaround the combination
of these two issues:

refs: https://github.com/sfackler/rust-openssl/issues/1630
refs: https://github.com/sfackler/rust-openssl/pull/1578
2022-05-08 20:50:47 -07:00
Wez Furlong
4b018f564a window: point to my xcb for for IME changes
refs: https://github.com/rust-x-bindings/rust-xcb/pull/190
refs: https://github.com/H-M-H/xcb-imdkit-rs/pull/2
2022-05-08 14:02:25 -07:00
Wez Furlong
0a0a1004eb fixup for imdkit changes 2022-05-08 11:53:47 -07:00
Wez Furlong
b365cdbb94 deps: x11 to 2.19 2022-05-07 14:55:08 -07:00
Wez Furlong
abc42f7bcb window: deps: upgrade to xcb 1.1
Was a bit fiddly.

Eliminated the xcb_util crate

refs: https://github.com/wez/wezterm/issues/1952
2022-05-07 14:52:16 -07:00
Wez Furlong
b25d4d22ee ci: tweak pages workflow a bit more 2022-05-06 20:19:14 -07:00
Wez Furlong
c16ea9b134 ci: maybe improve caching for pages workflow 2022-05-06 20:04:11 -07:00
Wez Furlong
c44fd1a006 docs: changelog for #1592 and #993 2022-05-06 19:53:07 -07:00
Wez Furlong
4cbd185fb2 docs: document copy_mode and search_mode key tables
refs: https://github.com/wez/wezterm/issues/993
2022-05-06 19:47:42 -07:00
Wez Furlong
89e427bd79 overlays: improve key_table handling
This commit re-arranges the code so that an overlay can have a local
stack of key table activations; this allows copy_mode and search_mode
key tables to layer on top of the user's window level key tables.

Previously, we'd just stick the search_mode entry on top of the global
state, which worked, but had the undesirable side effect of hijacking
the Enter key when switching to another tab in the window.

refs: https://github.com/wez/wezterm/issues/993
2022-05-06 17:57:55 -07:00
Wez Furlong
f56345cba4 appimage: exclude libwayland-client.so
It seems to be preventing EGL from working

refs: https://github.com/wez/wezterm/issues/1956
2022-05-06 07:54:05 -07:00
Wez Furlong
021c0a9bcd window: ignore EINTR, which mio now propagates
The upgrade to a newer mio version caused the poll method
to report EINTR in some cases.

We don't need to terminate for those, so suppress it.

refs: https://github.com/wez/wezterm/issues/1955
2022-05-06 06:56:32 -07:00
Wez Furlong
39f53161be copy mode: ctrl-v enables rectangular selection
refs: https://github.com/wez/wezterm/issues/1656
2022-05-05 21:10:06 -07:00
Wez Furlong
ef4a95211e add rectangular selection
Alt-dragging will use rectangular selection in the default mouse
assignments.

refs: https://github.com/wez/wezterm/issues/1361
2022-05-05 20:49:22 -07:00
Wez Furlong
1b00bbaf2f term: remove dead code 2022-05-05 19:29:19 -07:00
Wez Furlong
dc0fde7ae0 search: save last used search term and restore it
When search mode is activated with an empty pattern, restore
the most recently used search term in any pane.

refs: https://github.com/wez/wezterm/issues/1912
2022-05-05 12:12:06 -07:00
Wez Furlong
2710cefb3e merge copy and search overlay code
The copy overlay now has a notion of running in search mode vs. copy
mode; it can be launched in either mode.

Search mode has a separate key table called `search_mode`.

Activating copy mode while search mode is active will now update
the mode of the existing overlay, rather than cancelling and creating
a new instance, and vice versa.

Activating copy mode while search mode is active will replace the
current key table activation (which is assumed to be `copy_mode`)
with `search_mode`, and vice versa.

The viewport is no longer scrolled to the bottom when activating search
mode.

refs: https://github.com/wez/wezterm/issues/993
refs: https://github.com/wez/wezterm/issues/1592
2022-05-05 08:18:04 -07:00
Wez Furlong
865d857050 docs: add key_tables entry in the config reference section
it just points to the main key tables docs
2022-05-05 06:04:46 -07:00
Wez Furlong
94bb4ad09d key tables: we now search the whole stack for match
This change causes key table activations to effectively layer
over prior key table activations.

This is necessary for the copy mode key assignment changes to
work.

refs: https://github.com/wez/wezterm/issues/993
2022-05-04 23:09:21 -07:00
Wez Furlong
551af2f47b define copy_mode key table and use it in copy mode
Moves the key handling in the copy overlay to be driven entirely
by configurable key assignments.

Note: copy mode wants you to use the `Copy` assignment to actually
do the copy, but this implementation hides the normal key assignments
by activating the copy mode key table.  This will be addressed
in the following commit.

refs: https://github.com/wez/wezterm/issues/993
2022-05-04 22:49:58 -07:00
Wez Furlong
99081e757a overlays: capture/restore the key_table_state when activating/closing
refs: https://github.com/wez/wezterm/issues/993
2022-05-04 22:17:22 -07:00
Wez Furlong
de97f16d56 copy mode: add CopyMode key assignment actions
Defines an assignment action for each of the pre-defined actions
in copy mode.

refs: https://github.com/wez/wezterm/issues/993
2022-05-04 21:44:04 -07:00
Wez Furlong
262531631c mux: add Pane::perform_assignment
Allows a pane to override/implement the action for an assignment

refs: https://github.com/wez/wezterm/issues/993
2022-05-04 21:29:07 -07:00
Wez Furlong
69f1f1e7d5 deps: update to rcgen 0.9 2022-05-04 20:16:41 -07:00
Wez Furlong
745bf24d87 deps: upgrade to mio 0.8 2022-05-04 20:16:41 -07:00
Wez Furlong
53c5649b88 deps: nix -> 0.24 2022-05-04 20:16:41 -07:00
Wez Furlong
a6c1680df4 deps: replace pretty_assertions dep with k9 2022-05-04 20:16:41 -07:00
Wez Furlong
ef96646f1c deps: migrate battery to starship-battery
The former is unmaintained and is flagging in cargo audit for its
indirect deps.

The starship folks have forked it; let's use that.

refs: https://github.com/svartalf/rust-battery/pull/92
refs: https://github.com/wez/wezterm/issues/1952
2022-05-04 20:11:48 -07:00
Wez Furlong
cee50fffb8 flush after replying to DECRQM
refs: https://github.com/wez/wezterm/issues/1950
2022-05-03 17:34:33 -07:00