1
0
Fork 0
mirror of https://git.sr.ht/~neverness/ultima synced 2025-01-09 20:03:56 +00:00
ultima/modules/home/wm/terminals/wezterm/default.nix
2024-11-24 17:17:07 +09:00

66 lines
1.9 KiB
Nix

{ lib, config, True, False, ... }:
with lib;
let cfg = config.module.wm.terminals.wezterm;
in {
options = { module.wm.terminals.wezterm = { enable = mkEnableOption ""; }; };
config = mkIf cfg.enable {
programs.wezterm = True // {
extraConfig = ''
return {
-- general
audible_bell = "Disabled",
check_for_updates = false,
enable_scroll_bar = false,
exit_behavior = "CloseOnCleanExit",
warn_about_missing_glyphs = false,
-- anims
animation_fps = 1,
-- Cursor
cursor_blink_ease_in = 'Constant',
cursor_blink_ease_out = 'Constant',
cursor_blink_rate = 700,
default_cursor_style = "SteadyBar",
keys = {
-- paste from the clipboard
{ key = 'V', mods = 'SHIFT|CTRL', action = act.PasteFrom 'Clipboard' },
-- paste from the primary selection
{ key = 'S', mods = 'SHIFT|CTRL', action = act.PasteFrom 'PrimarySelection' },
},
-- Tab bar
enable_tab_bar = true,
hide_tab_bar_if_only_one_tab = true,
show_tab_index_in_tab_bar = false,
tab_bar_at_bottom = true,
use_fancy_tab_bar = false,
-- try and let the tabs stretch instead of squish
tab_max_width = 10000,
-- perf
enable_wayland = true,
front_end = "WebGpu",
scrollback_lines = 10000,
-- term window settings
adjust_window_size_when_changing_font_size = false,
inactive_pane_hsb = {
saturation = 1.0,
brightness = 0.8
},
window_background_opacity = 0.85,
window_close_confirmation = "NeverPrompt",
window_decorations = "RESIZE",
window_padding = { left = 12, right = 12, top = 12, bottom = 12, },
}
'';
};
};
}