diff options
author | Soispha <soispha@vhack.eu> | 2023-06-16 07:57:35 +0200 |
---|---|---|
committer | Soispha <soispha@vhack.eu> | 2023-06-16 08:04:16 +0200 |
commit | 032875ea9cd9128fe85307a2281308ff00c04617 (patch) | |
tree | d75304fb19be4303b9fc3a200dfbc4ea7f5806f6 /home-manager/config/neomutt/default.nix | |
parent | Fix(hm/conf/gpg/agent): Reduce verbosity (diff) | |
download | nixos-config-032875ea9cd9128fe85307a2281308ff00c04617.tar.gz nixos-config-032875ea9cd9128fe85307a2281308ff00c04617.zip |
Fix(hm/conf/neomutt): Use vim-like keybindings
Diffstat (limited to '')
-rw-r--r-- | home-manager/config/neomutt/default.nix | 147 |
1 files changed, 146 insertions, 1 deletions
diff --git a/home-manager/config/neomutt/default.nix b/home-manager/config/neomutt/default.nix index 5d1152c1..01833656 100644 --- a/home-manager/config/neomutt/default.nix +++ b/home-manager/config/neomutt/default.nix @@ -5,9 +5,154 @@ systemctl --user start mbsync.service; ${pkgs.neomutt}/bin/neomutt; ''; - vimKeys = true; + vimKeys = false; # see the modified ones below checkStatsInterval = 60; binds = [ + #------------------------------------------------------------ + # Vi Key Bindings (taken from their configuration, modified for dvorak) + #------------------------------------------------------------ + + # Moving around + { + action = "noop"; + key = "g"; + map = ["attach" "browser" "index"]; + } + { + action = "first-entry"; + key = "gg"; + map = ["attach" "browser" "index"]; + } + { + action = "last-entry"; + key = "G"; + map = ["attach" "browser" "index"]; + } + { + action = "noop"; + key = "g"; + map = ["pager"]; + } + { + action = "top"; + key = "gg"; + map = ["pager"]; + } + { + action = "bottom"; + key = "G"; + map = ["pager"]; + } + { + action = "previous-line"; + key = "n"; + map = ["pager"]; + } + { + action = "next-line"; + key = "t"; + map = ["pager"]; + } + + # Scrolling + { + action = "next-page"; + key = "\CF"; + map = ["attach" "browser" "pager" "index"]; + } + { + action = "previous-page"; + key = "\CB"; + map = ["attach" "browser" "pager" "index"]; + } + { + action = "half-up"; + key = "\Cu"; + map = ["attach" "browser" "pager" "index"]; + } + { + action = "half-down"; + key = "\Cd"; + map = ["attach" "browser" "pager" "index"]; + } + { + action = "next-line"; + key = "\Ce"; + map = ["browser" "pager"]; + } + { + action = "previous-line"; + key = "\Cy"; + map = ["browser" "pager"]; + } + { + action = "next-line"; + key = "\Ce"; + map = ["index"]; + } + { + action = "previous-line"; + key = "\Cy"; + map = ["index"]; + } + + { + action = "noop"; + key = "d"; + map = ["pager" "index"]; + } + { + action = "delete-message"; + key = "dd"; + map = ["pager" "index"]; + } + + # Mail & Reply + { + # Doesn't work currently + action = "list-reply"; + key = "\Cm"; + map = ["index"]; + } + + # Threads + { + action = "search-opposite"; + key = "N"; + map = ["browser" "pager" "index"]; + } + { + action = "delete-thread"; + key = "dT"; + map = ["pager" "index"]; + } + { + action = "delete-subthread"; + key = "dt"; + map = ["pager" "index"]; + } + { + action = "next-thread"; + key = "gt"; + map = ["pager" "index"]; + } + { + action = "previous-thread"; + key = "gT"; + map = ["pager" "index"]; + } + { + action = "collapse-thread"; + key = "za"; + map = ["index"]; + } + { + # Missing: folddisable/foldenable + action = "collapse-all"; + key = "zA"; + map = ["index"]; + } + { action = "imap-fetch-mail"; key = "g"; |