About

October 18, 2022 ยท View on GitHub

screenshot

About

Simple terminal emulator for Wayland and X11 with OpenGL rendering and minimal dependencies.

This is roughly alpha quality, expect bugs!

Features

  • Unicode support
  • Text reflow
  • 24-bit colors
  • Dynamic colors
  • All text properties (squiggly underline, blinking, overline etc.)
  • Resizable font
  • Subpixel antialiasing
  • Mouse reporting
  • Scrollback
  • Mouse text selection
  • Clipboard
  • Configurable keybindings
  • Clickable links, OSC 8 links
  • Command history and marks*
  • Terminal image protocol and sixel graphics (experimental)

Limitations

  • UTF8 mode only
  • No Bidi support
  • No font ligatures

To-Do

  • Search
  • Ibus support
  • Single instance multi window mode
  • All xterm and vte control sequences

Building

make
make install

Dependencies:

  • OpenGL >= 2.1/ES 2.0
  • freetype >= 2.10
  • fontconfig
  • xkbcommon [wayland]
  • xrandr [X11]
  • utf8proc [optional]
  • notify-send [optional]

Build options

To build without X11 or Wayland support set window_protocol=wayland or window_protocol=x11 respectively. With both backends enabled wayst will default to wayland. You can force X11 mode with the xorg-only option.

To target OpenGL ES 2.0 instead of OpenGL 2.1 set renderer=gles20.

To build without libutf8proc set libutf8proc=off.

To build with debuging symbols set mode=debug or mode=debugoptimized.

Installation from AUR

You can install wayst-git from AUR (arch user repository)

yay -S wayst-git

Usage

Configuration file

All option can be set in a configuration file or passed as command line arguments. To see all supported options run wayst --help.

Wayst will look for: $XDG_CONFIG_HOME/wayst/config or $HOME/.config/wayst/config. For an example configuration file see config.example.

Shell integration

Wayst can use iTerm2 shell integration sequences or VTE prompt notifications to track command history.

Default Keybindings

KeysAction
Ctrl+Shift+cCopy to clipboard
Ctrl+Shift+xCopy output of last command to clipboard*
Ctrl+Shift+vPaste from clipboard
Ctrl+Shift+=Increase font size
Ctrl+Shift+-Decrease font size
Ctrl+Shift+Up/DownScroll
Ctrl+Shift+Page Up/DownScroll by page
Ctrl+Shift+Left/RightJump to previous/next command output or mark*
Ctrl+Shift+uEnter unicode character by hex code
Ctrl+Shift+kEnter vi-like keyboard select mode
Ctrl+Shift+dStart new instance in active work directory (set by OSC 7)
Ctrl+Shift+F12HTML screen dump
Ctrl+Shift+\Pipe to external program
LMBSelect text
RMBChange selected region
MMBPaste from primary selection
Shift+LMBSelect text in mouse reporting mode
Ctrl + LMBOpen link/Box select

License

MIT