Skip to content

Releases: wez/wezterm

20201031-154415-9614e117

31 Oct 22:51
Compare
Choose a tag to compare
  • New: split/pane support! CTRL+SHIFT+ALT+" to SplitVertical, and CTRL+SHIFT+ALT+% to SplitHorizontal.
  • New: LEADER modifier key support
  • New: window_background_opacity and window_background_image options to control using background images, transparent windows. More info
  • New color schemes: Dracula+, Gruvbox Light, MaterialDarker, Overnight Slumber, Popping and Locking, Rapture, jubi, nord.
  • New: expanded lua API allows handling URI clicks and keyboard events with lua callbacks. See wezterm.on docs.
  • The GUI layer now normalizes SHIFT state for keyboard processing. If a keypress is ASCII uppercase and SHIFT is held then the SHIFT modifier is removed from the set of active modifiers. This has implications for your key assignment configuration; previously you would write {key="T", mods="CTRL|SHIFT"}, after updating to this release you need to write {key="T", mods="CTRL"} in order for your key bindings to take effect.
  • Added show_tab_index_in_tab_bar option which defaults to true. Causes the tab's ordinal index to be prefixed to tab titles. The displayed number is 1-based. You can set tab_and_split_indices_are_zero_based=true if you prefer the number to be zero based.
  • On Linux and macOS systems, wezterm can now attempt to guess the current working directory that should be set in newly spawned local panes/tabs, in case you don't have OSC 7 integration setup in your shell.
  • We now bundle JetBrains Mono and use it as the default font, and add it as a default fallback font. Similarly, we also bundle Noto Color Emoji as a default fallback for emoji.
  • Added automatically_reload_config=false option to disable automatic config reloading. When set to false, you will need to manually trigger a config reload (default: SUPER+R or CTRL+SHIFT+R)
  • CloseCurrentTab now requires a confirm parameter.
  • Halved the memory usage requirements per Cell in the common case (saving 32 bytes per cell), which gives more headroom for users with large scrollback.
  • Reduced initial GPU VRAM requirement to 2MiB. Improved texture allocation to avoid needing lots of VRAM.
  • macOS: Fix issue where new windows would open as Cocoa tabs when wezterm was maximized.
  • macOS: Fix issue where wezterm wouldn't adjust to DPI changes when dragging across monitors or the screen resolution changed
  • macOS: Reduced trackpad based scrolling sensitivity; it was hyper sensitive in previous releases, and now it is more reasonable.
  • Fix an issue where EGL failed to initialize on Linux
  • If EGL/WGL/OpenGL fail to initialize, we now try to fallback to Mesa OpenGL in software render mode. This should result in its llvmpipe renderer being used as a fallback, which has improved visuals compared to wezterm's own basic CPU based renderer. (This applies to X11/Wayland and Windows systems).
  • Setting front_end="Software" will try to use the Mesa OpenGL software renderer if available (X11/Wayland/Windows). The old basic CPU renderer has been removed.
  • The multiplexer server has been moved into its own wezterm-mux-server executable. You will need to revise your serve_command configuration.
  • Windows: when started in an RDP session, force the use of the Mesa software renderer to work around problems with RDP GPU emulation.
  • Fixed an issue with TLS Multiplexing where bootstrapping certificates would usually fail.
  • Windows: Fixed an issue that prevented ALT-Space from showing the system menu in the window.
  • Windows: Fixed dead key handling. By default dead keys behave the same as in other programs and produce diacritics. However, setting use_dead_keys = false in the config will cause dead keys to behave like a regular key; eg: ^ would just emit ^ as its own character.
  • Windows: Fixed an issue with the Hide key assignment; it would hide the window with no way to show it again! Hide now minimizes the window instead.
  • macOS: we now use Metal to render the gui, via MetalANGLE
  • Windows: we now prefer to use Direct3D11 to render the gui, via ANGLE EGL. The primary benefit of this is that upgrading your graphics drivers while you have a stateful wezterm session will no longer terminate the wezterm process. Resize behavior is not as smooth with ANGLE as the prior WGL. If you wish, you can set prefer_egl = false to use WGL.
  • Improved image protocol support to have better render fidelity and to reduce VRAM usage when the same image it displayed multiple times in the same pane.

20200909-002054-4c9af461

