/wezterm-config

My wezterm config

Primary LanguageLuaMIT LicenseMIT

My WezTerm Config

Stargazers Issues Build

screenshot


Features

  • Background Image Selector

    Uses wezterm.read_dir to scan the backdrops directory for images.

    See: key bindings for usage

  • GPU Adapter Selector

    💡 Only works if the front_end option is set to WebGpu.

    A small utility to select the best GPU + Adapter (graphics API) combo for your machine.

    GPU + Adapter combo is selected based on the following criteria:

    1. Best GPU available

      Discrete > Integrated > Other (for wgpu's OpenGl implementation on Discrete GPU) > Cpu

    2. Best graphics API available (based off my very scientific scroll a big log file in Neovim test 😁)

      💡
      The available graphics API choices change based on your OS.
      These options correspond to the APIs the wgpu crate (which powers WezTerm's gui in WebGpu mode)
      currenly has support implemented for.
      See: https://github.com/gfx-rs/wgpu#supported-platforms for more info

      • Windows: Dx12 > Vulkan > OpenGl
      • Linux: Vulkan > OpenGl
      • Mac: Metal

Getting Started

 

  • Steps:
    1. # On Windows and Unix systems
      git clone https://github.com/KevinSilvester/wezterm-config.git ~/.config/wezterm
    2. And Done!!! 🎉🎉

 


All Key Binbdings

Most of the key bindings revolve around a SUPER and SUPER_REV(super reversed) keys.

  • On MacOs:
    • SUPERSuper
    • SUPER_REVSuper+Ctrl
  • On Windows and Linux
    • SUPERAlt
    • SUPER_REVAlt+Ctrl

To avoid confusion when switching between different OS and to avoid conflicting
with OS's built-in keyboard shortcuts.

  • On all platforms: LEADERSUPER_REV+Space

Miscellaneous/Useful

Keys Action
F1 ActivateCopyMode
F2 ActivateCommandPalette
F3 ShowLauncher
F4 ShowLauncher (tabs only)
F5 ShowLauncher (workspaces only)
F11 ToggleFullScreen
F12 ShowDebugOverlay
SUPER+f Search Text
SUPER+u Open URL

 

Copy+Paste

Keys Action
Ctrl+Shift+c Copy to Clipborad
Ctrl+Shift+v Paste from Clipborad

 

Cursor Movements

Keys Action
SUPER+LeftArrow Move cursor to Line Start
SUPER+RightArrow Move cursor to Line End
SUPER+Backspace Clear Line (does not work for PowerShell or cmd)

 

Tabs

Tabs: Spawn+Close
Keys Action
SUPER+t SpawnTab (DefaultDomain)
SUPER_REV+f SpawnTab (WSL:Ubuntu)
SUPER_REV+w CloseCurrentTab
Tabs: Navigation
Keys Action
SUPER+[ Next Tab
SUPER+] Previous Tab
SUPER_REV+[ Move Tab Left
SUPER_REV+] Move Tab Right

 

Windows

Keys Action
SUPER+n SpawnWindow

 

Panes

Panes: Split Panes
Keys Action
SUPER+\ SplitVertical (CurrentPaneDomain)
SUPER_REV+\ SplitHorizontal (CurrentPaneDomain)
Panes: Zoom+Close Pane
Keys Action
SUPER+Enter TogglePaneZoomState
SUPER+w CloseCurrentPane
Panes: Navigation
Keys Action
SUPER_REV+k Move to Pane (Up)
SUPER_REV+j Move to Pane (Down)
SUPER_REV+h Move to Pane (Left)
SUPER_REV+l Move to Pane (Right)
SUPER_REV+p Swap with selected Pane

 

Background Images

Keys Action
SUPER+/ Select Random Image
SUPER+, Cycle to next Image
SUPER+. Cycle to previous Image
SUPER_REV+/ Fuzzy select Image

 

Key Tables

See: https://wezfurlong.org/wezterm/config/key-tables.html

Keys Action
LEADER+f resize_font
LEADER+p resize_pane
Key Table: resize_font
Keys Action
k IncreaseFontSize
j DecreaseFontSize
r ResetFontSize
q PopKeyTable (exit)
Esc PopKeyTable (exit)
Key Table: resize_pane
Keys Action
k AdjustPaneSize (Direction: Up)
j AdjustPaneSize (Direction: Down)
h AdjustPaneSize (Direction: Left)
l AdjustPaneSize (Direction: Right)
q PopKeyTable (exit)
Esc PopKeyTable (exit)

References/Inspirations