devos/profiles/develop/tmux/default.nix
2019-12-15 01:08:22 -07:00

54 lines
926 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;
extraTmuxConf = ''
${readFile ./tmuxline.conf}
${readFile ./tmux.conf}
${pluginConf plugins}
'';
};
}