# wezterm-config **Repository Path**: elliotxx/wezterm-config ## Basic Information - **Project Name**: wezterm-config - **Description**: My wezterm config - **Primary Language**: Lua - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-05-13 - **Last Updated**: 2024-05-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

My WezTerm Config

Stargazers Issues Build

![screenshot](./.github/screenshots/wezterm.gif) --- ### Features - [**Background Image Selector**](https://github.com/KevinSilvester/wezterm-config/blob/master/utils/backdrops.lua) Uses `wezterm.read_dir` to scan the `backdrops` directory for images. > See: [key bindings](#background-images) for usage - [**GPU Adapter Selector**](https://github.com/KevinSilvester/wezterm-config/blob/master/utils/gpu_adapter.lua) > :bulb: Only works if the [`front_end`](https://github.com/KevinSilvester/wezterm-config/blob/master/config/appearance.lua#L8) 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 😁) > :bulb:
> 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: for more info - Windows: `Dx12` > `Vulkan` > `OpenGl` - Linux: `Vulkan` > `OpenGl` - Mac: `Metal`
--- ### Installation On MacOS: ```bash brew tap homebrew/cask-fonts brew install --cask font-fira-code git clone https://github.com/elliotxx/wezterm-config.git ~/.config/wezterm ``` On Windows: ```bash scoop bucket add nerd-fonts scoop install firacode git clone https://github.com/elliotxx/wezterm-config.git ~/.config/wezterm ``` References: - https://github.com/tonsky/FiraCode/wiki/Installing ### All Key Binbdings Most of the key bindings revolve around a SUPER and a 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 | | SUPER+q | Quit Wezterm | | Option+ | Backward Word | | Option+ | Forward Word |   #### Copy+Paste | Keys | Action | | ----------------------------- | -------------------- | | SUPER+c | Copy to Clipborad | | Ctrl+v | Paste from Clipborad |   #### 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 | | SUPER+1 | Move Tab 1 | | SUPER+2 | Move Tab 2 | | SUPER+3 | Move Tab 3 | | SUPER+4 | Move Tab 4 | | SUPER+5 | Move Tab 5 | | SUPER+6 | Move Tab 6 | | SUPER+7 | Move Tab 7 | | SUPER+8 | Move Tab 8 | | SUPER+9 | Move Tab 9 |   #### Windows | Keys | Action | | ----------------------------- | ------------- | | SUPER+n | `SpawnWindow` |   #### Panes ##### Panes: Split Panes | Keys | Action | | ---------------------------------- | ------------------------------------------------ | | SUPER+\\ | `SplitHorizontal` (CurrentPaneDomain) | | SUPER_REV+\\ | `SplitVertical` (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 |   #### Font Size | Keys | Action | | ----------------------------- | ------------------ | | SUPER+= | `IncreaseFontSize` | | SUPER+- | `DecreaseFontSize` |   #### 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: | 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 - - - -