Skip to content

Instantly share code, notes, and snippets.

@dkmin
Last active March 22, 2026 03:11
Show Gist options
  • Select an option

  • Save dkmin/7efa10b245a136db1dcb19aac242ce0f to your computer and use it in GitHub Desktop.

Select an option

Save dkmin/7efa10b245a136db1dcb19aac242ce0f to your computer and use it in GitHub Desktop.
WezTerm Config & Tips - default shell(pwsh), font size, transparency, shortcuts, community favorite features

WezTerm Configuration & Tips

Current Config (~/.wezterm.lua)

local wezterm = require 'wezterm'
local config = wezterm.config_builder()

config.default_prog = { 'pwsh' }
config.font_size = 10.0
config.window_background_opacity = 0.7

return config

Essential Shortcuts

Shortcut Action
Ctrl+Shift+T New tab
Ctrl+Shift+W Close tab
Ctrl+Tab Next tab
Ctrl+Shift+Tab Previous tab
Ctrl+Shift+1~9 Go to tab N
Ctrl+Shift+E Split vertical
Ctrl+Shift+D Split horizontal (Windows)
Ctrl+Shift+Z Toggle pane zoom
Ctrl+Shift+Space Quick Select (auto-detect URL, hash, IP)
Ctrl+Shift+F Search
Ctrl+Shift+P Command Palette
Ctrl+Click Open hyperlink/path
Ctrl++ / Ctrl+- Font size adjust

Community Favorite Lua Config Features

1. Tab Bar

config.use_fancy_tab_bar = false
config.tab_bar_at_bottom = true
config.hide_tab_bar_if_only_one_tab = true

2. Color Scheme (Popular)

config.color_scheme = 'Catppuccin Mocha'
-- 'Tokyo Night', 'Dracula', 'Gruvbox Dark'

3. Font + Nerd Font Ligatures

config.font = wezterm.font('JetBrainsMono Nerd Font')
config.harfbuzz_features = { 'calt=1', 'clig=1', 'liga=1' }

4. Background Image + Acrylic (Windows 11)

config.window_background_image = 'C:/path/to/image.png'
config.window_background_image_hsb = {
  brightness = 0.05,
  saturation = 0.5,
}
config.win32_system_backdrop = 'Acrylic'

5. tmux-style Leader Key + Pane Split

config.leader = { key = 'a', mods = 'CTRL', timeout_milliseconds = 1000 }
config.keys = {
  { key = '|', mods = 'LEADER', action = wezterm.action.SplitHorizontal { domain = 'CurrentPaneDomain' } },
  { key = '-', mods = 'LEADER', action = wezterm.action.SplitVertical { domain = 'CurrentPaneDomain' } },
}

6. Right Status Bar (Date/Time)

wezterm.on('update-right-status', function(window)
  window:set_right_status(wezterm.strftime '%Y-%m-%d %H:%M')
end)

7. Remove Window Padding

config.window_padding = { left = 0, right = 0, top = 0, bottom = 0 }

Notes

  • No GUI settings dialog — all config via .wezterm.lua
  • GPU accelerated rendering (OpenGL/Metal/Vulkan)
  • Cross-platform (Windows/Mac/Linux) with same config
  • Built-in multiplexer (no tmux needed)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment