diff options
Diffstat (limited to 'components/programs/zsh.nix')
| -rw-r--r-- | components/programs/zsh.nix | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/components/programs/zsh.nix b/components/programs/zsh.nix new file mode 100644 index 0000000..9ace5fd --- /dev/null +++ b/components/programs/zsh.nix @@ -0,0 +1,35 @@ +{lib, config, ...}: { + options.zsh.enable = lib.mkEnableOption "ZSH config"; + + config = lib.mkIf config.zsh.enable { + programs.zsh = { + enable = true; + enableCompletion = true; + enableVteIntegration = true; + + syntaxHighlighting.enable = true; + + history.size = 10000; + + oh-my-zsh = { + enable = true; + theme = "robbyrussell"; + + plugins = [ "git" "ssh" ]; + }; + + initContent = '' + # Ctrl + arrow keys + bindkey '^[Oc' forward-word + bindkey '^[Od' backward-word + bindkey '^[[1;5D' backward-word + bindkey '^[[1;5C' forward-word + bindkey '^H' backward-kill-word + + # Theme + autoload -U colors + colors + ''; + }; + }; +} |
