59 lines
1.5 KiB
Nix
Executable File
59 lines
1.5 KiB
Nix
Executable File
{ lib, pkgs, config, namespace, ... }:
|
|
let
|
|
inherit (lib) mkIf;
|
|
cfg = config.${namespace}.programs.terminal.tmux;
|
|
in
|
|
{
|
|
options.${namespace}.programs.terminal.tmux = {
|
|
enable = lib.mkEnableOption "tmux";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
programs.tmux = {
|
|
enable = true;
|
|
clock24 = true;
|
|
|
|
plugins = with pkgs.tmuxPlugins; [
|
|
{
|
|
plugin = catppuccin;
|
|
extraConfig = ''
|
|
set -g @catppuccin_flavor "mocha"
|
|
set -g @catppuccin_status_background "none"
|
|
|
|
# Style & Separators
|
|
set -g @catppuccin_window_status_style "basic"
|
|
set -g @catppuccin_status_left_separator "█"
|
|
set -g @catppuccin_status_middle_separator ""
|
|
set -g @catppuccin_status_right_separator "█"
|
|
|
|
# Window Titles
|
|
set -g @catppuccin_window_text " #W"
|
|
set -g @catppuccin_window_current_text " #W"
|
|
'';
|
|
}
|
|
cpu
|
|
yank
|
|
];
|
|
|
|
extraConfig = ''
|
|
# Misc Settings
|
|
set -g status-position top
|
|
set -g mouse on
|
|
setw -g mode-keys vi
|
|
set -g renumber-windows on
|
|
set -ga terminal-overrides ",xterm-256color:Tc"
|
|
|
|
# Maintain Directory
|
|
bind '"' split-window -c "#{pane_current_path}"
|
|
bind % split-window -h -c "#{pane_current_path}"
|
|
bind c new-window -c "#{pane_current_path}"
|
|
|
|
# Theme
|
|
set -g status-left ""
|
|
set -g status-right ""
|
|
set -ag status-right "#{E:@catppuccin_status_host}"
|
|
'';
|
|
};
|
|
};
|
|
}
|