-- I recently switched from alacritty to wezterm. Supports mouse scrolling, has builtin emoji and multi-tab support. So far so good. -- The config is in lua that I don't know much about. But the official doc has an example config to start with. -- Pull in the wezterm API local wezterm = require 'wezterm' -- This table will hold the configuration. local config = {} -- In newer versions of wezterm, use the config_builder which will -- help provide clearer error messages if wezterm.config_builder then config = wezterm.config_builder() end local act = wezterm.action config.keys = { { key = 't', mods = 'CMD|SHIFT', action = act.ShowTabNavigator, }, -- other keys } local theme = wezterm.plugin.require('https://github.com/neapsix/wezterm').main -- This is where you actually apply your config choices -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- config.color_scheme = "rose-pine" -- Using custom Rose Pine theme -- the font is named 'Source Code Pro ExtraLight', but I actually use the DemiBold weight. looks awesome config.font = wezterm.font('Hack Nerd Font') config.colors = theme.colors() config.window_frame = theme.window_frame() config.font_size = 14.0 config.line_height = 1.0 -- config.freetype_load_target = "Light" -- config.freetype_render_target = "HorizontalLcd" config.hide_tab_bar_if_only_one_tab = true config.window_background_opacity = 0.80 config.foreground_text_hsb = { hue = 1.0, saturation = 1.0, brightness = 1.0, } config.window_padding = { left = 5, right = 5, top = 5, bottom = 5, } -- and finally, return the configuration to wezterm return config