diff --git a/modules/programs/zsh/default.nix b/modules/programs/zsh/default.nix index 8ba25fb73..cb69da59d 100644 --- a/modules/programs/zsh/default.nix +++ b/modules/programs/zsh/default.nix @@ -17,7 +17,6 @@ let ; cfg = config.programs.zsh; - bindkeyCommands = { emacs = "bindkey -e"; viins = "bindkey -v"; @@ -501,7 +500,12 @@ in (lib.mkIf (cfg.setOptions != [ ]) ( mkOrder 950 '' - ${concatStringsSep "\n" (map (option: "setopt ${option}") cfg.setOptions)} + # Set shell options + ${lib.hm.zsh.define "set_opts" cfg.setOptions} + for opt in "''${set_opts[@]}"; do + setopt "$opt" + done + unset opt set_opts '' )) diff --git a/tests/modules/programs/zsh/default.nix b/tests/modules/programs/zsh/default.nix index b1b090b05..998be5f07 100644 --- a/tests/modules/programs/zsh/default.nix +++ b/tests/modules/programs/zsh/default.nix @@ -16,6 +16,7 @@ zsh-plugins = ./plugins.nix; zsh-prezto = ./prezto.nix; zsh-session-variables = ./session-variables.nix; + zsh-smart-formatting = ./smart-formatting.nix; zsh-syntax-highlighting = ./syntax-highlighting.nix; zsh-zprof = ./zprof.nix; zshrc-contents-priorities = ./zshrc-content-priorities.nix;