2 local wezterm = require('wezterm')
3 ---@type _.wezterm.ConfigBuilder
7 config.color_scheme = 'nord'
9 config.font = wezterm.font('Fira Code')
11 config.harfbuzz_features = { 'ss03' }
13 config.adjust_window_size_when_changing_font_size = false
15 config.hide_tab_bar_if_only_one_tab = true
16 config.tab_bar_at_bottom = true
18 config.quick_select_alphabet = "aoeuisnthd"
24 action = wezterm.action.QuickSelectArgs {
30 action = wezterm.action_callback(function (win, pane)
31 local url = win:get_selection_text_for_pane(pane)
32 wezterm.log_info('selected: ' .. url)
33 local found, _, proj, type, num = string.find(url, "^(stm)%.([#!])(%d+)$")
34 wezterm.log_info('selected: ' .. url)
36 if type == "#" then type = "issues"
37 elseif type == "!" then type = "merge_requests"
40 if proj == "stm" then proj = "springfield"
43 url = string.format("https://gitlab.com/fppnt/sgnss/%s/-/%s/%d", proj, type, num)
45 wezterm.log_info('opening: ' .. url)
46 wezterm.open_with(url, "rifle")
53 action = wezterm.action.DisableDefaultAssignment,