1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-24 13:52:55 +03:00
A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust
Go to file
Wez Furlong 9d9f3c3c1a lua: add GuiWin and PaneObject proxies for use in script
This commit adds very basic first passes at representing the Pane
and GuiWindow types in lua script.

The `open-uri` event from 9397f2a2db
has been redefined to receive `(window, pane, uri)` parameters
instead of its prior very basic `uri` parameter.

A new key assignment `wezterm.action{EmitEvent="event-name"}` is
now available that allows a key binding assignment to emit an arbitrary
event, which in turn allows for triggering an arbitrary lua callback
in response to a key or mouse click.

`EmitEvent` passes the `(window, pane)` from the triggering window and
pane as parameters.

Here's a brief example:

```lua
local wezterm = require 'wezterm';

wezterm.on("my-thingy", function(window, pane)
  local dims = pane:get_dimensions();
  wezterm.log_error("did my thingy with window " .. window:window_id() ..
    " pane " .. pane:pane_id() .. " " .. dims.cols .. "x" .. dims.viewport_rows);
  window:perform_action("IncreaseFontSize", pane);
end)

return {
  keys = {
     {key="E", mods="CTRL", action=wezterm.action{EmitEvent="my-thingy"}},
  }
}
```

refs: #223
refs: #225
2020-10-09 13:55:36 -07:00
.cargo build static on windows for static openssl linkage 2020-02-02 13:03:07 -08:00
.github Automate updating linuxbrew tap 2020-07-05 09:40:52 -07:00
assets windows: Software frontend is now mesa llvmpipe 2020-10-01 18:31:57 -07:00
async_ossl fixup tls mux sessions 2020-10-04 21:47:12 -07:00
base91 dyn everywhere 2019-06-08 21:28:11 -07:00
bintree wezterm: improve pane resize logic 2020-09-27 16:07:08 -07:00
ci ci: update PKGBUILD.template for license file addition 2020-10-06 13:24:35 -07:00
codec fixup tls mux sessions 2020-10-04 21:47:12 -07:00
config lua: add GuiWin and PaneObject proxies for use in script 2020-10-09 13:55:36 -07:00
deps fixup win32 build 2020-08-29 10:03:07 -07:00
docs wezterm: add automatically_reload_config=false option 2020-09-30 08:47:41 -07:00
filedescriptor fix filedescriptor::poll on macos 2020-09-10 13:58:14 -07:00
luahelper lua: add GuiWin and PaneObject proxies for use in script 2020-10-09 13:55:36 -07:00
mux lua: add GuiWin and PaneObject proxies for use in script 2020-10-09 13:55:36 -07:00
promise fix clipboard on x11 2020-10-09 11:07:18 -07:00
pty pty: update async example for more recent smol release 2020-10-03 11:15:57 -07:00
rangeset mux: reintroduce server side state to gate pushes 2020-01-10 08:56:27 -08: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 vtparse: fix DCS parsing 2020-06-09 09:03:08 -07:00
term fix cargo doctest warning 2020-10-03 11:15:57 -07:00
termwiz termwiz: fix bounds checking in Line::compute_double_click_range 2020-09-27 12:38:58 -07:00
umask Move server to its own wezterm-mux-server binary 2020-10-03 11:15:57 -07:00
vtparse vtparse: fix doc link 2020-06-13 08:00:43 -07:00
wezterm lua: add GuiWin and PaneObject proxies for use in script 2020-10-09 13:55:36 -07:00
wezterm-mux-server wezterm: allow overriding the default open-uri event 2020-10-07 18:26:16 -07:00
window fix clipboard on x11 2020-10-09 11:07:18 -07:00
.cirrus.yml ci: moar freebsd 2020-10-06 09:53:45 -07:00
.gitignore Automate updating linuxbrew tap 2020-07-05 09:40:52 -07:00
.gitmodules fix CI: savannah is down, use a github mirror for freetype 2019-11-24 13:28:02 -08:00
.rustfmt.toml Make rustfmt happy about "async move" 2020-01-20 13:58:21 -08:00
Cargo.lock lua: add GuiWin and PaneObject proxies for use in script 2020-10-09 13:55:36 -07:00
Cargo.toml move strip-ansi-escapes into its own crate 2020-10-03 11:15:57 -07:00
CONTRIBUTING.md Add get-deps script for installing dependencies 2018-02-25 09:24:56 -08:00
get-deps ci: add freebsd CI 2020-09-09 00:18:26 -07:00
LICENSE.md wezterm: bundle JetBrains Mono and Noto Color Emoji fonts 2020-09-29 22:05:18 -07:00
README.md docs: add a bit about contributing 2020-06-16 22:16:56 -07:00
wt-record make it a bit easier to consume wt-record 2020-06-12 08:51:15 -07:00
wt-replay update record/play scripts for macos 2019-03-22 20:41:50 -07:00

Wez's Terminal

A GPU-accelerated cross-platform terminal emulator and multiplexer written by @wez and implemented in Rust

User facing home page 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 two channels for support:

The Matrix/Gitter room is probably better suited to questions than it is to bug reports, but don't be afraid to use whichever you are most comfortable using and we'll work it out.