aboutsummaryrefslogtreecommitdiffstats
path: root/home-manager
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-06-16 07:57:35 +0200
committerSoispha <soispha@vhack.eu>2023-06-16 08:04:16 +0200
commit032875ea9cd9128fe85307a2281308ff00c04617 (patch)
treed75304fb19be4303b9fc3a200dfbc4ea7f5806f6 /home-manager
parentFix(hm/conf/gpg/agent): Reduce verbosity (diff)
downloadnixos-config-032875ea9cd9128fe85307a2281308ff00c04617.zip
Fix(hm/conf/neomutt): Use vim-like keybindings
Diffstat (limited to 'home-manager')
-rw-r--r--home-manager/config/neomutt/default.nix147
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";