{...}: { programs.wezterm = { enable = true; extraConfig = '' local wezterm = require('wezterm') local c = wezterm.config_builder() local resize_amount = 3; local wezmodeConfig = { theme = { textColor = "white", hintColor = "#a6e3a1", normalModeColor = "#cba6f7", modeTextColor = "#11111b", } } wezterm.plugin.require('https://github.com/nekowinston/wezterm-bar').apply_to_config(c, { position = 'bottom', max_width = 32, dividers = 'slant_right', indicator = { leader = { enabled = true, off = ' ', on = ' ', }, mode = { enabled = true, names = { resize_mode = 'RESIZE', copy_mode = 'VISUAL', search_mode = 'SEARCH', }, }, }, tabs = { numerals = 'arabic', pane_count = 'subscript', brackets = { active = { "", ':' }, inactive = { "", ':' }, }, }, clock = { enabled = true, format = '%l:%M %p', }, }) local act = wezterm.action local keybinds = { { key = 'Enter', mods = 'CTRL|SHIFT', action = act.SplitHorizontal({ domain = 'CurrentPaneDomain' }), }, { key = 'h', mods = 'ALT|SHIFT', action = act.ActivatePaneDirection('Left'), }, { key = 'l', mods = 'ALT|SHIFT', action = act.ActivatePaneDirection 'Right', }, { key = 'k', mods = 'ALT|SHIFT', action = act.ActivatePaneDirection 'Up', }, { key = 'j', mods = 'ALT|SHIFT', action = act.ActivatePaneDirection 'Down', }, { key = 't', mods = 'CTRL|SHIFT', action = act.SpawnCommandInNewTab { cwd = wezterm.home_dir }, } } local config = { initial_cols = 160, adjust_window_size_when_changing_font_size = false, color_scheme = 'Catppuccin Mocha', cursor_blink_ease_in = 'Constant', cursor_blink_ease_out = 'Constant', cursor_blink_rate = 500, default_cursor_style = 'BlinkingBar', enable_kitty_graphics = true, enable_scroll_bar = false, enable_wayland = false, font_size = 18, font = wezterm.font('Maple Mono NF'), keys = keybinds, front_end = 'OpenGL', underline_position = -4, use_fancy_tab_bar = false, window_background_opacity = 0.8, window_padding = { left = 0, right = 0, top = 0, bottom = 0 }, } for k, v in pairs(config) do c[k] = v end return c ''; }; }