dotfiles/home/apps/wezterm/fonts.lua

56 lines
1.1 KiB
Lua
Raw Normal View History

local wezterm = require("wezterm")
local M = {}
-- fonts I like, with the settings I prefer
-- kept separately from the rest of the config so that I can easily change them
local fonts = {
berkeley = {
font = "Berkeley Mono",
size = 16,
},
comic = {
font = "Comic Code Ligatures",
size = 16,
},
victor = {
font = {
family = "Victor Mono",
weight = "DemiBold",
harfbuzz_features = { "ss02=1" },
2023-01-01 15:36:39 +01:00
},
size = 15,
},
}
M.get_font = function(name)
2023-01-01 15:36:39 +01:00
return {
font = wezterm.font_with_fallback({
fonts[name].font,
"Symbols Nerd Font",
}),
2023-01-01 15:36:39 +01:00
size = fonts[name].size,
}
end
wezterm.on("switch-font", function(window, _)
local next_font = next(fonts, wezterm.GLOBAL.font)
if next_font == nil then
next_font = next(fonts)
end
wezterm.GLOBAL.font = next_font
window:set_config_overrides({
font = M.get_font(next_font).font,
font_size = M.get_font(next_font).size,
})
end)
2023-03-05 05:40:35 +01:00
wezterm.GLOBAL = { font = "berkeley" }
M.apply = function(c)
c.font = M.get_font(wezterm.GLOBAL.font).font
c.font_size = M.get_font(wezterm.GLOBAL.font).size
end
return M