devos/profiles/develop/tmux/default.nix
2020-04-26 17:45:41 -06:00

40 lines
837 B
Nix

{ lib, pkgs, ... }:
let
inherit (builtins) readFile concatStringsSep;
inherit (lib) removePrefix;
pluginConf = plugins:
concatStringsSep "\n\n" (map (plugin:
let name = removePrefix "tmuxplugin-" plugin.name;
in "run-shell ${plugin}/share/tmux-plugins/${name}/${name}.tmux")
plugins);
plugins = with pkgs.tmuxPlugins; [
copycat
open
resurrect
yank
vim-tmux-navigator
];
in {
environment.shellAliases = { tx = "tmux new-session -A -s $USER"; };
programs.tmux = {
enable = true;
aggressiveResize = true;
escapeTime = 10;
historyLimit = 5000;
keyMode = "vi";
shortcut = "a";
terminal = "tmux-256color";
baseIndex = 1;
extraConfig = ''
${readFile ./tmuxline.conf}
${readFile ./tmux.conf}
${pluginConf plugins}
'';
};
}