aerc: add more bindigs

This commit is contained in:
Dmitriy Pleshevskiy 2023-03-13 15:11:51 +03:00
parent e4d7aa9baa
commit a738fc02e8
Signed by: pleshevskiy
GPG key ID: 79C4487B44403985

View file

@ -1,8 +1,20 @@
{ config, pkgs, ... }: { config, lib, pkgs, ... }:
let let
exec = cmd: ":${cmd}<Enter>"; exec = cmd: ":${cmd}<Enter>";
fill = cmd: ":${cmd}<space>"; fill = cmd: ":${cmd}<space>";
globalBinds = {
"gt" = exec "next-tab";
"gT" = exec "prev-tab";
};
commonMessageBinds = {
"U" = exec "unsubscribe";
"D" = exec "delete";
"A" = exec "archive flat";
"mS" = exec "move Junk";
};
in in
{ {
accounts.email.maildirBasePath = "${config.xdg.dataHome}/mail"; accounts.email.maildirBasePath = "${config.xdg.dataHome}/mail";
@ -27,7 +39,7 @@ in
border-char-vertical = ""; border-char-vertical = "";
border-char-horizontal = ""; border-char-horizontal = "";
fuzzy-complete = true; fuzzy-complete = true;
new-message-bell = false; new-message-bell = true;
}; };
statusline = { statusline = {
@ -40,74 +52,72 @@ in
}; };
}; };
extraBinds = { extraBinds = {
messages = { messages = lib.mkMerge [
"q" = exec "quit"; globalBinds
commonMessageBinds
{
"q" = exec "quit";
"gt" = exec "next-tab"; "j" = exec "next";
"gT" = exec "prev-tab"; "<Down>" = exec "next";
"<C-d>" = exec "next 50%";
"j" = exec "next"; "k" = exec "prev";
"<Down>" = exec "next"; "<Up>" = exec "prev";
"<C-d>" = exec "next 50%"; "<C-b>" = exec "prev 50%";
"k" = exec "prev"; "gg" = exec "select 0";
"<Up>" = exec "prev"; "G" = exec "select -1";
"<C-b>" = exec "prev 50%";
"gg" = exec "select 0"; "J" = exec "next-folder";
"G" = exec "select -1"; "K" = exec "prev-folder";
"c" = fill "cf";
"J" = exec "next-folder"; "<Enter>" = exec "view";
"K" = exec "prev-folder"; "C" = exec "compose";
"c" = fill "cf";
"<Enter>" = exec "view"; "/" = fill "search";
"C" = exec "compose"; "\\" = fill "filter";
"n" = exec "next-result";
"N" = exec "prev-result";
#"D" = exec "modify-labels +deleted -inbox";
#"A" = exec "modify-labels -inbox";
#"ms" = exec "modify-labels +spam -inbox";
#"mS" = exec "modify-labels -spam +inbox";
}
];
"/" = fill "search"; view = lib.mkMerge [
"\\" = fill "filter"; globalBinds
"n" = exec "next-result"; commonMessageBinds
"N" = exec "prev-result"; {
"q" = exec "close";
"O" = exec "open";
"S" = fill "save";
"U" = exec "unsubscribe"; "f" = exec "forward";
"D" = exec "delete";
"A" = exec "archive flat";
#"D" = exec "modify-labels +deleted -inbox";
#"A" = exec "modify-labels -inbox";
#"ms" = exec "modify-labels +spam -inbox";
#"mS" = exec "modify-labels -spam +inbox";
};
view = { "rr" = exec "reply -a";
"q" = exec "close"; "rq" = exec "reply -aq";
"O" = exec "open"; "Rr" = exec "reply";
"S" = fill "save"; "Rq" = exec "reply -q";
"f" = exec "forward"; "<C-k>" = exec "prev-part";
"<C-j>" = exec "next-part";
"J" = exec "next";
"K" = exec "prev";
}
];
"rr" = exec "reply -a"; compose = lib.mkMerge [
"rq" = exec "reply -aq"; globalBinds
"Rr" = exec "reply"; {
"Rq" = exec "reply -q"; "$ex" = "<C-x>";
"<C-k>" = exec "prev-field";
"<C-k>" = exec "prev-part"; "<C-j>" = exec "next-field";
"<C-j>" = exec "next-part"; "<tab>" = exec "next-field";
"J" = exec "next"; }
"K" = exec "prev"; ];
"U" = exec "unsubscribe";
"D" = exec "delete";
"A" = exec "archive flat";
# "ms" = exec "modify-labels +spam -inbox";
# "mS" = exec "modify-labels -spam +inbox";
};
compose = {
"$ex" = "<C-x>";
"<C-k>" = exec "prev-field";
"<C-j>" = exec "next-field";
"<tab>" = exec "next-field";
};
"compose::editor" = { "compose::editor" = {
"$noinherit" = "true"; "$noinherit" = "true";