From: Mischa POSLAWSKY Date: Sat, 16 May 2009 00:10:38 +0000 (+0000) Subject: mutt: compose mode X-Git-Tag: v1.3~131 X-Git-Url: http://git.shiar.nl/sheet.git/commitdiff_plain/2738d85fc5e9f9f0d0a9ba9c495250e5ffcf2dff mutt: compose mode --- diff --git a/mutt.inc.pl b/mutt.inc.pl index 77f920d..fdb4269 100644 --- a/mutt.inc.pl +++ b/mutt.inc.pl @@ -1,25 +1,42 @@ use utf8; -my @generic = qw(^l ! * / : ; < = > ? H L M Z [ ] j k n q t z); +my %common = ( + 'H' => ["screen top", 'pm'], # top-page + 'j' => ["entry $sign{down}", 'pm'], # next-entry, next-undeleted + 'k' => ["entry $sign{up}", 'pm'], # previous-entry, previous-undeleted + 'L' => ["screen bottom", 'pm'], # bottom-page + '^l'=> ["redraw", 'ci'], # refresh + 'M' => ["screen middle", 'pm'], # middle-page + '^m'=> ["select", 'mi mode^m'], # select-entry, display-message + 'n' => ["search $sign{down}", 'po'], # search-next + 'q' => ["exit", 'mv mode'], # exit + 't' => ["tag", 'co'], # tag-entry + 'z' => ["page $sign{down}", 'pm'], # next-page + 'Z' => ["page $sign{up}", 'pm'], # previous-page + + '*' => ["last entry", 'pm'], # last-entry + '=' => ["first entry", 'pm'], # first-entry + ':' => ["enter command", 'mi'], # enter-command + ';' => ["apply to tagged", 'mi arg'], # tag-prefix + '>' => ["line $sign{down}", 'pm'], # next-line + '<' => ["line $sign{up}", 'pm'], # previous-line + ']' => ["half page $sign{down}", 'pm'], # half-down + '[' => ["half page $sign{up}", 'pm'], # half-up + '?' => ["help", 'ci'], # help + '!' => ["invoke shell", 'ci arg'], # shell + '/' => ["search $sign{down}", 'po arg mode/~'], # search + '+/'=> ["search $sign{up}", 'po arg mode/~'], # search +); '' => { desc => 'index', - ';' => ["apply to tagged", 'mi arg'], # tag-prefix + %common, + '@' => ["display sender", 'ci'], # display-address - ':' => ["enter command", 'mi'], # enter-command - '=' => ["first entry", 'po'], # first-entry - ']' => ["half page down", 'pm'], # half-down - '[' => ["half page up", 'pm'], # half-up - '?' => ["help", 'ci'], # help - '!' => ["invoke shell", 'ci arg'], # shell - '*' => ["last message", 'po'], # last-entry - '>' => ["line $sign{down}", 'pm'], # next-line - '<' => ["line $sign{up}", 'pm'], # previous-line '.' => ["list new mail", 'mv'], # buffy-list #TODO '|' => ["pipe to shell", 'mi'], # pipe-message '$' => ["save mailbox", 'co'], # sync-mailbox - '/' => ["search", 'po arg mode/~'], # search '#' => ["split up thread", 'co'], # break-thread '&' => ["thread tagged", 'co'], # link-threads '%' => ["toggle reado$sign{_}nl$sign{_}y", 'co'], # toggle-write @@ -30,8 +47,8 @@ my @generic = qw(^l ! * / : ; < = > ? H L M Z [ ] j k n q t z); '^b'=> ["url$sign{_}view", 'ci'], '+b'=> ["search bodies"], # M ~b 'c' => ["open folder", 'mv'], # change-folder - 'C' => ["copy message", 'mi'], # copy-message - '+c'=> ["open readonly", 'mv'], # change-folder-readonly + 'C' => ["copy messag$sign{_}e", 'mi'], # copy-message + '+c'=> ["open reado$sign{_}nly", 'mv'], # change-folder-readonly '+C'=> ["make plain copy"], # decode-copy 'd' => ["delete", 'co'], # delete-message 'D' => ["delete patt$sign{_}er$sign{_}n", 'co arg'], # delete-pattern @@ -46,23 +63,18 @@ my @generic = qw(^l ! * / : ; < = > ? H L M Z [ ] j k n q t z); 'g' => ["reply to all", 'mo modem', 'Group reply'], # group-reply 'G' => ["fetch POP", 'mi', 'Gather new mail'], # fetch-mail 'h' => ["toggle headers", 'me'], # display-toggle-weed - 'H' => ["screen top", 'po'], # top-page '^i'=> ["unread msg $sign{down}", 'po'], # next-new-then-unread '+^i'=> ["unread msg $sign{up}"], # previous-new-then-unread - 'j' => ["entry $sign{down}", 'po'], # next-entry, next-undeleted - 'J' => ["messag$sign{_}e $sign{down}", 'po'], # next-entry - 'k' => ["entry $sign{up}", 'po'], # previous-entry, previous-undeleted - 'K' => ["messag$sign{_}e $sign{up}", 'po'], # previous-entry + 'j' => ["messag$sign{_}e $sign{down}", 'pm'], # next-undeleted + 'k' => ["messag$sign{_}e $sign{up}", 'pm'], # previous-undeleted + 'J' => ["any $sign{down}", 'po'], # next-entry + 'K' => ["any $sign{up}", 'po'], # previous-entry '^k'=> ["extract pub keys", 'ci'], # extract-keys '+k'=> ["send public key", 'mo modem'], # mail-key 'l' => ["limit pattern", 'me'], # limit 'L' => ["reply to list", 'mo modem'], # list-reply - '^l'=> ["redraw", 'ci'], # refresh '+l'=> ["show current limit", 'ci'], # show-limit 'm' => ["compo$sign{_}s$sign{_}e mail", 'mo modem'], # mail - 'M' => ["screen middle", 'po'], # middle-page - '^m'=> ["select", 'mi mode^m'], # select-entry, display-message - 'n' => ["search $sign{down}", 'po'], # search-next 'N' => ["toggle new", 'co'], # toggle-new '^n'=> ["thread $sign{down}", 'po'], # next-thread '+n'=> ["subthr$sign{_}ead $sign{down}", 'po'], # next-subthread @@ -73,7 +85,7 @@ my @generic = qw(^l ! * / : ; < = > ? H L M Z [ ] j k n q t z); '^p'=> ["thread $sign{up}", 'po'], # previous-thread '+p'=> ["subthr$sign{_}ead $sign{up}", 'po'], # previous-subthread '+P'=> ["check for pgp"], # check-traditional-pgp - 'q' => ["exit or quit", 'mv'], # exit, quit + 'q' => ["quit", 'mv'], # quit 'Q' => ["query addr$sign{_}ess$sign{_}es", 'ci arg'], # query 'r' => ["reply to sender", 'mo modem'], # reply 'R' => ["recall postpon$sign{_}e$sign{_}d", 'mo modem'], # recall-message @@ -81,7 +93,6 @@ my @generic = qw(^l ! * / : ; < = > ? H L M Z [ ] j k n q t z); '+r'=> ["mark sub$sign{_}thread r$sign{_}ead", 'co'], # read-subthread 's' => ["move", 'co'], # save-message '+s'=> ["save and delete", 'co'], # decode-save - 't' => ["tag", 'co'], # tag-entry 'T' => ["tag patt$sign{_}er$sign{_}n", 'co arg'], # tag-pattern '^t'=> ["untag pattern", 'co'], # untag-pattern '+t'=> ["tag thread", 'co'], # tag-thread @@ -95,15 +106,51 @@ my @generic = qw(^l ! * / : ; < = > ? H L M Z [ ] j k n q t z); '+V'=> ["(un)collapse threads", 'me'], # collapse-all 'w' => ["set flag", 'co arg'], # set-flag 'W' => ["clear flag", 'co arg'], # clear-flag - 'x' => ["exit menu", 'mv'], # exit + 'x' => ["abort", 'mv'], # exit 'y' => ["list incoming mailboxes", 'mv'], # M ? - 'z' => ["page $sign{down}", 'pm'], # next-page - 'Z' => ["page $sign{up}", 'pm'], # previous-page }, # index -' ' => { - 'L' => ["screen bottom"], # bottom-page -}, # general +'m' => { + desc => 'compose (m)', + + %common, + + '|' => ["pipe attach$sign{_}m$sign{_}ent", 'co'], + 'a' => ["attach file", 'mi'], + 'A' => ["attach messag$sign{_}e", 'mi'], + 'b' => ["edit bcc", 'co'], + 'c' => ["edit cc", 'co'], + 'C' => ["copy file", 'mi'], + 'D' => ["delete entry", 'co'], + '^d'=> ["dispo$sign{_}sition tog$sign{_}gle", 'co'], + 'd' => ["desc$sign{_}ribe attach$sign{_}m$sign{_}ent", 'co'], + 'e' => ["edit body", 'co linkvi'], + 'E' => ["edit all", 'co linkvi'], + '^e'=> ["edit encoding", 'co'], + 'f' => ["edit fcc", 'co'], + '^f'=> ["forget pass$sign{_}phrase", 'mi'], + '+f'=> ["edit from", 'co'], + 'F' => ["filter attach$sign{_}m$sign{_}ent", 'co'], + 'G' => ["get attach$sign{_}m$sign{_}ent", 'ci'], + 'h' => ["display message", 'ci'], + 'i' => ["run ispell", 'mi'], + 'l' => ["print attach$sign{_}m$sign{_}ent", 'ci'], + 'm' => ["edit attach$sign{_}m$sign{_}ent", 'co', 'Mime-appropriate open'], + 'M' => ["edit mix", 'co'], + '^m'=> ["view attach$sign{_}m$sign{_}ent", 'ci'], + 'n' => ["new attach$sign{_}m$sign{_}ent", 'mi'], + 'P' => ["post$sign{_}pone", 'mv mode'], + 'r' => ["edit reply$sign{_}-to", 'co'], + 'R' => ["rename attach$sign{_}m$sign{_}ent", 'co'], + 's' => ["edit subject", 'co'], + 'S' => ["s/mime options", 'co menumS'], + 't' => ["edit to", 'co'], + '^t'=> ["ctype attach$sign{_}m$sign{_}ent", 'co'], + 'w' => ["copy to folder", 'mi'], + 'u' => ["unlink toggle", 'mi'], + 'U' => ["encode attach$sign{_}m$sign{_}ent", 'co'], + 'y' => ["send", 'mo'], +}, # compose '/~' => { desc => 'search flags (/~)', @@ -152,3 +199,4 @@ my @generic = qw(^l ! * / : ; < = > ? H L M Z [ ] j k n q t z); '$' => ["unrefer$sign{_}enced"], '(' => ["in thread", 'arg'], }, # search option + diff --git a/mutt.plp b/mutt.plp index 7ecf7fc..ee7f03e 100644 --- a/mutt.plp +++ b/mutt.plp @@ -64,10 +64,10 @@ $keys->print_rows($get{rows});
aside
Temporarily display something without changing state. -
move -
Scroll window, only selecting a different message when necessary. -
select -
Select another message entry. +
select +
Scroll list and/or select a different line. +
search +
Go to a specific message entry.
edit
Modify message flags or contents.
command