09 Sep 07:27
Compare
Choose a tag to compare
  • Added support for OSC 1 (Icon Title changing), and changed
    how that interacts with OSC 2 (Window Title changing).
    If you specify OSC 1 as a non-empty string, then that will
    be used for the title of that terminal instance in the GUI.
    Otherwise the Window Title will be reported instead.
  • Added missing mappings for Application Keypad keys on Linux
  • Workaround an EGL issue where Mesa reports the least-best
    alpha value when enumerating configs, rather than the best
    alpha. This could lead to incorrect alpha under XWayland
    and failure to initialize EGL and fallbacks to the Software
    renderer in some other cases.
  • enable_wayland now defaults to false; mutter keeps breaking
    client-side window decoration so let's just make it opt-in so
    that the default experience is better.
  • Fixed a crash on Linux/X11 when using wezterm connect HOST
  • Added tab_max_width config setting to limit the maximum
    width of tabs in the tab tab. This defaults to 16 glyphs
    in width.

20200718-095447-d2315640

18 Jul 17:01
Compare
Choose a tag to compare
  • Added support for DECSET 1004 Focus Reporting to local
    (not multiplexer) terminal sessions.
  • Added support for SGR 53/55 which enable/disable Overline style.
    printf "\x1b[53moverline\x1b[0m\n"
  • Windows: updated bundled openconsole.exe to efb1fdd
    to resolve an issue where bold text didn't respect the configured color scheme.
  • Added bold_brightens_ansi_colors option to allow disabling the automatic
    brightening of bold text.
  • Unix: fix an issue where setting the current working directory for a custom
    spawned command would not take effect (thanks @john01dav!)
  • Windows: fixed buffering/timing issue where a response to a color query in
    vim could be misinterpreted and replace a character in the editor with the
    letter g.
  • X11: Improved support for non-24bpp display depths. WezTerm now tries
    harder to obtain an 8bpc surface on both 16bpp and 30bpp (10bpc) displays.
  • Windows: fixed falling back to a simpler OpenGL context if WGL is unable
    to negotiate a robust context. This is useful on systems with dual
    high/low power GPU hardware where the OpenGL versions for the two GPUs
    are different!
  • Color Schemes: synced with ea2c841
    which includes new schemes: Adventure, Banana Blueberry, Blue Matrix,
    BlueBerryPie, Cyberdyne, Django, DjangoRebornAgain, DjangoSmooth,
    DoomOne, Konsolas, Laser, Mirage, Rouge 2, Sakura, Scarlet Protocol, synthwave-everything, Tinacious Design (Dark), Tinacious Design (Light).

20200620-160318-e00b076c

