diff --git a/wezterm.lua b/wezterm.lua index 78c1b78..c241e51 100644 --- a/wezterm.lua +++ b/wezterm.lua @@ -1,7 +1,6 @@ local wt = require 'wezterm' -local current_theme = 1 local theme = - 'Parker Brothers (terminal.sexy)' + 'PencilDark' local themes = { 'BirdsOfParadise', 'Blazer', @@ -29,31 +28,42 @@ local themes = { 'MonaLisa', -- impressively good, but very red and dark 'Neopolitan', -- lovely blue, shitty contrast 'Parker Brothers (terminal.sexy)', -- unique but kinda dark + 'PaulMillr', -- bright and clear + 'PencilDark', -- very nice, matches PencilColors } -wt.on('next-theme', function(window) - if current_theme < #themes then - current_theme = current_theme + 1 - else - current_theme = 1 - end - color_scheme = themes[current_theme] - wt.log_info(color_scheme) - window:set_config_overrides {color_scheme=color_scheme} +local theme_n = 0 +function switch_theme(number, window) + theme_n = theme_n + number + if theme_n < 1 then theme_n = #themes end + if theme_n > #themes then theme_n = 1 end + window:set_config_overrides { color_scheme = themes[theme_n] } +end +wt.on('prev-theme', function(window) switch_theme(-1, window) end) +wt.on('next-theme', function(window) switch_theme( 1, window) end) +wt.on('reset-theme', function(window) window:set_config_overrides {} end) +wt.on('light-theme', function(window) + window:set_config_overrides { + harfbuzz_features = { 'calt=0', 'clig=0', 'liga=0' }, + font_size = 16, + color_scheme = 'PencilLight', + } end) -wt.on('reset-theme', function(window) - wt.log_info(theme) - window:set_config_overrides {} +wt.on('query-theme', function(window) + overrides = window:get_config_overrides() + wt.log_info(overrides['color_scheme']) end) return { - font_size = 14, + font_size = 15, bold_brightens_ansi_colors = false, use_resize_increments = true, color_scheme = theme, keys = { - { key = 'c', mods = 'META', action = wt.action.Copy }, + { key = 'c', mods = 'META', action = wt.action.Copy }, { key = 'v', mods = 'META', action = wt.action.Paste }, - { key = 'z', mods = 'CTRL', action = wt.action.EmitEvent 'next-theme'}, - { key = 'x', mods = 'CTRL', action = wt.action.EmitEvent 'reset-theme' }, + { key = 'a', mods = 'META', action = wt.action.EmitEvent 'prev-theme' }, + { key = 's', mods = 'META', action = wt.action.EmitEvent 'next-theme' }, + { key = 'd', mods = 'META', action = wt.action.EmitEvent 'light-theme' }, + { key = 'q', mods = 'META', action = wt.action.EmitEvent 'query-theme' }, }, window_padding = { left = 0, right = 0, top = 0, bottom = 0,