1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-25 06:12:16 +03:00
Commit Graph

2273 Commits

Author SHA1 Message Date
Wez Furlong
77fafd512b termwiz: add example program that strips escape sequences 2020-05-17 21:30:12 -07:00
Wez Furlong
eaafce59ce wezterm: link to correct section of changelog in the update ui 2020-05-17 14:18:28 -07:00
Wez Furlong
81683bd898 docs: fixup latest tag in the docs 2020-05-17 12:34:07 -07:00
Wez Furlong
92c201c657 wezterm: release 20200517-122836
* AppImage: Support looking for configuration in `WezTerm.AppImage.config` and
  `WezTerm.AppImage.home` to support portable thumbdrive use of wezterm on
  linux systems
* We now check the github releases section for updated stable releases and show
  a simple UI to let you know about the update, with links to download/install
  it.  We don't automatically download the release: just make a small REST API
  call to github.  There is no data collection performed by the wezterm project
  as part of this.  We check once every 24 hours.  You can set
  `check_for_updates = false` in your config to disable this completely if
  desired, or set `check_for_updates_interval_seconds` to an alternative update
  interval.
* Added support for OSC 110-119 to reset dynamic colors, improving our support for Neovim.
* Change OSC rendering to use the long-form `ST` sequence `ESC \` rather than
  the more convenient alternative `BEL` representation, which was not
  recognized by Neovim when querying for color information.
* Fixed Shift-Tab key on X11 and Wayland
* WezTerm is now also available to Windows users via [Scoop](https://scoop.sh/)
2020-05-17 12:31:03 -07:00
Wez Furlong
1d154a3109 pty: bump for 0.3.0 release
Since the last release we've migrated from failure -> anyhow,
added more functions to the command builder, improved windows
support and have compatibility with the `smol` crate.

refs: https://github.com/wez/wezterm/issues/166
2020-05-17 12:14:55 -07:00
Wez Furlong
1ad6f00696 termwiz: cut 0.9.0 release 2020-05-17 12:05:46 -07:00
Wez Furlong
c45ab2ddd9 Add note about shift-tab fix 2020-05-17 11:57:33 -07:00
Wez Furlong
3349ef0dca termwiz: fix categorization of F keys
refs: https://github.com/wez/wezterm/issues/178
2020-05-16 17:25:23 -07:00
Wez Furlong
4eee0f01fa changelog: remove the section about X11 selection
it was reverted, so no longer applies!
2020-05-16 15:56:19 -07:00
Wez Furlong
a92b33c727 Revert "window: default to reading the PRIMARY selection under X11"
This reverts commit 5ebdcc3642.

It turns out not to be desirable, so lets back it out and think up
a different way to satisfy this.
2020-05-16 15:55:20 -07:00
Wez Furlong
91339d6d17 docs: add note about available in Scoop 2020-05-16 12:56:38 -07:00
Wez Furlong
72d04597d4 update changelog 2020-05-16 12:45:20 -07:00
Wez Furlong
5ebdcc3642 window: default to reading the PRIMARY selection under X11
We switched to using clipboard because of problems under XWayland.
These days we have much better native Wayland support and folks
should use that.

Test plan:

In one window:

```
echo "clipboard" | xclip -i -selection clipboard; echo "primary" | xclip -i -selection primary;
```

then start `wezterm` and press shfit-insert.

Prior to this change we'd always print `clipboard`.
After this change we'll print `primary`.

However, if you run:

```
WEZTERM_X11_PREFER_CLIPBOARD_OVER_PRIMARY=1 wezterm
```

then we'll use the old `clipboard` behavior.
2020-05-16 11:53:42 -07:00
Wez Furlong
f2b12c64ba termwiz: use long form ST when rendering OSC
Neovim doesn't like using BEL as an alternative for ST when
parsing the OSC dynamic color responses.

Use the longer form sequence to make it happier!
2020-05-16 11:01:26 -07:00
Wez Furlong
4522ebfb40 fontconfig: reduce trace logging verbosity 2020-05-16 10:30:01 -07:00
Wez Furlong
b00f383f2b Suppress logging about CSI 8 Y ; X t
neovim will try to force the window to resize after suspend/resume.
No other terminal allows this today, so rather than log it as an
unhandled event, explicitly ignore it.
2020-05-16 09:56:43 -07:00
Wez Furlong
a3921a73fa Explicitly ignore focus tracking (dec private mode 1004)
We still don't support it, but we no longer log that we don't
know what the mode is.
2020-05-16 09:31:02 -07:00
Wez Furlong
a1c0cabf18 term: process OSC 110+: ResetDynamicColors
neovim uses these
2020-05-16 09:25:17 -07:00
Wez Furlong
538ce5e110 window: fix shift-tab processing on X11
This was being silently swallowed.  For some reason shift-tab generates
ISO Left Tab rather than regular Tab and we weren't mapping that.
2020-05-16 08:35:25 -07:00
Wez Furlong
2ef985aa18 pty: async example using smol
refs: https://github.com/wez/wezterm/issues/166
2020-05-09 11:24:14 -07:00
Wez Furlong
e2d044bb14 pty: add MasterPty::try_clone_writer 2020-05-09 11:24:14 -07:00
Wez Furlong
c54c64f395 pty: remove experimental awaitable bits 2020-05-09 11:24:14 -07:00
Wez Furlong
65cc7bb286 filedescriptor: probe for pipes between wsl and win32
This is a port of something I found when developing some changes
in watchman.  When doing something like:

`some win32 command | wsl something`

That pipe doesn't look like a normal win32 pipe and we'd end up
treating it like a socket, but it isn't really a socket either.
2020-05-09 10:56:53 -07:00
Wez Furlong
d39c16c406 wezterm: check for new releases
This commit adds some plumbing that will use the github API to
probe the currently released version of wezterm, and if it is
newer than the running version, show a window with some release
information and links to the changelog and download page.

The checks can be disabled in the config (but require a restart
to take effect!) and default to checking every 24 hours.

If running an AppImage on linux, links directly to the appimage
download.  In the future I'd like to have the download button
use zsync to apply the update to the local image.
2020-05-08 22:18:31 -07:00
Wez Furlong
407e4f855c fix build on windows 2020-05-06 20:53:51 -07:00
Wez Furlong
c53ab60940 wezterm: support portable AppImage invocation
https://github.com/AppImage/AppImageKit/issues/368 introduced a way
to maintain configuration alongside an AppImage file stored on a
flash drive:

```
wez@cube-localdomain  /tmp/portable-wezterm
9:06 130 $ ls -al
total 8720
drwxrwxr-x.  4 wez  wez      100 May  6 08:54 ./
drwxrwxrwt. 19 root root     580 May  6 09:05 ../
-rwxr-xr-x.  1 wez  wez  8929256 May  6 08:59 WezTerm-20200505-090057-31c6155f-Fedora31.AppImage*
drwxrwxr-x.  3 wez  wez       60 May  6 08:15 WezTerm-20200505-090057-31c6155f-Fedora31.AppImage.config/
drwxrwxr-x.  2 wez  wez       40 May  6 08:54 WezTerm-20200505-090057-31c6155f-Fedora31.AppImage.home/
```

When launched and these `<IMAGE>.config` and/or `<IMAGE>.home` dirs
exist, the appimage machinery will redirect the HOME and XDG_CONFIG_DIR
env vars to point to those locations instead of the normal place.

We weren't respecting XDG_CONFIG_DIR (fixed in this commit), but we also
need to take care: we don't want to re-export those locations to
children of wezterm so we need to load those values and then clean
up the environment.
2020-05-06 09:11:13 -07:00
Wez Furlong
31c6155f2b wezterm: avoid weird argv0 misrepresentation with AppImage 2020-05-05 08:57:31 -07:00
Wez Furlong
e6d9183e5b meant to update the workflows too! 2020-05-05 00:03:07 -07:00
Wez Furlong
3d7fc38bb6 Embed update info into appimage 2020-05-04 23:38:50 -07:00
Wez Furlong
90de55f807 include appstream data in AppImage 2020-05-04 22:55:33 -07:00
Wez Furlong
d740281fde docs: move appimage ahead of other linux instructions 2020-05-04 22:01:12 -07:00
Wez Furlong
21f3591aed CI: add centos 8 builds 2020-05-04 21:55:23 -07:00
Wez Furlong
e74f467c39 correctly fix #173
The real problem was an inconsistency in computing the tab bar
enablement state.  This makes the math the same in both places
and re-enables the `hide_tab_bar_if_only_one_tab` option.
2020-05-04 08:39:55 -07:00
Wez Furlong
921719267f Add Fedora 32 to the CI builds and download docs 2020-05-04 07:38:14 -07:00
Wez Furlong
c207f2b545 prep docs for ubuntu 20 download 2020-05-03 23:10:42 -07:00
Wez Furlong
8e75ed10ff get-deps: add missing dep for ubuntu 2020-05-03 22:45:10 -07:00
Wez Furlong
79e5c0e52d CI: set debconf to non-interactive and unblock ubuntu20
Also using sudo in the CI config if we don't need it.
2020-05-03 22:37:31 -07:00
Wez Furlong
132529cfd5 support Terminal identification sequence
This reports the TERM_PROGRAM and TERM_PROGRAM_VERSION
separated by a space.

See discussion in https://github.com/mintty/mintty/issues/881
with a more concise description of the functionality here in
this VTE issue: https://gitlab.gnome.org/GNOME/vte/-/issues/235

```bash
$ printf '\033[>q'; cat
^[P>|WezTerm 20200503-171512-b13ef15f-4-g0395639a^[\
```
2020-05-03 22:10:38 -07:00
Wez Furlong
0395639ab4 wezterm: export TERM_PROGRAM and TERM_PROGRAM_VERSION
There's some discussion about terminal identification and
there's what looks to be some consensus for adopting these
two environment variables that were pioneered by Apple.

refs: https://github.com/mintty/mintty/issues/881
2020-05-03 21:21:06 -07:00
Wez Furlong
27a7b6b2fd docs: fill in version in place of "nightly" for some newer features 2020-05-03 18:24:55 -07:00
Wez Furlong
3b5ad6140e docs: update changelog for latest release 2020-05-03 18:22:49 -07:00
Wez Furlong
a21a913446 docs: link to new debian/ubuntu packages
flesh out the download docs a bit and link to the new debs
2020-05-03 18:18:55 -07:00
Wez Furlong
b13ef15f28 Revise doc build for recent CI changes 2020-05-03 17:14:46 -07:00
Wez Furlong
7018720d97 docs: centralize doc building logic to ci script 2020-05-03 16:28:12 -07:00
Wez Furlong
ba804589fd Generate builds for more platforms
tweak some container names

fixup container names and regenerate the config

Ensure that curl is installed

the rust toolchain stuff wants curl

run apt update before apt install

centralize updating apt, and install sudo

revise get-deps script for slimmer debian images

more container related tweaks

get-deps: Don't require lsb-release on debianish systems

more get-deps improvements

Explicitly ask GH actions to recursively checkout the repo

Explicitly install git

fetch tags and tweak git build for debian systems

moar adjustments

remove deb8 (its wayland is too old), fixup debian publish

Ensure git build deps are installed always, tidy up sudo usage
2020-05-03 15:11:35 -07:00
Wez Furlong
cec3b457b6 Update changelog to reflect changes since last release 2020-05-03 10:45:43 -07:00
Wez Furlong
d3cb27129c upgrade to latest smithay client toolkit
This version greatly improves the client side decoration handling
under Wayland and allows rendering the window title in the titlebar
(shocker!).
2020-05-03 10:31:30 -07:00
Wez Furlong
fa32457656 cargo fmt 2020-05-02 17:39:45 -07:00
Wez Furlong
94bccf1dfb fix compilation on windows 2020-05-02 17:04:28 -07:00
Wez Furlong
7f131fa406 fix infinite recursion when enable_tab_bar is disabled
We need to gate with the config generation check as update_title
can be called during the configuration reloading process and
the tab bar state may not reflect the config until after the
config is reloaded!

refs: https://github.com/wez/wezterm/issues/173
2020-05-02 16:04:34 -07:00