20 Jun 23:09
Compare
Choose a tag to compare
  • Fixed default mapping of ambiguous ctrl key combinations (i, m, [, {,
    @) so that they emit the old school tab, newline, escape etc. values.
    These got broken as part of prototyping CSI-u support a while back.
  • Added option to enable CSI-u key encodings. This is a new mapping scheme
    defined here http://www.leonerd.org.uk/hacks/fixterms/ that disambiguates
    and otherwise enables more key binding combinations. You can enable this
    setting using enable_csi_u_key_encoding = true in your config file.
  • Very early support for sixel graphics
  • macos: use_ime now defaults to false; this is a better out of
    the box experience for most users.
  • macos: we now attempt to set a reasonable default LANG environment based
    on the locale settings at the time that wezterm is launched.
  • macos: introduce send_composed_key_when_left_alt_is_pressed and
    send_composed_key_when_right_alt_is_pressed boolean config settings. Like
    the existing send_composed_key_when_alt_is_pressed option, these control
    whether the Alt or Option modifier produce composed output or generate
    the raw key position with the ALT modifier applied. The difference from the
    existing config option is that on systems where Left and Right Alt can be
    distinguished you now have the ability to control this behavior
    independently. The default behavior on these systems is
    send_composed_key_when_left_alt_is_pressed=false and
    send_composed_key_when_right_alt_is_pressed=true so that the right Alt key
    behaves more like an AltGr key and generates the composed input, while the
    Left Alt is regular uncomposed Alt.
  • Fonts: fixed an issue where specifying italic or bold in the second parameter
    of wezterm.font didn't work as intended or documented
  • Improved terminal emulation conformance; added left/right margin support
    and now passes esctest
    to a similar degree as iTerm2
  • Fixed an issue where unmodified F5+ would use the CSI-u encoded-modifiers
    format, and confused eg: htop.
  • ActivateTab now accepts negative numbers as a way to reference the last
    tab in the Window. The default assignment for CTRL+SHIFT+9 and CMD+9
    is now ActivateTab=-1, which selects the last tab.
  • Fixed an issue when applying hyperlink rules to lines that had mixed width
    characters

20200608-110940-3fb3a61

08 Jun 18:16
Compare
Choose a tag to compare
  • Now available as a homebrew tap and as binaries in AUR
  • Windows: Fixed AltGr handling for European layouts
  • X11: Added PastePrimarySelection key assignment that pastes the contents
    of the primary selection rather than the clipboard.
  • Removed old TOML config file parsing code
  • Removed old arg="something" key binding parameter. This was a remnant from
    the TOML based configuration. You're unlikely to notice this unless you
    followed an example from the docs; migrate instead to using eg:
    action=wezterm.action{ActivateTab=i-1} to pass the integer argument.
  • Windows: now also available with a setup.exe installer. The installer
    enables "Open WezTerm Here" in the explorer.exe context menu.
  • Added ClearScrollback key assignment to clear the scrollback. This is bound to CMD-K and CTRL-SHIFT-K by default.
  • Added Search key assignment to search the scrollback. Read the new
    scrollback section for more information!
  • Fixed an issue where ALT+number would send the wrong output for European
    keyboard layouts on macOS and Linux. As part of this the default behavior
    has changed: we used to force ALT+number to produce ALT+number instead of
    the composed key for that layout. We now emit the composed key by default.
    You can switch to the old behavior either by explicitly binding those keys
    or by setting send_composed_key_when_alt_is_pressed = false in your
    configuration file.
  • Windows: the launcher menu now automatically lists out any WSL environments
    you have installed so that you can quickly spawn a shell in any of them.
    You can suppress this behavior if you wish by setting
    add_wsl_distributions_to_launch_menu = false.
    Read more about the launcher menu
  • Added ActivateCopyMode key assignment to put the tab into mouseless-copy
    mode; use the keyboard to define the selected text region.
    This is bound to CTRL-SHIFT-X by default.

20200608-102924-d979a63

08 Jun 17:33
Compare
Choose a tag to compare
ci: hopefully last tweak for pushing macos homebrew tap

20200608-092131-c5a6862

08 Jun 16:36
Compare
Choose a tag to compare
ci: maybe fix tagging -> homebrew tap

20200607-144723-74889cd4

07 Jun 21:53
Compare
Choose a tag to compare
  • Windows: Fixed AltGr handling for European layouts
  • X11: Added PastePrimarySelection key assignment that pastes the contents
    of the primary selection rather than the clipboard.
  • Removed old TOML config file parsing code
  • Removed old arg="something" key binding parameter. This was a remnant from
    the TOML based configuration. You're unlikely to notice this unless you
    followed an example from the docs; migrate instead to using eg:
    action=wezterm.action{ActivateTab=i-1} to pass the integer argument.
  • Windows: now also available with a setup.exe installer. The installer
    enables "Open WezTerm Here" in the explorer.exe context menu.
  • Added ClearScrollback key assignment to clear the scrollback. This is bound to CMD-K and CTRL-SHIFT-K by default.
  • Added Search key assignment to search the scrollback. Read the new
    scrollback section for more information!
  • Fixed an issue where ALT+number would send the wrong output for European
    keyboard layouts on macOS and Linux. As part of this the default behavior
    has changed: we used to force ALT+number to produce ALT+number instead of
    the composed key for that layout. We now emit the composed key by default.
    You can switch to the old behavior either by explicitly binding those keys
    or by setting send_composed_key_when_alt_is_pressed = false in your
    configuration file.
  • Windows: the launcher menu now automatically lists out any WSL environments
    you have installed so that you can quickly spawn a shell in any of them.
    You can suppress this behavior if you wish by setting
    add_wsl_distributions_to_launch_menu = false.
    Read more about the launcher menu
  • Added ActivateCopyMode key assignment to put the tab into mouseless-copy
    mode; use the keyboard to define the selected text region.
    This is bound to CTRL-SHIFT-X by default.

20200607-142624-9d659486

07 Jun 21:31
Compare
Choose a tag to compare
ci: whoops, fixup path for homebrew tap update

20200607-130724-a909047e

07 Jun 20:14
Compare
Choose a tag to compare
ci: include escape sequence stripper in macos homebrew tap