simplify some mime things
[apps/madmutt.git] / functions.def
1 /*
2  *  This program is free software; you can redistribute it and/or modify
3  *  it under the terms of the GNU General Public License as published by
4  *  the Free Software Foundation; either version 2 of the License, or (at
5  *  your option) any later version.
6  *
7  *  This program is distributed in the hope that it will be useful, but
8  *  WITHOUT ANY WARRANTY; without even the implied warranty of
9  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10  *  General Public License for more details.
11  *
12  *  You should have received a copy of the GNU General Public License
13  *  along with this program; if not, write to the Free Software
14  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
15  *  MA 02110-1301, USA.
16  *
17  *  Copyright © 2006 Pierre Habouzit
18  */
19
20 /*
21  * Copyright notice from original mutt:
22  * Copyright (C) 1996-2000 Michael R. Elkins <me@mutt.org>
23  *
24  * This file is part of mutt-ng, see http://www.muttng.org/.
25  * It's licensed under the GNU General Public License, 
26  * please see the file GPL in the top level source directory.
27  */
28
29 /*
30  * This file contains the structures needed to parse ``bind'' commands, as
31  * well as the default bindings for each menu.
32  *
33  * Notes:
34  *
35  * - If you want to bind \n or \r, use M_ENTER_S so that it will work
36  * correctly under both ncurses and S-Lang
37  *
38  * - If you need to bind a control char, use the octal value because the \cX
39  * construct does not work at this level.
40  *
41  */
42
43 #if defined(MUTT_FUNCTIONS_PROTO)
44 #  define LIST(name)     extern struct binding_t name[]
45 #  define ITEM(a, b, c)
46 #  define ENDLIST        ;
47 #elif defined (MUTT_FUNCTIONS_VALUES)
48 #  define LIST(name)     struct binding_t name[] = {
49 #  define ITEM(a, b, c)  {a, b, c},
50 #  define ENDLIST        {NULL, -1, NULL}};
51 #else
52 #  error neither MUTT_FUNCTIONS_PROTO nor MUTT_FUNCTIONS_VALUES is defined
53 #endif
54
55 LIST(OpGeneric)
56     ITEM("top-page",         OP_TOP_PAGE,             "H")
57     ITEM("next-entry",       OP_NEXT_ENTRY,           "j")
58     ITEM("previous-entry",   OP_PREV_ENTRY,           "k")
59     ITEM("bottom-page",      OP_BOTTOM_PAGE,          "L")
60     ITEM("refresh",          OP_REDRAW,               "\014")
61     ITEM("middle-page",      OP_MIDDLE_PAGE,          "M")
62     ITEM("search-next",      OP_SEARCH_NEXT,          "n")
63     ITEM("exit",             OP_EXIT,                 "q")
64     ITEM("tag-entry",        OP_TAG,                  "t")
65     ITEM("next-page",        OP_NEXT_PAGE,            "z")
66     ITEM("previous-page",    OP_PREV_PAGE,            "Z")
67     ITEM("last-entry",       OP_LAST_ENTRY,           "*")
68     ITEM("first-entry",      OP_FIRST_ENTRY,          "=")
69     ITEM("enter-command",    OP_ENTER_COMMAND,        ":")
70     ITEM("next-line",        OP_NEXT_LINE,            ">")
71     ITEM("previous-line",    OP_PREV_LINE,            "<")
72     ITEM("half-up",          OP_HALF_UP,              "[")
73     ITEM("half-down",        OP_HALF_DOWN,            "]")
74     ITEM("help",             OP_HELP,                 "?")
75     ITEM("tag-prefix",       OP_TAG_PREFIX,           ";")
76     ITEM("tag-prefix-cond",  OP_TAG_PREFIX_COND,      NULL)
77     ITEM("end-cond",         OP_END_COND,             NULL)
78     ITEM("shell-escape",     OP_SHELL_ESCAPE,         "!")
79     ITEM("select-entry",     OP_GENERIC_SELECT_ENTRY, M_ENTER_S)
80     ITEM("search",           OP_SEARCH,               "/")
81     ITEM("search-reverse",   OP_SEARCH_REVERSE,       "\033/")
82     ITEM("search-opposite",  OP_SEARCH_OPPOSITE,      NULL)
83     ITEM("jump",             OP_JUMP,                 NULL)
84     ITEM("current-top",      OP_CURRENT_TOP,          NULL)
85     ITEM("current-middle",   OP_CURRENT_MIDDLE,       NULL)
86     ITEM("current-bottom",   OP_CURRENT_BOTTOM,       NULL)
87     ITEM("what-key",         OP_WHAT_KEY,             NULL)
88     ITEM("rebuild-cache",    OP_REBUILD_CACHE,        NULL)
89 ENDLIST
90
91 LIST(OpMain)
92     ITEM("create-alias",              OP_CREATE_ALIAS,               "a")
93     ITEM("bounce-message",            OP_BOUNCE_MESSAGE,             "b")
94     ITEM("break-thread",              OP_MAIN_BREAK_THREAD,          "#")
95     ITEM("change-folder",             OP_MAIN_CHANGE_FOLDER,         "c")
96     ITEM("change-folder-readonly",    OP_MAIN_CHANGE_FOLDER_READONLY,"\033c")
97 #ifdef USE_NNTP
98     ITEM("change-newsgroup",          OP_MAIN_CHANGE_GROUP,          "i")
99     ITEM("change-newsgroup-readonly", OP_MAIN_CHANGE_GROUP_READONLY, "\033i")
100 #endif
101     ITEM("collapse-thread",           OP_MAIN_COLLAPSE_THREAD,       "\033v")
102     ITEM("collapse-all",              OP_MAIN_COLLAPSE_ALL,          "\033V")
103     ITEM("copy-message",              OP_COPY_MESSAGE,               "C")
104     ITEM("decode-copy",               OP_DECODE_COPY,                "\033C")
105     ITEM("decode-save",               OP_DECODE_SAVE,                "\033s")
106     ITEM("delete-message",            OP_DELETE,                     "d")
107     ITEM("delete-pattern",            OP_MAIN_DELETE_PATTERN,        "D")
108     ITEM("delete-thread",             OP_DELETE_THREAD,              "\004")
109     ITEM("delete-subthread",          OP_DELETE_SUBTHREAD,           "\033d")
110     ITEM("edit",                      OP_EDIT_MESSAGE,               "e")
111     ITEM("edit-type",                 OP_EDIT_TYPE,                  "\005")
112     ITEM("forward-message",           OP_FORWARD_MESSAGE,            "f")
113 #ifdef USE_NNTP
114     ITEM("forward-to-group",          OP_FORWARD_TO_GROUP,           "\033F")
115     ITEM("followup-message",          OP_FOLLOWUP,                   "F")
116     ITEM("get-children",              OP_GET_CHILDREN,               NULL)
117     ITEM("get-message",               OP_GET_MESSAGE,                "\007")
118     ITEM("get-parent",                OP_GET_PARENT,                 "\033G")
119     ITEM("reconstruct-thread",        OP_RECONSTRUCT_THREAD,         NULL)
120 #endif
121     ITEM("flag-message",              OP_FLAG_MESSAGE,               "\033f")
122     ITEM("group-reply",               OP_GROUP_REPLY,                "g")
123     ITEM("fetch-mail",                OP_MAIN_FETCH_MAIL,            "G")
124     ITEM("imap-fetch-mail",           OP_MAIN_IMAP_FETCH,            NULL)
125     ITEM("display-toggle-weed",       OP_DISPLAY_HEADERS,            "h")
126     ITEM("next-undeleted",            OP_MAIN_NEXT_UNDELETED,        "j")
127     ITEM("previous-undeleted",        OP_MAIN_PREV_UNDELETED,        "k")
128     ITEM("limit",                     OP_MAIN_LIMIT,                 "l")
129     ITEM("link-threads",              OP_MAIN_LINK_THREADS,          "&")
130     ITEM("list-reply",                OP_LIST_REPLY,                 "L")
131     ITEM("mail",                      OP_MAIL,                       "m")
132     ITEM("toggle-new",                OP_TOGGLE_NEW,                 "N")
133     ITEM("toggle-write",              OP_TOGGLE_WRITE,               "%")
134     ITEM("next-thread",               OP_MAIN_NEXT_THREAD,           "\016")
135     ITEM("next-subthread",            OP_MAIN_NEXT_SUBTHREAD,        "\033n")
136     ITEM("purge-message",             OP_PURGE_MESSAGE,              NULL)
137     ITEM("query",                     OP_QUERY,                      "Q")
138     ITEM("quit",                      OP_QUIT,                       "q")
139     ITEM("reply",                     OP_REPLY,                      "r")
140     ITEM("show-limit",                OP_MAIN_SHOW_LIMIT,            "\033l")
141     ITEM("sort-mailbox",              OP_SORT,                       "o")
142     ITEM("sort-reverse",              OP_SORT_REVERSE,               "O")
143     ITEM("print-message",             OP_PRINT,                      "p")
144 #ifdef USE_NNTP
145     ITEM("post-message",              OP_POST,                       "P")
146 #endif
147     ITEM("previous-thread",           OP_MAIN_PREV_THREAD,           "\020")
148     ITEM("previous-subthread",        OP_MAIN_PREV_SUBTHREAD,        "\033p")
149     ITEM("recall-message",            OP_RECALL_MESSAGE,             "R")
150     ITEM("read-thread",               OP_MAIN_READ_THREAD,           "\022")
151     ITEM("read-subthread",            OP_MAIN_READ_SUBTHREAD,        "\033r")
152     ITEM("resend-message",            OP_RESEND,                     "\033e")
153     ITEM("save-message",              OP_SAVE,                       "s")
154     ITEM("tag-pattern",               OP_MAIN_TAG_PATTERN,           "T")
155     ITEM("tag-subthread",             OP_TAG_SUBTHREAD,              NULL)
156     ITEM("tag-thread",                OP_TAG_THREAD,                 "\033t")
157     ITEM("untag-pattern",             OP_MAIN_UNTAG_PATTERN,         "\024")
158     ITEM("undelete-message",          OP_UNDELETE,                   "u")
159     ITEM("undelete-pattern",          OP_MAIN_UNDELETE_PATTERN,      "U")
160     ITEM("undelete-subthread",        OP_UNDELETE_SUBTHREAD,         "\033u")
161     ITEM("undelete-thread",           OP_UNDELETE_THREAD,            "\025")
162     ITEM("view-attachments",          OP_VIEW_ATTACHMENTS,           "v")
163     ITEM("show-version",              OP_VERSION,                    "V")
164     ITEM("set-flag",                  OP_MAIN_SET_FLAG,              "w")
165     ITEM("clear-flag",                OP_MAIN_CLEAR_FLAG,            "W")
166     ITEM("toggle-read",               OP_TOGGLE_READ,                "X")
167 #ifdef USE_NNTP
168     ITEM("catchup",                   OP_CATCHUP,                    "y")
169 #endif
170     ITEM("display-message",           OP_DISPLAY_MESSAGE,            M_ENTER_S)
171     ITEM("buffy-list",                OP_BUFFY_LIST,                 ".")
172     ITEM("sync-mailbox",              OP_MAIN_SYNC_FOLDER,           "$")
173     ITEM("display-address",           OP_DISPLAY_ADDRESS,            "@")
174     ITEM("pipe-message",              OP_PIPE,                       "|")
175     ITEM("next-new",                  OP_MAIN_NEXT_NEW,              NULL)
176     ITEM("next-new-then-unread",      OP_MAIN_NEXT_NEW_THEN_UNREAD,  "\t")
177     ITEM("previous-new",              OP_MAIN_PREV_NEW,              NULL)
178     ITEM("previous-new-then-unread",  OP_MAIN_PREV_NEW_THEN_UNREAD,  "\033\t")
179     ITEM("next-unread",               OP_MAIN_NEXT_UNREAD,           NULL)
180     ITEM("previous-unread",           OP_MAIN_PREV_UNREAD,           NULL)
181     ITEM("parent-message",            OP_MAIN_PARENT_MESSAGE,        NULL)
182
183
184     ITEM("extract-keys",              OP_EXTRACT_KEYS,               "\013")
185     ITEM("forget-passphrase",         OP_FORGET_PASSPHRASE,          "\006")
186     ITEM("check-traditional-pgp",     OP_CHECK_TRADITIONAL,          "\033P")
187     ITEM("mail-key",                  OP_MAIL_KEY,                   "\033k")
188     ITEM("decrypt-copy",              OP_DECRYPT_COPY,               NULL)
189     ITEM("decrypt-save",              OP_DECRYPT_SAVE,               NULL)
190
191
192     ITEM("sidebar-scroll-up",         OP_SIDEBAR_SCROLL_UP,          NULL)
193     ITEM("sidebar-scroll-down",       OP_SIDEBAR_SCROLL_DOWN,        NULL)
194     ITEM("sidebar-next",              OP_SIDEBAR_NEXT,               NULL)
195     ITEM("sidebar-prev",              OP_SIDEBAR_PREV,               NULL)
196     ITEM("sidebar-next-new",          OP_SIDEBAR_NEXT_NEW,           NULL)
197     ITEM("sidebar-prev-new",          OP_SIDEBAR_PREV_NEW,           NULL)
198     ITEM("sidebar-open",              OP_SIDEBAR_OPEN,               NULL)
199 ENDLIST
200
201 LIST(OpPager)
202     ITEM("break-thread",              OP_MAIN_BREAK_THREAD,           "#")
203     ITEM("create-alias",              OP_CREATE_ALIAS,                "a")
204     ITEM("bounce-message",            OP_BOUNCE_MESSAGE,              "b")
205     ITEM("change-folder",             OP_MAIN_CHANGE_FOLDER,          "c")
206     ITEM("change-folder-readonly",    OP_MAIN_CHANGE_FOLDER_READONLY, "\033c")
207 #ifdef USE_NNTP
208     ITEM("change-newsgroup",          OP_MAIN_CHANGE_GROUP,           "i")
209     ITEM("change-newsgroup-readonly", OP_MAIN_CHANGE_GROUP_READONLY,  "\033i")
210 #endif
211     ITEM("copy-message",              OP_COPY_MESSAGE,                "C")
212     ITEM("decode-copy",               OP_DECODE_COPY,                 "\033C")
213     ITEM("delete-message",            OP_DELETE,                      "d")
214     ITEM("delete-thread",             OP_DELETE_THREAD,               "\004")
215     ITEM("delete-subthread",          OP_DELETE_SUBTHREAD,            "\033d")
216     ITEM("edit",                      OP_EDIT_MESSAGE,                "e")
217     ITEM("edit-type",                 OP_EDIT_TYPE,                   "\005")
218 #ifdef USE_NNTP
219     ITEM("followup-message",          OP_FOLLOWUP,                    "F")
220     ITEM("forward-to-group",          OP_FORWARD_TO_GROUP,            "\033F")
221 #endif
222     ITEM("forward-message",           OP_FORWARD_MESSAGE,             "f")
223     ITEM("flag-message",              OP_FLAG_MESSAGE,                "\033f")
224     ITEM("group-reply",               OP_GROUP_REPLY,                 "g")
225     ITEM("imap-fetch-mail",           OP_MAIN_IMAP_FETCH,             NULL)
226     ITEM("display-toggle-weed",       OP_DISPLAY_HEADERS,             "h")
227     ITEM("next-undeleted",            OP_MAIN_NEXT_UNDELETED,         "j")
228     ITEM("next-entry",                OP_NEXT_ENTRY,                  "J")
229     ITEM("previous-undeleted",        OP_MAIN_PREV_UNDELETED,         "k")
230     ITEM("previous-entry",            OP_PREV_ENTRY,                  "K")
231     ITEM("link-threads",              OP_MAIN_LINK_THREADS,           "&")
232     ITEM("list-reply",                OP_LIST_REPLY,                  "L")
233     ITEM("redraw-screen",             OP_REDRAW,                      "\014")
234     ITEM("mail",                      OP_MAIL,                        "m")
235     ITEM("mark-as-new",               OP_TOGGLE_NEW,                  "N")
236     ITEM("search-next",               OP_SEARCH_NEXT,                 "n")
237     ITEM("next-thread",               OP_MAIN_NEXT_THREAD,            "\016")
238     ITEM("next-subthread",            OP_MAIN_NEXT_SUBTHREAD,         "\033n")
239     ITEM("print-message",             OP_PRINT,                       "p")
240 #ifdef USE_NNTP
241     ITEM("post-message",              OP_POST,                        "P")
242 #endif
243     ITEM("previous-thread",           OP_MAIN_PREV_THREAD,            "\020")
244     ITEM("previous-subthread",        OP_MAIN_PREV_SUBTHREAD,         "\033p")
245     ITEM("purge-message",             OP_PURGE_MESSAGE,               NULL)
246     ITEM("quit",                      OP_QUIT,                        "Q")
247     ITEM("exit",                      OP_EXIT,                        "q")
248     ITEM("reply",                     OP_REPLY,                       "r")
249     ITEM("recall-message",            OP_RECALL_MESSAGE,              "R")
250     ITEM("read-thread",               OP_MAIN_READ_THREAD,            "\022")
251     ITEM("read-subthread",            OP_MAIN_READ_SUBTHREAD,         "\033r")
252     ITEM("resend-message",            OP_RESEND,                      "\033e")
253     ITEM("save-message",              OP_SAVE,                        "s")
254     ITEM("skip-quoted",               OP_PAGER_SKIP_QUOTED,           "S")
255     ITEM("decode-save",               OP_DECODE_SAVE,                 "\033s")
256     ITEM("tag-message",               OP_TAG,                         "t")
257     ITEM("toggle-quoted",             OP_PAGER_HIDE_QUOTED,           "T")
258     ITEM("undelete-message",          OP_UNDELETE,                    "u")
259     ITEM("undelete-subthread",        OP_UNDELETE_SUBTHREAD,          "\033u")
260     ITEM("undelete-thread",           OP_UNDELETE_THREAD,             "\025")
261     ITEM("view-attachments",          OP_VIEW_ATTACHMENTS,            "v")
262     ITEM("show-version",              OP_VERSION,                     "V")
263     ITEM("search-toggle",             OP_SEARCH_TOGGLE,               "\\")
264     ITEM("display-address",           OP_DISPLAY_ADDRESS,             "@")
265     ITEM("next-new",                  OP_MAIN_NEXT_NEW,               NULL)
266     ITEM("next-new-then-unread",      OP_MAIN_NEXT_NEW_THEN_UNREAD,   "\t")
267     ITEM("pipe-message",              OP_PIPE,                        "|")
268     ITEM("help",                      OP_HELP,                        "?")
269     ITEM("next-page",                 OP_NEXT_PAGE,                   " ")
270     ITEM("previous-page",             OP_PREV_PAGE,                   "-")
271     ITEM("top",                       OP_PAGER_TOP,                   "^")
272     ITEM("sync-mailbox",              OP_MAIN_SYNC_FOLDER,            "$")
273     ITEM("shell-escape",              OP_SHELL_ESCAPE,                "!")
274     ITEM("enter-command",             OP_ENTER_COMMAND,               ":")
275     ITEM("buffy-list",                OP_BUFFY_LIST,                  ".")
276     ITEM("search",                    OP_SEARCH,                      "/")
277     ITEM("search-reverse",            OP_SEARCH_REVERSE,              "\033/")
278     ITEM("search-opposite",           OP_SEARCH_OPPOSITE,             NULL)
279     ITEM("next-line",                 OP_NEXT_LINE,                   M_ENTER_S)
280     ITEM("jump",                      OP_JUMP,                        NULL)
281     ITEM("next-unread",               OP_MAIN_NEXT_UNREAD,            NULL)
282     ITEM("previous-new",              OP_MAIN_PREV_NEW,               NULL)
283     ITEM("previous-new-then-unread",  OP_MAIN_PREV_NEW_THEN_UNREAD,   NULL)
284     ITEM("previous-unread",           OP_MAIN_PREV_UNREAD,            NULL)
285     ITEM("half-up",                   OP_HALF_UP,                     NULL)
286     ITEM("half-down",                 OP_HALF_DOWN,                   NULL)
287     ITEM("previous-line",             OP_PREV_LINE,                   NULL)
288     ITEM("bottom",                    OP_PAGER_BOTTOM,                NULL)
289     ITEM("parent-message",            OP_MAIN_PARENT_MESSAGE,         NULL)
290
291     ITEM("check-traditional-pgp",     OP_CHECK_TRADITIONAL,           "\033P")
292     ITEM("mail-key",                  OP_MAIL_KEY,                    "\033k")
293     ITEM("extract-keys",              OP_EXTRACT_KEYS,                "\013")
294     ITEM("forget-passphrase",         OP_FORGET_PASSPHRASE,           "\006")
295     ITEM("decrypt-copy",              OP_DECRYPT_COPY,                NULL)
296     ITEM("decrypt-save",              OP_DECRYPT_SAVE,                NULL)
297
298     ITEM("sidebar-scroll-up",         OP_SIDEBAR_SCROLL_UP,           NULL)
299     ITEM("sidebar-scroll-down",       OP_SIDEBAR_SCROLL_DOWN,         NULL)
300     ITEM("sidebar-next",              OP_SIDEBAR_NEXT,                NULL)
301     ITEM("sidebar-prev",              OP_SIDEBAR_PREV,                NULL)
302     ITEM("sidebar-next-new",          OP_SIDEBAR_NEXT_NEW,            NULL)
303     ITEM("sidebar-prev-new",          OP_SIDEBAR_PREV_NEW,            NULL)
304     ITEM("sidebar-open",              OP_SIDEBAR_OPEN,                NULL)
305 ENDLIST
306
307 LIST(OpAttach)
308     ITEM("bounce-message",           OP_BOUNCE_MESSAGE,           "b")
309     ITEM("display-toggle-weed",      OP_DISPLAY_HEADERS,          "h")
310     ITEM("edit-type",                OP_EDIT_TYPE,                "\005")
311 #ifdef USE_NNTP
312     ITEM("followup-message",         OP_FOLLOWUP,                 "F")
313     ITEM("forward-to-group",         OP_FORWARD_TO_GROUP,         "\033F")
314 #endif
315     ITEM("print-entry",              OP_PRINT,                    "p")
316     ITEM("save-entry",               OP_SAVE,                     "s")
317     ITEM("pipe-entry",               OP_PIPE,                     "|")
318     ITEM("view-mailcap",             OP_ATTACH_VIEW_MAILCAP,      "m")
319     ITEM("reply",                    OP_REPLY,                    "r")
320     ITEM("resend-message",           OP_RESEND,                   "\033e")
321     ITEM("group-reply",              OP_GROUP_REPLY,              "g")
322     ITEM("list-reply",               OP_LIST_REPLY,               "L")
323     ITEM("forward-message",          OP_FORWARD_MESSAGE,          "f")
324     ITEM("view-text",                OP_ATTACH_VIEW_TEXT,         "T")
325     ITEM("view-attach",              OP_VIEW_ATTACH,              M_ENTER_S)
326     ITEM("delete-entry",             OP_DELETE,                   "d")
327     ITEM("undelete-entry",           OP_UNDELETE,                 "u")
328     ITEM("collapse-parts",           OP_ATTACH_COLLAPSE,          "v")
329
330     ITEM("check-traditional-pgp",    OP_CHECK_TRADITIONAL,        "\033P")
331     ITEM("extract-keys",             OP_EXTRACT_KEYS,             "\013")
332     ITEM("forget-passphrase",        OP_FORGET_PASSPHRASE,        "\006")
333 ENDLIST
334
335 LIST(OpCompose)
336     ITEM("attach-file",              OP_COMPOSE_ATTACH_FILE,         "a")
337     ITEM("attach-message",           OP_COMPOSE_ATTACH_MESSAGE,      "A")
338     ITEM("attach-news-message",      OP_COMPOSE_ATTACH_NEWS_MESSAGE, "\033a")
339     ITEM("edit-bcc",                 OP_COMPOSE_EDIT_BCC,            "b")
340     ITEM("edit-cc",                  OP_COMPOSE_EDIT_CC,             "c")
341     ITEM("copy-file",                OP_SAVE,                        "C")
342     ITEM("detach-file",              OP_DELETE,                      "D")
343     ITEM("toggle-disposition",       OP_COMPOSE_TOGGLE_DISPOSITION,  "\004")
344     ITEM("edit-description",         OP_COMPOSE_EDIT_DESCRIPTION,    "d")
345     ITEM("edit-message",             OP_COMPOSE_EDIT_MESSAGE,        "e")
346     ITEM("edit-headers",             OP_COMPOSE_EDIT_HEADERS,        "E")
347     ITEM("edit-file",                OP_COMPOSE_EDIT_FILE,           "\030e")
348     ITEM("edit-encoding",            OP_COMPOSE_EDIT_ENCODING,       "\005")
349     ITEM("edit-from",                OP_COMPOSE_EDIT_FROM,           "\033f")
350     ITEM("edit-fcc",                 OP_COMPOSE_EDIT_FCC,            "f")
351     ITEM("filter-entry",             OP_FILTER,                      "F")
352     ITEM("get-attachment",           OP_COMPOSE_GET_ATTACHMENT,      "G")
353     ITEM("display-toggle-weed",      OP_DISPLAY_HEADERS,             "h")
354     ITEM("ispell",                   OP_COMPOSE_ISPELL,              "i")
355     ITEM("print-entry",              OP_PRINT,                       "l")
356     ITEM("edit-mime",                OP_COMPOSE_EDIT_MIME,           "m")
357     ITEM("new-mime",                 OP_COMPOSE_NEW_MIME,            "n")
358 #ifdef USE_NNTP
359     ITEM("edit-newsgroups",          OP_COMPOSE_EDIT_NEWSGROUPS,     "N")
360     ITEM("edit-followup-to",         OP_COMPOSE_EDIT_FOLLOWUP_TO,    "o")
361     ITEM("edit-x-comment-to",        OP_COMPOSE_EDIT_X_COMMENT_TO,   "x")
362 #endif
363     ITEM("postpone-message",         OP_COMPOSE_POSTPONE_MESSAGE,    "P")
364     ITEM("edit-reply-to",            OP_COMPOSE_EDIT_REPLY_TO,       "r")
365     ITEM("rename-file",              OP_COMPOSE_RENAME_FILE,         "R")
366     ITEM("edit-subject",             OP_COMPOSE_EDIT_SUBJECT,        "s")
367     ITEM("edit-to",                  OP_COMPOSE_EDIT_TO,             "t")
368     ITEM("edit-type",                OP_EDIT_TYPE,                   "\024")
369     ITEM("write-fcc",                OP_COMPOSE_WRITE_MESSAGE,       "w")
370     ITEM("toggle-unlink",            OP_COMPOSE_TOGGLE_UNLINK,       "u")
371     ITEM("toggle-recode",            OP_COMPOSE_TOGGLE_RECODE,       NULL)
372     ITEM("update-encoding",          OP_COMPOSE_UPDATE_ENCODING,     "U")
373     ITEM("view-attach",              OP_VIEW_ATTACH,                 M_ENTER_S)
374     ITEM("send-message",             OP_COMPOSE_SEND_MESSAGE,        "y")
375     ITEM("pipe-entry",               OP_PIPE,                        "|")
376
377     ITEM("attach-key",               OP_COMPOSE_ATTACH_KEY,          "\033k")
378     ITEM("pgp-menu",                 OP_COMPOSE_PGP_MENU,            "p")
379
380     ITEM("forget-passphrase",        OP_FORGET_PASSPHRASE,           "\006")
381
382     ITEM("smime-menu",               OP_COMPOSE_SMIME_MENU,          "S")
383
384 #ifdef MIXMASTER
385     ITEM("mix",                      OP_COMPOSE_MIX,                 "M")
386 #endif
387 ENDLIST
388
389 LIST(OpPost)
390     ITEM("delete-entry",             OP_DELETE,                      "d")
391     ITEM("undelete-entry",           OP_UNDELETE,                    "u")
392 ENDLIST
393
394 LIST(OpAlias)
395     ITEM("delete-entry",             OP_DELETE,                      "d")
396     ITEM("undelete-entry",           OP_UNDELETE,                    "u")
397 ENDLIST
398
399 /* The file browser */
400 LIST(OpBrowser)
401     ITEM("change-dir",               OP_CHANGE_DIRECTORY,            "c")
402     ITEM("display-filename",         OP_BROWSER_TELL,                "@")
403     ITEM("enter-mask",               OP_ENTER_MASK,                  "m")
404     ITEM("sort",                     OP_SORT,                        "o")
405     ITEM("sort-reverse",             OP_SORT_REVERSE,                "O")
406     ITEM("select-new",               OP_BROWSER_NEW_FILE,            "N")
407     ITEM("check-new",                OP_CHECK_NEW,                   NULL)
408     ITEM("toggle-mailboxes",         OP_TOGGLE_MAILBOXES,            "\t")
409 #ifdef USE_NNTP
410     ITEM("reload-active",            OP_LOAD_ACTIVE,                 "g")
411     ITEM("subscribe-pattern",        OP_SUBSCRIBE_PATTERN,           "S")
412     ITEM("unsubscribe-pattern",      OP_UNSUBSCRIBE_PATTERN,         "U")
413     ITEM("catchup",                  OP_CATCHUP,                     "y")
414     ITEM("uncatchup",                OP_UNCATCHUP,                   "Y")
415 #endif
416     ITEM("view-file",                OP_BROWSER_VIEW_FILE,           " ")
417     ITEM("buffy-list",               OP_BUFFY_LIST,                  ".")
418     ITEM("create-mailbox",           OP_CREATE_MAILBOX,              "C")
419     ITEM("delete-mailbox",           OP_DELETE_MAILBOX,              "d")
420     ITEM("rename-mailbox",           OP_RENAME_MAILBOX,              "r")
421     ITEM("subscribe",                OP_BROWSER_SUBSCRIBE,           "s")
422     ITEM("unsubscribe",              OP_BROWSER_UNSUBSCRIBE,         "u")
423     ITEM("toggle-subscribed",        OP_BROWSER_TOGGLE_LSUB,         "T")
424 ENDLIST
425
426 /* External Query Menu */
427 LIST(OpQuery)
428     ITEM("create-alias",             OP_CREATE_ALIAS,                "a")
429     ITEM("mail",                     OP_MAIL,                        "m")
430     ITEM("query",                    OP_QUERY,                       "Q")
431     ITEM("query-append",             OP_QUERY_APPEND,                "A")
432 ENDLIST
433
434 LIST(OpEditor)
435     ITEM("bol",                      OP_EDITOR_BOL,                  "\001")
436     ITEM("backward-char",            OP_EDITOR_BACKWARD_CHAR,        "\002")
437     ITEM("backward-word",            OP_EDITOR_BACKWARD_WORD,        "\033b")
438     ITEM("capitalize-word",          OP_EDITOR_CAPITALIZE_WORD,      "\033c")
439     ITEM("downcase-word",            OP_EDITOR_DOWNCASE_WORD,        "\033l")
440     ITEM("upcase-word",              OP_EDITOR_UPCASE_WORD,          "\033u")
441     ITEM("delete-char",              OP_EDITOR_DELETE_CHAR,          "\004")
442     ITEM("eol",                      OP_EDITOR_EOL,                  "\005")
443     ITEM("forward-char",             OP_EDITOR_FORWARD_CHAR,         "\006")
444     ITEM("forward-word",             OP_EDITOR_FORWARD_WORD,         "\033f")
445     ITEM("backspace",                OP_EDITOR_BACKSPACE,            "\010")
446     ITEM("kill-eol",                 OP_EDITOR_KILL_EOL,             "\013")
447     ITEM("kill-eow",                 OP_EDITOR_KILL_EOW,             "\033d")
448     ITEM("kill-line",                OP_EDITOR_KILL_LINE,            "\025")
449     ITEM("quote-char",               OP_EDITOR_QUOTE_CHAR,           "\026")
450     ITEM("kill-word",                OP_EDITOR_KILL_WORD,            "\027")
451     ITEM("complete",                 OP_EDITOR_COMPLETE,             "\t")
452     ITEM("complete-query",           OP_EDITOR_COMPLETE_QUERY,       "\024")
453     ITEM("buffy-cycle",              OP_EDITOR_BUFFY_CYCLE,          " ")
454     ITEM("history-up",               OP_EDITOR_HISTORY_UP,           NULL)
455     ITEM("history-down",             OP_EDITOR_HISTORY_DOWN,         NULL)
456     ITEM("transpose-chars",          OP_EDITOR_TRANSPOSE_CHARS,      NULL)
457 ENDLIST
458
459 LIST(OpPgp)
460     ITEM("verify-key",               OP_VERIFY_KEY,                  "c")
461     ITEM("view-name",                OP_VIEW_ID,                     "%")
462 ENDLIST
463
464 /* When using the GPGME based backendwe have some useful functions
465    for the SMIME menu.  */
466 LIST(OpSmime)
467 #ifdef CRYPT_BACKEND_GPGME
468     ITEM("verify-key",               OP_VERIFY_KEY,                  "c")
469     ITEM("view-name",                OP_VIEW_ID,                     "%")
470 #endif
471 ENDLIST
472
473 #ifdef MIXMASTER
474 LIST(OpMix)
475     ITEM("accept",                   OP_MIX_USE,                     M_ENTER_S)
476     ITEM("append",                   OP_MIX_APPEND,                  "a")
477     ITEM("insert",                   OP_MIX_INSERT,                  "i")
478     ITEM("delete",                   OP_MIX_DELETE,                  "d")
479     ITEM("chain-prev",               OP_MIX_CHAIN_PREV,              "<left>")
480     ITEM("chain-next",               OP_MIX_CHAIN_NEXT,              "<right>")
481 ENDLIST
482 #endif /* MIXMASTER */
483
484 #undef ENDLIST
485 #undef ITEM
486 #undef LIST
487
488 #undef MUTT_FUNCTIONS_PROTO
489 #undef MUTT_FUNCTIONS_VALUES
490
491 /* vim:set ft=c: */