56 lines
1.3 KiB
Nix
56 lines
1.3 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}:
|
|
let
|
|
cfg = config.my.cli.tmux;
|
|
in
|
|
{
|
|
options.my.cli.tmux = {
|
|
enable = lib.mkEnableOption "tmux";
|
|
};
|
|
|
|
config = lib.mkIf cfg.enable {
|
|
my.hm = {
|
|
programs.tmux = {
|
|
enable = true;
|
|
extraConfig = ''
|
|
set-option -g mouse on
|
|
set-option -a terminal-features ",xterm-256color:RGB,focus,clipboard,usstyle"
|
|
'';
|
|
plugins = [
|
|
(pkgs.tmuxPlugins.mkTmuxPlugin {
|
|
pluginName = "tokyo-night-tmux";
|
|
rtpFilePath = "tokyo-night.tmux";
|
|
version = "legacy";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "janoamaral";
|
|
repo = "tokyo-night-tmux";
|
|
rev = "16469dfad86846138f594ceec780db27039c06cd";
|
|
hash = "sha256-EKCgYan0WayXnkSb2fDJxookdBLW0XBKi2hf/YISwJE=";
|
|
};
|
|
})
|
|
];
|
|
};
|
|
programs.starship = {
|
|
settings = {
|
|
custom.tmux = {
|
|
description = "Display current tmux session name";
|
|
when = ''test -n "$TMUX"'';
|
|
command = "tmux display-message -p '#S'";
|
|
symbol = " ";
|
|
style = "bold green";
|
|
format = "[$symbol \\[$output\\] ]($style)";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
my.cli.shell.starship.format = [
|
|
"\${custom.tmux}"
|
|
"$character"
|
|
];
|
|
};
|
|
}
|