Skip to content

Instantly share code, notes, and snippets.

@worldofgeese
Created April 17, 2026 08:56
Show Gist options
  • Select an option

  • Save worldofgeese/475d2dd6980a5a6f9d71d72f2048d85f to your computer and use it in GitHub Desktop.

Select an option

Save worldofgeese/475d2dd6980a5a6f9d71d72f2048d85f to your computer and use it in GitHub Desktop.
WezTerm Power-User Guide (with Dracula + Nix Home Manager config)

WezTerm Power-User Guide

Configured via Nix Home Manager with Dracula theme, Fira Code Nerd Font, and custom keybindings.

Your Custom Keybindings

Shortcut Action
Cmd+D Split pane horizontally (side by side)
Cmd+Shift+D Split pane vertically (top/bottom)
Cmd+W Close current pane
Cmd+K Clear scrollback + viewport

Built-in WezTerm Shortcuts

Tabs

Shortcut Action
Cmd+T New tab
Cmd+W Close tab/pane
Cmd+1-9 Switch to tab 1-9
Cmd+Shift+[ / ] Previous/next tab
Ctrl+Tab Cycle tabs

Panes

Shortcut Action
Cmd+D Split right
Cmd+Shift+D Split below
Cmd+Opt+Arrow Navigate between panes
Cmd+Shift+Z Toggle pane zoom (fullscreen one pane)

Copy/Paste & Selection

Shortcut Action
Cmd+C Copy
Cmd+V Paste
Click + drag Select text
Double-click Select word
Triple-click Select line
Cmd+F Search in scrollback

Font & Display

Shortcut Action
Cmd+Plus Increase font size
Cmd+Minus Decrease font size
Cmd+0 Reset font size
Cmd+Enter Toggle fullscreen

Scrollback

Shortcut Action
Shift+PageUp/Down Scroll up/down
Cmd+K Clear scrollback (custom)

Your Config Features

  • Dracula (Official) color scheme
  • FiraCode Nerd Font with fallback to Fira Code
  • 95% opacity + macOS blur — slight transparency with backdrop blur
  • Fancy tab bar that hides when there's only one tab
  • 10,000 lines scrollback
  • Blinking bar cursor for precise editing
  • Window decorations: resize-only (no title bar chrome)

Power-User Tips

1. Command Palette

Cmd+Shift+P opens WezTerm's command palette — search any action by name, just like VS Code.

2. Quick Select Mode

Cmd+Shift+Space enters quick-select mode. WezTerm highlights URLs, git hashes, file paths, IP addresses, and other patterns. Press the shown letter to copy that item instantly.

3. Copy Mode (vim-like)

Cmd+Shift+X enters copy mode:

  • Navigate with h/j/k/l
  • v to start selection
  • V for line selection
  • Ctrl+V for rectangular selection
  • y to yank (copy)
  • Escape to exit

4. Hyperlinks

Cmd+Click on:

  • URLs → opens in browser
  • File paths → opens in default app
  • file:line patterns → opens in editor

5. Image Protocol

WezTerm supports the iTerm2 inline image protocol. Tools like lf, viu, or imgcat can display images directly in the terminal.

6. Multiplexing

WezTerm has a built-in multiplexer (alternative to tmux). Since you're using tmux with Dracula + resurrect/continuum, use:

  • WezTerm panes (Cmd+D) for quick throwaway splits
  • tmux panes (Ctrl-B % / Ctrl-B ") for persistent session splits

7. SSH Domains

You can define SSH domains in your config to connect to remote machines as native WezTerm tabs:

config.ssh_domains = {
  { name = 'my-server', remote_address = 'user@host', username = 'user' },
}

Then use Cmd+Shift+P → "Connect to SSH Domain".

WezTerm + tmux Together

Since you have tmux with vim-tmux-navigator and resurrect:

Use case Tool
Session persistence across restarts tmux (resurrect + continuum)
Quick throwaway splits WezTerm panes (Cmd+D)
Persistent named splits tmux panes (Ctrl-B %)
Navigate between panes Ctrl+H/J/K/L (vim-tmux-navigator)
Zoom a single pane Ctrl-B z (tmux) or Cmd+Shift+Z (WezTerm)

Your Nix Config

The WezTerm config lives in ~/.local/share/fleek/programs.nix under programs.wezterm.extraConfig. The generated Lua file is at ~/.config/wezterm/wezterm.lua (managed by Home Manager — don't edit directly).

To modify, edit programs.nix and run:

sudo -H darwin-rebuild switch --flake ~/.local/share/fleek

Or just run topgrade --yes to upgrade everything including the config.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment