No description
Find a file
2025-07-17 12:14:24 -04:00
.github/ISSUE_TEMPLATE refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
CODE_OF_CONDUCT.md refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
command_builder.lua refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
init.lua refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
LICENSE refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
README.md refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
schema_builder.lua refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
state.lua refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
ui.lua refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
utils.lua refactored to use apply_to_config 2025-07-17 12:14:24 -04:00
workspace.lua refactored to use apply_to_config 2025-07-17 12:14:24 -04:00

Sessionizer for Wezterm


A tmux like sessionizer for Wezterm that was inspired by ThePrimeagen's tmux-sessionizer

The sessionizer allows for opening of windows/sessions based on the passed in directories, as well as fast and intuative switching between active workspaces/sessions

Setup

An example configuration calling the plugin

local wezterm = require "wezterm"
local sessionizer = wezterm.plugin.require("https://github.com/ElCapitanSponge/sessionizer.wezterm")

local config = {}

if wezterm.config_builder then
    config = wezterm.config_builder()
end

--INFO: The sessionizer lverages the `LEADER` mod
config.leader = {
    key = "a",
    mods = "CTRL",
    timeout_milliseconds = 1000
}

config.keys = {}

-- INFO: The following is the project directories to search
local projects = {
    "~/personal",
    "~/work"
}

sessionizer.set_projects(projects)
sessionizer.configure(config)

return config

USEAGE

To use the sessionizer you have to define and pass through a table of project folders, that are the paths to your applicable repositores to leverage for the workspaces.

local projects = {
    "~/personal",
    "~/work"
}

To display the sessionizer all you have to do is press the key combination of LEADER + f

To display the active windows/sessions all you have to do is press the key combination of LEADER + s

Change keybinding

To change the keybinding from the default (LEADER + f):

config.keys = {
    -- ... other bindings
    {
        key = "w",
        mods = "CTRL|ALT",
        action = sessionizer.switch_workspace()
    }
}