keyboard: replace all similar pages
[sheet.git] / mutt.eng.inc.pl
1 use utf8;
2
3 my %commonkey = (
4         'H' => "screen top",
5         'j' => "entry <down>",
6         'k' => "entry <up>",
7         'L' => "screen bottom",
8         '^l'=> "redraw",
9         'M' => "screen middle",
10         '^m'=> "select",
11         'n' => "search <down>",
12         'q' => "exit",
13         't' => "tag",
14         'z' => "page <down>",
15         'Z' => "page <up>",
16
17         '*' => "last entry",
18         '=' => "first entry",
19         ':' => "enter command",
20         ';' => "apply to tagged",
21         '>' => "line <down>",
22         '<' => "line <up>",
23         ']' => "half page <down>",
24         '[' => "half page <up>",
25         '?' => "help",
26         '!' => "invoke shell",
27         '/' => "search <down>",
28         '+/'=> "search <up>",
29 );
30
31 my %commondef = (
32         "\e"=> 'g9 mode',
33
34         'H' => 'g2', # top-page
35         'j' => 'g2', # next-entry, next-undeleted
36         'k' => 'g2', # previous-entry, previous-undeleted
37         'L' => 'g2', # bottom-page
38         '^l'=> 'g1', # refresh
39         'M' => 'g2', # middle-page
40         '^m'=> 'g6 mode^m', # select-entry, display-message
41         'n' => 'g3', # search-next
42         'q' => 'g8 mode', # exit
43         't' => 'g4', # tag-entry
44         'z' => 'g2', # next-page
45         'Z' => 'g2', # previous-page
46
47         '*' => 'g2', # last-entry
48         '=' => 'g2', # first-entry
49         ':' => 'g6', # enter-command
50         ';' => 'g6 arg', # tag-prefix
51         '>' => 'g2', # next-line
52         '<' => 'g2', # previous-line
53         ']' => 'g2', # half-down
54         '[' => 'g2', # half-up
55         '?' => 'g1', # help
56         '!' => 'g1 arg', # shell
57         '/' => 'g3 arg mode/~', # search
58         '+/'=> 'g3 arg mode/~', # search
59 );
60
61 {
62 title => 'Mutt',
63 version => '1.2',
64 description => [
65         "Cheat sheet for the Mutt e-mail client,",
66         "showing the default binding for each key.",
67 ],
68 keywords => [qw' mutt MUA email client '],
69
70 key => {
71         %commonkey,
72
73         '@' => "display sender",
74         '.' => "list new mail",
75         '|' => "pipe to shell",
76         '$' => "save mailbox",
77         '#' => "split up thread",
78         '&' => "thread tagged",
79         '%' => "toggle reado<>nl<>y",
80
81         'a' => "create alias",
82         'b' => "bounce",
83         '^b'=> "url<>view",
84         '+b'=> "search bodies",
85         'c' => "open folder",
86         'C' => "copy messag<>e",
87         '+c'=> "open reado<>nly",
88         '+C'=> "make plain copy",
89         'd' => "delete",
90         'D' => "delete patt<>er<>n",
91         '^d'=> "delete thread",
92         '+d'=> "delete subthread",
93         'e' => "edit",
94         '^e'=> "edit con<>tent type",
95         '+e'=> "edit+send copy",
96         'f' => "forward",
97         'F' => "toggle important",
98         '^f'=> "forget pass<>phras<>e",
99         'g' => "reply to all\nGroup reply",
100         'G' => "fetch POP\nGather new mail",
101         'h' => "toggle headers",
102         '^i'=> "unread msg <down>",
103         '+^i'=> "unread msg <up>",
104         'j' => "messag<>e <down>",
105         'k' => "messag<>e <up>",
106         'J' => "any <down>",
107         'K' => "any <up>",
108         '^k'=> "extract pub keys",
109         '+k'=> "send public key",
110         'l' => "limit pattern",
111         'L' => "reply to list",
112         '+l'=> "show current limit",
113         'm' => "compo<>s<>e mail",
114         'N' => "toggle new",
115         '^n'=> "thread <down>",
116         '+n'=> "subthr<>ead <down>",
117         'o' => "sort",
118         'O' => "sort reverse",
119         'p' => "print",
120         'P' => "to parent",
121         '^p'=> "thread <up>",
122         '+p'=> "subthr<>ead <up>",
123         '+P'=> "check for pgp",
124         'q' => "quit",
125         'Q' => "query addr<>ess<>es",
126         'r' => "reply to sender",
127         'R' => "recall postpon<>e<>d",
128         '^r'=> "mark thread read",
129         '+r'=> "mark sub<>thread r<>ead",
130         's' => "move",
131         '+s'=> "save and delete",
132         'T' => "tag patt<>er<>n",
133         '^t'=> "untag pattern",
134         '+t'=> "tag thread",
135         'u' => "undo delete",
136         'U' => "res<>tore pat<>t<>er<>n",
137         '^u'=> "restore thread",
138         '+u'=> "restore subthread",
139         'v' => "attach<>ments",
140         'V' => "version",
141         '+v'=> "(un)collapse thread",
142         '+V'=> "(un)collapse threads",
143         'w' => "set flag",
144         'W' => "clear flag",
145         'x' => "abort",
146         'y' => "list incoming mailboxes",
147
148         (map { 'm'.$_ => $commonkey{$_} } keys %commonkey),
149
150         'm|' => "pipe attach<>m<>ent",
151         'ma' => "attach file",
152         'mA' => "attach messag<>e",
153         'mb' => "edit bcc",
154         'mc' => "edit cc",
155         'mC' => "copy file",
156         'md' => "desc<>ribe attach<>m<>ent",
157         'mD' => "delete attach<>m<>ent",
158         'm^d'=> "dispo<>sition tog<>gle",
159         'me' => "edit body",
160         'mE' => "edit all",
161         'm^e'=> "edit encoding",
162         'mf' => "edit fcc",
163         'm^f'=> "forget pass<>phrase",
164         'm+f'=> "edit from",
165         'mF' => "filter attach<>m<>ent",
166         'mG' => "get attach<>m<>ent",
167         'mh' => "display message",
168         'mi' => "run ispell",
169         'ml' => "print attach<>m<>ent",
170         'mm' => "edit attach<>m<>ent\nMime-appropriate open",
171         'mM' => "edit mix",
172         'm^m'=> "view attach<>m<>ent",
173         'mn' => "new attach<>m<>ent",
174         'mP' => "post<>pone",
175         'mr' => "edit reply<>-to",
176         'mR' => "rename attach<>m<>ent",
177         'ms' => "edit subject",
178         'mS' => "s/mime options",
179         'mt' => "edit to",
180         'm^t'=> "ctype attach<>m<>ent",
181         'mw' => "copy to folder",
182         'mu' => "unlink toggle",
183         'mU' => "encode attach<>m<>ent",
184         'my' => "send",
185
186         'wD' => "deleted",
187         'wN' => "new",
188         'wO' => "old",
189         'wr' => "replied",
190         'w*' => "tagged",
191         'w!' => "flagged",
192
193         '/~A' => "all",
194         '/~b' => "msg body",
195         '/~B' => "whole msg",
196         '/~c' => "cc address",
197         '/~C' => "to or cc address",
198         '/~d' => "date sent ran<>g<>e",
199         '/~D' => "deleted",
200         '/~e' => "sender",
201         '/~E' => "expired",
202         '/~f' => "from",
203         '/~F' => "flagged",
204         '/~g' => "signed",
205         '/~G' => "encryp<>ted",
206         '/~h' => "header",
207         '/~H' => "spam attr<>ib<>ute",
208         '/~i' => "msg id",
209         '/~k' => "pgp key",
210         '/~L' => "receiv<>d by",
211         '/~l' => "mailing list",
212         '/~m' => "num<>ber ran<>g<>e",
213         '/~n' => "score range",
214         '/~N' => "new",
215         '/~O' => "old",
216         '/~p' => "to you",
217         '/~P' => "by you",
218         '/~Q' => "replies",
219         '/~r' => "receive date ran<>ge",
220         '/~R' => "read",
221         '/~s' => "subject",
222         '/~S' => "super<>seded",
223         '/~t' => "to address",
224         '/~T' => "tagged",
225         '/~u' => "subscr<>ibed list",
226         '/~U' => "unread",
227         '/~v' => "collapsed thread",
228         '/~V' => "verified",
229         '/~x' => "refer<>ence",
230         '/~X' => "attach<>ments",
231         '/~y' => "x-label",
232         '/~z' => "size range",
233         '/~=' => "dupli<>cate",
234         '/~$' => "unrefer<>enced",
235         '/~(' => "in thread",
236
237         # globally label escape as meta key
238           "\e"=> "+",
239          "m\e"=> "+",
240          "w\e"=> "+",
241         "/~\e"=> "+",
242 },
243
244 mode => {
245         '' => 'index',
246         'm' => 'compose (m)',
247         w => 'message flags (w)',
248         '/~' => 'search flags (/~)',
249 },
250
251 flag => {
252         g1 => [aside   => "Temporarily display something without changing state."],
253         g2 => [select  => "Scroll list and/or select a different line."],
254         g3 => [search  => "Go to a specific message entry."],
255         g4 => [edit    => "Modify message flags or contents."],
256         g6 => [command => "Any other action which does not alter an existing message."],
257         g7 => [send    => "Prepare and/or send a (new) message."],
258         g8 => [leave   => "Exit the opened folder."],
259         g9 => [display => "Permanently alter/toggle current view."],
260
261         arg => ["key<arg>" => "Commands with a dot need an argument afterwards."],
262 },
263
264 def => {
265         '' => {
266                 %commondef,
267
268                 '@' => 'g1', # display-address
269                 '.' => 'g8', # buffy-list #TODO
270                 '|' => 'g6', # pipe-message
271                 '$' => 'g4', # sync-mailbox
272                 '#' => 'g4', # break-thread
273                 '&' => 'g4', # link-threads
274                 '%' => 'g4', # toggle-write
275                 ' ' => '=^m',
276
277                 'a' => 'g6', # create-alias
278                 'b' => 'g7', # bounce-message
279                 '^b'=> 'g1',
280                 '+b'=> undef, # M <search>~b
281                 'c' => 'g8', # change-folder
282                 'C' => 'g6', # copy-message
283                 '+c'=> 'g8', # change-folder-readonly
284                 '+C'=> undef, # decode-copy
285                 'd' => 'g4', # delete-message
286                 'D' => 'g4 arg', # delete-pattern
287                 '^d'=> 'g4', # delete-thread
288                 '+d'=> 'g4', # delete-subthread
289                 'e' => 'g4 linkvi', # edit
290                 '^e'=> 'g4', # edit-type
291                 '+e'=> undef, # resend-message
292                 'f' => 'g7 modem', # forward-message
293                 'F' => 'g4', # flag-message
294                 '^f'=> 'g6', # forget-passphrase
295                 'g' => 'g7 modem', # group-reply
296                 'G' => 'g6', # fetch-mail
297                 'h' => 'g9', # display-toggle-weed
298                 '^i'=> 'g3', # next-new-then-unread
299                 '+^i'=> undef, # previous-new-then-unread
300                 'j' => 'g2', # next-undeleted
301                 'k' => 'g2', # previous-undeleted
302                 'J' => 'g3', # next-entry
303                 'K' => 'g3', # previous-entry
304                 '^k'=> 'g1', # extract-keys
305                 '+k'=> 'g7 modem', # mail-key
306                 'l' => 'g9', # limit
307                 'L' => 'g7 modem', # list-reply
308                 '+l'=> 'g1', # show-limit
309                 'm' => 'g7 modem', # mail
310                 'N' => 'g4', # toggle-new
311                 '^n'=> 'g3', # next-thread
312                 '+n'=> 'g3', # next-subthread
313                 'o' => 'g9 modeo', # sort-mailbox
314                 'O' => 'g9 modeo', # sort-reverse
315                 'p' => 'g1', # print-message
316                 'P' => 'g3', # parent-message
317                 '^p'=> 'g3', # previous-thread
318                 '+p'=> 'g3', # previous-subthread
319                 '+P'=> undef, # check-traditional-pgp
320                 'q' => 'g8', # quit
321                 'Q' => 'g1 arg', # query
322                 'r' => 'g7 modem', # reply
323                 'R' => 'g7 modem', # recall-message
324                 '^r'=> 'g4', # read-thread
325                 '+r'=> 'g4', # read-subthread
326                 's' => 'g4', # save-message
327                 '+s'=> 'g4', # decode-save
328                 'T' => 'g4 arg', # tag-pattern
329                 '^t'=> 'g4', # untag-pattern
330                 '+t'=> 'g4', # tag-thread
331                 'u' => 'g4', # undelete-message
332                 'U' => 'g4 arg', # undelete-pattern
333                 '^u'=> 'g4', # undelete-thread
334                 '+u'=> 'g4', # undelete-subthread
335                 'v' => 'g1', # view-attachments
336                 'V' => 'g1', # show-version
337                 '+v'=> 'g9', # collapse-thread
338                 '+V'=> 'g9', # collapse-all
339                 'w' => 'g4 arg modew', # set-flag
340                 'W' => 'g4 arg modew', # clear-flag
341                 'x' => 'g8', # exit
342                 'y' => 'g8', # M <change-folder>?<toggle-mailboxes>
343         }, # index
344
345         'm' => {
346                 %commondef,
347
348                 '|' => 'g4',
349                 'a' => 'g6',
350                 'A' => 'g6',
351                 'b' => 'g4',
352                 'c' => 'g4',
353                 'C' => 'g6',
354                 'd' => 'g4',
355                 'D' => 'g4',
356                 '^d'=> 'g4',
357                 'e' => 'g4 linkvi',
358                 'E' => 'g4 linkvi',
359                 '^e'=> 'g4',
360                 'f' => 'g4',
361                 '^f'=> 'g6',
362                 '+f'=> 'g4',
363                 'F' => 'g4',
364                 'G' => 'g1',
365                 'h' => 'g1',
366                 'i' => 'g6',
367                 'l' => 'g1',
368                 'm' => 'g4',
369                 'M' => 'g4',
370                 '^m'=> 'g1',
371                 'n' => 'g6',
372                 'P' => 'g8 mode',
373                 'r' => 'g4',
374                 'R' => 'g4',
375                 's' => 'g4',
376                 'S' => 'g4 menumS',
377                 't' => 'g4',
378                 '^t'=> 'g4',
379                 'w' => 'g6',
380                 'u' => 'g6',
381                 'U' => 'g4',
382                 'y' => 'g7',
383         }, # compose
384
385         w => {
386                 "\e"=> 'g9 mode',
387                 'D' => 'g4',
388                 'd' => '=wD',
389                 'N' => 'g4',
390                 'n' => '=wN',
391                 'O' => 'g4',
392                 'o' => '=wO',
393                 'r' => 'g4',
394                 'R' => '=wr',
395                 '*' => 'g4',
396                 '!' => 'g4',
397         }, # flag
398
399         '/~' => {
400                 "\e"=> 'g9 mode',
401                 A => 'g3',
402                 b => 'g3 arg',
403                 B => 'g3 arg',
404                 c => 'g3 arg',
405                 C => 'g3 arg',
406                 d => 'g3 arg',
407                 D => 'g3',
408                 e => 'g3 arg',
409                 E => 'g3',
410                 f => 'g3 arg',
411                 F => 'g3',
412                 g => 'g3',
413                 G => 'g3',
414                 h => 'g3 arg',
415                 H => 'g3 arg',
416                 i => 'g3 arg',
417                 k => 'g3',
418                 L => 'g3 arg',
419                 l => 'g3',
420                 m => 'g3 arg',
421                 n => 'g3 arg',
422                 N => 'g3',
423                 O => 'g3',
424                 p => 'g3',
425                 P => 'g3',
426                 Q => 'g3',
427                 r => 'g3 arg',
428                 R => 'g3',
429                 s => 'g3',
430                 S => 'g3',
431                 t => 'g3 arg',
432                 T => 'g3',
433                 u => 'g3',
434                 U => 'g3',
435                 v => 'g3',
436                 V => 'g3',
437                 x => 'g3 arg',
438                 X => 'g3 arg',
439                 y => 'g3 arg',
440                 z => 'g3 arg',
441                 '=' => 'g3',
442                 '$' => 'g3',
443                 '(' => 'g3 arg',
444         }, # search option
445 },
446 }