zsh: add default keymap configuration
(cherry picked from commit a4383075af
)
This commit is contained in:
parent
ad0b33387d
commit
8026e4ff6f
|
@ -19,6 +19,12 @@ let
|
|||
|
||||
zdotdir = "$HOME/" + cfg.dotDir;
|
||||
|
||||
bindkeyCommands = {
|
||||
emacs = "bindkey -e";
|
||||
viins = "bindkey -v";
|
||||
vicmd = "bindkey -a";
|
||||
};
|
||||
|
||||
historyModule = types.submodule ({ config, ... }: {
|
||||
options = {
|
||||
size = mkOption {
|
||||
|
@ -186,6 +192,13 @@ in
|
|||
description = "Options related to commands history configuration.";
|
||||
};
|
||||
|
||||
defaultKeymap = mkOption {
|
||||
type = types.nullOr (types.enum [ "emacs" "viins" "vicmd" ]);
|
||||
default = null;
|
||||
example = "emacs";
|
||||
description = "The default base keymap to use";
|
||||
};
|
||||
|
||||
sessionVariables = mkOption {
|
||||
default = {};
|
||||
type = types.attrs;
|
||||
|
@ -303,6 +316,9 @@ in
|
|||
|
||||
HELPDIR="${pkgs.zsh}/share/zsh/$ZSH_VERSION/help"
|
||||
|
||||
${if cfg.defaultKeymap != null && hasAttr cfg.defaultKeymap bindkeyCommands
|
||||
then getAttr cfg.defaultKeymap bindkeyCommands else ""}
|
||||
|
||||
${concatStrings (map (plugin: ''
|
||||
path+="$HOME/${pluginsDir}/${plugin.name}"
|
||||
fpath+="$HOME/${pluginsDir}/${plugin.name}"
|
||||
|
|
Loading…
Reference in a new issue