]> granicus.if.org Git - neomutt/commitdiff
functions.h: Sort functions by name
authorFloyd Anderson <f.a@31c0.net>
Sun, 18 Mar 2018 15:20:20 +0000 (16:20 +0100)
committerRichard Russon <rich@flatcap.org>
Sun, 18 Mar 2018 15:20:20 +0000 (16:20 +0100)
To achieve a correct sorting for all function names, it is necessary to
split some single preprocessor directives into multiple.

functions.h

index 49b49023bbf2271c3af6088864154b4a9cfd6e28..dccf235cbbab68eeb70de4f59a2f69642725f155 100644 (file)
@@ -55,157 +55,155 @@ const struct Binding OpGeneric[] = { /* map: generic */
   ** bindings for all menus (except as noted).
   ** </para>
   */
-  { "top-page",        OP_TOP_PAGE,             "H" },
-  { "next-entry",      OP_NEXT_ENTRY,           "j" },
-  { "previous-entry",  OP_PREV_ENTRY,           "k" },
   { "bottom-page",     OP_BOTTOM_PAGE,          "L" },
-  { "refresh",         OP_REDRAW,               "\014" },
-  { "middle-page",     OP_MIDDLE_PAGE,          "M" },
-  { "search-next",     OP_SEARCH_NEXT,          "n" },
+  { "current-bottom",  OP_CURRENT_BOTTOM,       NULL },
+  { "current-middle",  OP_CURRENT_MIDDLE,       NULL },
+  { "current-top",     OP_CURRENT_TOP,          NULL },
+  { "end-cond",        OP_END_COND,             NULL },
+  { "enter-command",   OP_ENTER_COMMAND,        ":" },
   { "exit",            OP_EXIT,                 "q" },
-  { "tag-entry",       OP_TAG,                  "t" },
-  { "next-page",       OP_NEXT_PAGE,            "z" },
-  { "previous-page",   OP_PREV_PAGE,            "Z" },
-  { "last-entry",      OP_LAST_ENTRY,           "*" },
   { "first-entry",     OP_FIRST_ENTRY,          "=" },
-  { "enter-command",   OP_ENTER_COMMAND,        ":" },
-  { "next-line",       OP_NEXT_LINE,            ">" },
-  { "previous-line",   OP_PREV_LINE,            "<" },
-  { "half-up",         OP_HALF_UP,              "[" },
   { "half-down",       OP_HALF_DOWN,            "]" },
+  { "half-up",         OP_HALF_UP,              "[" },
   { "help",            OP_HELP,                 "?" },
-  { "tag-prefix",      OP_TAG_PREFIX,           ";" },
-  { "tag-prefix-cond", OP_TAG_PREFIX_COND,      NULL },
-  { "end-cond",        OP_END_COND,             NULL },
-  { "shell-escape",    OP_SHELL_ESCAPE,         "!" },
-  { "select-entry",    OP_GENERIC_SELECT_ENTRY, "\n" },
-  { "select-entry",    OP_GENERIC_SELECT_ENTRY, "\r" },
+  { "jump",            OP_JUMP,                 NULL },
+  { "last-entry",      OP_LAST_ENTRY,           "*" },
+  { "middle-page",     OP_MIDDLE_PAGE,          "M" },
+  { "next-entry",      OP_NEXT_ENTRY,           "j" },
+  { "next-line",       OP_NEXT_LINE,            ">" },
+  { "next-page",       OP_NEXT_PAGE,            "z" },
+  { "previous-entry",  OP_PREV_ENTRY,           "k" },
+  { "previous-line",   OP_PREV_LINE,            "<" },
+  { "previous-page",   OP_PREV_PAGE,            "Z" },
+  { "refresh",         OP_REDRAW,               "\014" },
   { "search",          OP_SEARCH,               "/" },
-  { "search-reverse",  OP_SEARCH_REVERSE,       "\033/" },
+  { "search-next",     OP_SEARCH_NEXT,          "n" },
   { "search-opposite", OP_SEARCH_OPPOSITE,      NULL },
-  { "jump",            OP_JUMP,                 NULL },
-  { "current-top",     OP_CURRENT_TOP,          NULL },
-  { "current-middle",  OP_CURRENT_MIDDLE,       NULL },
-  { "current-bottom",  OP_CURRENT_BOTTOM,       NULL },
+  { "search-reverse",  OP_SEARCH_REVERSE,       "\033/" },
+  { "select-entry",    OP_GENERIC_SELECT_ENTRY, "\n" },
+  { "select-entry",    OP_GENERIC_SELECT_ENTRY, "\r" },
+  { "shell-escape",    OP_SHELL_ESCAPE,         "!" },
+  { "tag-entry",       OP_TAG,                  "t" },
+  { "tag-prefix",      OP_TAG_PREFIX,           ";" },
+  { "tag-prefix-cond", OP_TAG_PREFIX_COND,      NULL },
+  { "top-page",        OP_TOP_PAGE,             "H" },
   { "what-key",        OP_WHAT_KEY,             NULL },
   { NULL,              0,                       NULL },
 };
 
 const struct Binding OpMain[] = { /* map: index */
-  { "show-messages",             OP_SHOW_MESSAGES,                  "M" },
-  { "create-alias",              OP_CREATE_ALIAS,                   "a" },
   { "bounce-message",            OP_BOUNCE_MESSAGE,                 "b" },
   { "break-thread",              OP_MAIN_BREAK_THREAD,              "#" },
+  { "buffy-list",                OP_BUFFY_LIST,                     "." },
+#ifdef USE_NNTP
+  { "catchup",                   OP_CATCHUP,                        NULL },
+#endif
   { "change-folder",             OP_MAIN_CHANGE_FOLDER,             "c" },
   { "change-folder-readonly",    OP_MAIN_CHANGE_FOLDER_READONLY,    "\033c" },
 #ifdef USE_NNTP
   { "change-newsgroup",          OP_MAIN_CHANGE_GROUP,              NULL },
   { "change-newsgroup-readonly", OP_MAIN_CHANGE_GROUP_READONLY,     NULL },
 #endif
-  { "next-unread-mailbox",       OP_MAIN_NEXT_UNREAD_MAILBOX,       NULL },
-  { "collapse-thread",           OP_MAIN_COLLAPSE_THREAD,           "\033v" },
+#ifdef USE_NOTMUCH
+  { "change-vfolder",            OP_MAIN_CHANGE_VFOLDER,            NULL },
+#endif
+  { "check-traditional-pgp",     OP_CHECK_TRADITIONAL,              "\033P" },
+  { "clear-flag",                OP_MAIN_CLEAR_FLAG,                "W" },
   { "collapse-all",              OP_MAIN_COLLAPSE_ALL,              "\033V" },
+  { "collapse-thread",           OP_MAIN_COLLAPSE_THREAD,           "\033v" },
+  { "compose-to-sender",         OP_COMPOSE_TO_SENDER,              NULL },
   { "copy-message",              OP_COPY_MESSAGE,                   "C" },
+  { "create-alias",              OP_CREATE_ALIAS,                   "a" },
   { "decode-copy",               OP_DECODE_COPY,                    "\033C" },
   { "decode-save",               OP_DECODE_SAVE,                    "\033s" },
+  { "decrypt-copy",              OP_DECRYPT_COPY,                   NULL },
+  { "decrypt-save",              OP_DECRYPT_SAVE,                   NULL },
   { "delete-message",            OP_DELETE,                         "d" },
   { "delete-pattern",            OP_MAIN_DELETE_PATTERN,            "D" },
-  { "delete-thread",             OP_DELETE_THREAD,                  "\004" },
   { "delete-subthread",          OP_DELETE_SUBTHREAD,               "\033d" },
+  { "delete-thread",             OP_DELETE_THREAD,                  "\004" },
+  { "display-address",           OP_DISPLAY_ADDRESS,                "@" },
+  { "display-message",           OP_DISPLAY_MESSAGE,                "\n" },
+  { "display-message",           OP_DISPLAY_MESSAGE,                "\r" },
+  { "display-toggle-weed",       OP_DISPLAY_HEADERS,                "h" },
   { "edit",                      OP_EDIT_RAW_MESSAGE,               NULL },
-  { "edit-raw-message",          OP_EDIT_RAW_MESSAGE,               NULL },
   { "edit-label",                OP_EDIT_LABEL,                     "Y" },
   { "edit-or-view-raw-message",  OP_EDIT_OR_VIEW_RAW_MESSAGE,       "e" },
+  { "edit-raw-message",          OP_EDIT_RAW_MESSAGE,               NULL },
   { "edit-type",                 OP_EDIT_TYPE,                      "\005" },
+#ifdef USE_NOTMUCH
+  { "entire-thread",             OP_MAIN_ENTIRE_THREAD,             NULL },
+#endif
+  { "extract-keys",              OP_EXTRACT_KEYS,                   "\013" },
+#ifdef USE_POP
+  { "fetch-mail",                OP_MAIN_FETCH_MAIL,                "G" },
+#endif
+  { "flag-message",              OP_FLAG_MESSAGE,                   "F" },
+#ifdef USE_NNTP
+  { "followup-message",          OP_FOLLOWUP,                       NULL },
+#endif
+  { "forget-passphrase",         OP_FORGET_PASSPHRASE,              "\006" },
   { "forward-message",           OP_FORWARD_MESSAGE,                "f" },
 #ifdef USE_NNTP
   { "forward-to-group",          OP_FORWARD_TO_GROUP,               NULL },
-  { "followup-message",          OP_FOLLOWUP,                       NULL },
   { "get-children",              OP_GET_CHILDREN,                   NULL },
   { "get-message",               OP_GET_MESSAGE,                    NULL },
   { "get-parent",                OP_GET_PARENT,                     NULL },
-  { "reconstruct-thread",        OP_RECONSTRUCT_THREAD,             NULL },
 #endif
-  { "flag-message",              OP_FLAG_MESSAGE,                   "F" },
   { "group-reply",               OP_GROUP_REPLY,                    "g" },
-#ifdef USE_POP
-  { "fetch-mail",                OP_MAIN_FETCH_MAIL,                "G" },
-#endif
 #ifdef USE_IMAP
   { "imap-fetch-mail",           OP_MAIN_IMAP_FETCH,                NULL },
   { "imap-logout-all",           OP_MAIN_IMAP_LOGOUT_ALL,           NULL },
 #endif
-  { "display-toggle-weed",       OP_DISPLAY_HEADERS,                "h" },
-  { "next-undeleted",            OP_MAIN_NEXT_UNDELETED,            "j" },
-  { "previous-undeleted",        OP_MAIN_PREV_UNDELETED,            "k" },
   { "limit",                     OP_MAIN_LIMIT,                     "l" },
   { "limit-current-thread",      OP_LIMIT_CURRENT_THREAD,           NULL },
   { "link-threads",              OP_MAIN_LINK_THREADS,              "&" },
   { "list-reply",                OP_LIST_REPLY,                     "L" },
   { "mail",                      OP_MAIL,                           "m" },
-  { "toggle-new",                OP_TOGGLE_NEW,                     "N" },
-  { "toggle-write",              OP_TOGGLE_WRITE,                   "%" },
-  { "next-thread",               OP_MAIN_NEXT_THREAD,               "\016" },
+  { "mail-key",                  OP_MAIL_KEY,                       "\033k" },
+  { "mark-message",              OP_MARK_MSG,                       "~" },
+  { "modify-labels",             OP_MAIN_MODIFY_TAGS,               NULL }, // NOTE(silent): kept for backward compatibility
+  { "modify-labels-then-hide",   OP_MAIN_MODIFY_TAGS_THEN_HIDE,     NULL }, // NOTE(silent): kept for backward compatibility
+  { "modify-tags",               OP_MAIN_MODIFY_TAGS,               NULL },
+  { "modify-tags-then-hide",     OP_MAIN_MODIFY_TAGS_THEN_HIDE,     NULL },
+  { "next-new",                  OP_MAIN_NEXT_NEW,                  NULL },
+  { "next-new-then-unread",      OP_MAIN_NEXT_NEW_THEN_UNREAD,      "\t" },
   { "next-subthread",            OP_MAIN_NEXT_SUBTHREAD,            "\033n" },
+  { "next-thread",               OP_MAIN_NEXT_THREAD,               "\016" },
+  { "next-undeleted",            OP_MAIN_NEXT_UNDELETED,            "j" },
+  { "next-unread",               OP_MAIN_NEXT_UNREAD,               NULL },
+  { "next-unread-mailbox",       OP_MAIN_NEXT_UNREAD_MAILBOX,       NULL },
+  { "parent-message",            OP_MAIN_PARENT_MESSAGE,            "P" },
+  { "pipe-message",              OP_PIPE,                           "|" },
+#ifdef USE_NNTP
+  { "post-message",              OP_POST,                           NULL },
+#endif
+  { "previous-new",              OP_MAIN_PREV_NEW,                  NULL },
+  { "previous-new-then-unread",  OP_MAIN_PREV_NEW_THEN_UNREAD,      "\033\t" },
+  { "previous-subthread",        OP_MAIN_PREV_SUBTHREAD,            "\033p" },
+  { "previous-thread",           OP_MAIN_PREV_THREAD,               "\020" },
+  { "previous-undeleted",        OP_MAIN_PREV_UNDELETED,            "k" },
+  { "previous-unread",           OP_MAIN_PREV_UNREAD,               NULL },
+  { "print-message",             OP_PRINT,                          "p" },
   { "purge-message",             OP_PURGE_MESSAGE,                  NULL },
   { "purge-thread",              OP_PURGE_THREAD,                   NULL },
+  { "quasi-delete",              OP_MAIN_QUASI_DELETE,              NULL },
   { "query",                     OP_QUERY,                          "Q" },
   { "quit",                      OP_QUIT,                           "q" },
-  { "reply",                     OP_REPLY,                          "r" },
-  { "show-limit",                OP_MAIN_SHOW_LIMIT,                "\033l" },
-  { "sort-mailbox",              OP_SORT,                           "o" },
-  { "sort-reverse",              OP_SORT_REVERSE,                   "O" },
-  { "print-message",             OP_PRINT,                          "p" },
+  { "read-subthread",            OP_MAIN_READ_SUBTHREAD,            "\033r" },
+  { "read-thread",               OP_MAIN_READ_THREAD,               "\022" },
+  { "recall-message",            OP_RECALL_MESSAGE,                 "R" },
 #ifdef USE_NNTP
-  { "post-message",              OP_POST,                           NULL },
+  { "reconstruct-thread",        OP_RECONSTRUCT_THREAD,             NULL },
 #endif
-  { "previous-thread",           OP_MAIN_PREV_THREAD,               "\020" },
-  { "previous-subthread",        OP_MAIN_PREV_SUBTHREAD,            "\033p" },
-  { "recall-message",            OP_RECALL_MESSAGE,                 "R" },
-  { "read-thread",               OP_MAIN_READ_THREAD,               "\022" },
-  { "read-subthread",            OP_MAIN_READ_SUBTHREAD,            "\033r" },
+  { "reply",                     OP_REPLY,                          "r" },
   { "resend-message",            OP_RESEND,                         "\033e" },
-  { "compose-to-sender",         OP_COMPOSE_TO_SENDER,              NULL },
+  { "root-message",              OP_MAIN_ROOT_MESSAGE,              NULL },
   { "save-message",              OP_SAVE,                           "s" },
-  { "tag-pattern",               OP_MAIN_TAG_PATTERN,               "T" },
-  { "tag-subthread",             OP_TAG_SUBTHREAD,                  NULL },
-  { "tag-thread",                OP_TAG_THREAD,                     "\033t" },
-  { "untag-pattern",             OP_MAIN_UNTAG_PATTERN,             "\024" },
-  { "undelete-message",          OP_UNDELETE,                       "u" },
-  { "undelete-pattern",          OP_MAIN_UNDELETE_PATTERN,          "U" },
-  { "undelete-subthread",        OP_UNDELETE_SUBTHREAD,             "\033u" },
-  { "undelete-thread",           OP_UNDELETE_THREAD,                "\025" },
-  { "view-attachments",          OP_VIEW_ATTACHMENTS,               "v" },
-  { "view-raw-message",          OP_VIEW_RAW_MESSAGE,               NULL },
-  { "show-version",              OP_VERSION,                        "V" },
   { "set-flag",                  OP_MAIN_SET_FLAG,                  "w" },
-  { "clear-flag",                OP_MAIN_CLEAR_FLAG,                "W" },
-  { "toggle-read",               OP_TOGGLE_READ,                    NULL },
-#ifdef USE_NNTP
-  { "catchup",                   OP_CATCHUP,                        NULL },
-#endif
-  { "display-message",           OP_DISPLAY_MESSAGE,                "\n" },
-  { "display-message",           OP_DISPLAY_MESSAGE,                "\r" },
-  { "mark-message",              OP_MARK_MSG,                       "~" },
-  { "buffy-list",                OP_BUFFY_LIST,                     "." },
-  { "sync-mailbox",              OP_MAIN_SYNC_FOLDER,               "$" },
-  { "display-address",           OP_DISPLAY_ADDRESS,                "@" },
-  { "pipe-message",              OP_PIPE,                           "|" },
-  { "next-new",                  OP_MAIN_NEXT_NEW,                  NULL },
-  { "next-new-then-unread",      OP_MAIN_NEXT_NEW_THEN_UNREAD,      "\t" },
-  { "previous-new",              OP_MAIN_PREV_NEW,                  NULL },
-  { "previous-new-then-unread",  OP_MAIN_PREV_NEW_THEN_UNREAD,      "\033\t" },
-  { "next-unread",               OP_MAIN_NEXT_UNREAD,               NULL },
-  { "previous-unread",           OP_MAIN_PREV_UNREAD,               NULL },
-  { "parent-message",            OP_MAIN_PARENT_MESSAGE,            "P" },
-  { "root-message",              OP_MAIN_ROOT_MESSAGE,              NULL },
-  { "extract-keys",              OP_EXTRACT_KEYS,                   "\013" },
-  { "forget-passphrase",         OP_FORGET_PASSPHRASE,              "\006" },
-  { "check-traditional-pgp",     OP_CHECK_TRADITIONAL,              "\033P" },
-  { "mail-key",                  OP_MAIL_KEY,                       "\033k" },
-  { "decrypt-copy",              OP_DECRYPT_COPY,                   NULL },
-  { "decrypt-save",              OP_DECRYPT_SAVE,                   NULL },
-  { "quasi-delete",              OP_MAIN_QUASI_DELETE,              NULL },
+  { "show-limit",                OP_MAIN_SHOW_LIMIT,                "\033l" },
+  { "show-messages",             OP_SHOW_MESSAGES,                  "M" },
+  { "show-version",              OP_VERSION,                        "V" },
 #ifdef USE_SIDEBAR
   { "sidebar-next",              OP_SIDEBAR_NEXT,                   NULL },
   { "sidebar-next-new",          OP_SIDEBAR_NEXT_NEW,               NULL },
@@ -217,138 +215,145 @@ const struct Binding OpMain[] = { /* map: index */
   { "sidebar-toggle-virtual",    OP_SIDEBAR_TOGGLE_VIRTUAL,         NULL },
   { "sidebar-toggle-visible",    OP_SIDEBAR_TOGGLE_VISIBLE,         NULL },
 #endif
-  { "modify-tags",               OP_MAIN_MODIFY_TAGS,             NULL },
-  { "modify-tags-then-hide",     OP_MAIN_MODIFY_TAGS_THEN_HIDE,   NULL },
-/* NOTE(sileht): kept for backward compatibility */
-  { "modify-labels",             OP_MAIN_MODIFY_TAGS,             NULL },
-  { "modify-labels-then-hide",   OP_MAIN_MODIFY_TAGS_THEN_HIDE,   NULL },
-
+  { "sort-mailbox",              OP_SORT,                           "o" },
+  { "sort-reverse",              OP_SORT_REVERSE,                   "O" },
+  { "sync-mailbox",              OP_MAIN_SYNC_FOLDER,               "$" },
+  { "tag-pattern",               OP_MAIN_TAG_PATTERN,               "T" },
+  { "tag-subthread",             OP_TAG_SUBTHREAD,                  NULL },
+  { "tag-thread",                OP_TAG_THREAD,                     "\033t" },
+  { "toggle-new",                OP_TOGGLE_NEW,                     "N" },
+  { "toggle-read",               OP_TOGGLE_READ,                    NULL },
+  { "toggle-write",              OP_TOGGLE_WRITE,                   "%" },
+  { "undelete-message",          OP_UNDELETE,                       "u" },
+  { "undelete-pattern",          OP_MAIN_UNDELETE_PATTERN,          "U" },
+  { "undelete-subthread",        OP_UNDELETE_SUBTHREAD,             "\033u" },
+  { "undelete-thread",           OP_UNDELETE_THREAD,                "\025" },
+  { "untag-pattern",             OP_MAIN_UNTAG_PATTERN,             "\024" },
 #ifdef USE_NOTMUCH
-  { "change-vfolder",            OP_MAIN_CHANGE_VFOLDER,            NULL },
   { "vfolder-from-query",        OP_MAIN_VFOLDER_FROM_QUERY,        NULL },
   { "vfolder-window-backward",   OP_MAIN_WINDOWED_VFOLDER_BACKWARD, NULL },
   { "vfolder-window-forward",    OP_MAIN_WINDOWED_VFOLDER_FORWARD,  NULL },
-  { "entire-thread",             OP_MAIN_ENTIRE_THREAD,             NULL },
 #endif
+  { "view-attachments",          OP_VIEW_ATTACHMENTS,               "v" },
+  { "view-raw-message",          OP_VIEW_RAW_MESSAGE,               NULL },
   { NULL,                        0,                                 NULL },
 };
 
 const struct Binding OpPager[] = { /* map: pager */
-  { "break-thread",              OP_MAIN_BREAK_THREAD,            "#" },
-  { "create-alias",              OP_CREATE_ALIAS,                 "a" },
+  { "bottom",                    OP_PAGER_BOTTOM,                 NULL },
   { "bounce-message",            OP_BOUNCE_MESSAGE,               "b" },
+  { "break-thread",              OP_MAIN_BREAK_THREAD,            "#" },
+  { "buffy-list",                OP_BUFFY_LIST,                   "." },
   { "change-folder",             OP_MAIN_CHANGE_FOLDER,           "c" },
   { "change-folder-readonly",    OP_MAIN_CHANGE_FOLDER_READONLY,  "\033c" },
 #ifdef USE_NNTP
   { "change-newsgroup",          OP_MAIN_CHANGE_GROUP,            NULL },
   { "change-newsgroup-readonly", OP_MAIN_CHANGE_GROUP_READONLY,   NULL },
 #endif
-  { "next-unread-mailbox",       OP_MAIN_NEXT_UNREAD_MAILBOX,     NULL },
+#ifdef USE_NOTMUCH
+  { "change-vfolder",            OP_MAIN_CHANGE_VFOLDER,          NULL },
+#endif
+  { "check-traditional-pgp",     OP_CHECK_TRADITIONAL,            "\033P" },
+  { "clear-flag",                OP_MAIN_CLEAR_FLAG,              "W" },
+  { "compose-to-sender",         OP_COMPOSE_TO_SENDER,            NULL },
   { "copy-message",              OP_COPY_MESSAGE,                 "C" },
+  { "create-alias",              OP_CREATE_ALIAS,                 "a" },
   { "decode-copy",               OP_DECODE_COPY,                  "\033C" },
+  { "decode-save",               OP_DECODE_SAVE,                  "\033s" },
+  { "decrypt-copy",              OP_DECRYPT_COPY,                 NULL },
+  { "decrypt-save",              OP_DECRYPT_SAVE,                 NULL },
   { "delete-message",            OP_DELETE,                       "d" },
-  { "delete-thread",             OP_DELETE_THREAD,                "\004" },
   { "delete-subthread",          OP_DELETE_SUBTHREAD,             "\033d" },
-  { "set-flag",                  OP_MAIN_SET_FLAG,                "w" },
-  { "clear-flag",                OP_MAIN_CLEAR_FLAG,              "W" },
+  { "delete-thread",             OP_DELETE_THREAD,                "\004" },
+  { "display-address",           OP_DISPLAY_ADDRESS,              "@" },
+  { "display-toggle-weed",       OP_DISPLAY_HEADERS,              "h" },
   { "edit",                      OP_EDIT_RAW_MESSAGE,             NULL },
-  { "edit-raw-message",          OP_EDIT_RAW_MESSAGE,             NULL },
   { "edit-label",                OP_EDIT_LABEL,                   "Y" },
   { "edit-or-view-raw-message",  OP_EDIT_OR_VIEW_RAW_MESSAGE,     "e" },
+  { "edit-raw-message",          OP_EDIT_RAW_MESSAGE,             NULL },
   { "edit-type",                 OP_EDIT_TYPE,                    "\005" },
+  { "enter-command",             OP_ENTER_COMMAND,                ":" },
+#ifdef USE_NOTMUCH
+  { "entire-thread",             OP_MAIN_ENTIRE_THREAD,           NULL },
+#endif
+  { "exit",                      OP_EXIT,                         "q" },
+  { "extract-keys",              OP_EXTRACT_KEYS,                 "\013" },
+  { "flag-message",              OP_FLAG_MESSAGE,                 "F" },
 #ifdef USE_NNTP
   { "followup-message",          OP_FOLLOWUP,                     NULL },
-  { "forward-to-group",          OP_FORWARD_TO_GROUP,             NULL },
 #endif
+  { "forget-passphrase",         OP_FORGET_PASSPHRASE,            "\006" },
   { "forward-message",           OP_FORWARD_MESSAGE,              "f" },
-  { "flag-message",              OP_FLAG_MESSAGE,                 "F" },
+#ifdef USE_NNTP
+  { "forward-to-group",          OP_FORWARD_TO_GROUP,             NULL },
+#endif
   { "group-reply",               OP_GROUP_REPLY,                  "g" },
+  { "half-down",                 OP_HALF_DOWN,                    NULL },
+  { "half-up",                   OP_HALF_UP,                      NULL },
+  { "help",                      OP_HELP,                         "?" },
 #ifdef USE_IMAP
   { "imap-fetch-mail",           OP_MAIN_IMAP_FETCH,              NULL },
   { "imap-logout-all",           OP_MAIN_IMAP_LOGOUT_ALL,         NULL },
 #endif
-  { "display-toggle-weed",       OP_DISPLAY_HEADERS,              "h" },
-  { "next-undeleted",            OP_MAIN_NEXT_UNDELETED,          "j" },
-  { "next-entry",                OP_NEXT_ENTRY,                   "J" },
-  { "previous-undeleted",        OP_MAIN_PREV_UNDELETED,          "k" },
-  { "previous-entry",            OP_PREV_ENTRY,                   "K" },
+  { "jump",                      OP_JUMP,                         NULL },
   { "link-threads",              OP_MAIN_LINK_THREADS,            "&" },
   { "list-reply",                OP_LIST_REPLY,                   "L" },
-  { "redraw-screen",             OP_REDRAW,                       "\014" },
   { "mail",                      OP_MAIL,                         "m" },
+  { "mail-key",                  OP_MAIL_KEY,                     "\033k" },
   { "mark-as-new",               OP_TOGGLE_NEW,                   "N" },
-  { "search-next",               OP_SEARCH_NEXT,                  "n" },
-  { "next-thread",               OP_MAIN_NEXT_THREAD,             "\016" },
+  { "modify-labels",             OP_MAIN_MODIFY_TAGS,             NULL }, // NOTE(silent): kept for backward compatibility
+  { "modify-labels-then-hide",   OP_MAIN_MODIFY_TAGS_THEN_HIDE,   NULL }, // NOTE(silent): kept for backward compatibility
+  { "modify-tags",               OP_MAIN_MODIFY_TAGS,             NULL },
+  { "modify-tags-then-hide",     OP_MAIN_MODIFY_TAGS_THEN_HIDE,   NULL },
+  { "next-entry",                OP_NEXT_ENTRY,                   "J" },
+  { "next-line",                 OP_NEXT_LINE,                    "\n" },
+  { "next-line",                 OP_NEXT_LINE,                    "\r" },
+  { "next-new",                  OP_MAIN_NEXT_NEW,                NULL },
+  { "next-new-then-unread",      OP_MAIN_NEXT_NEW_THEN_UNREAD,    "\t" },
+  { "next-page",                 OP_NEXT_PAGE,                    " " },
   { "next-subthread",            OP_MAIN_NEXT_SUBTHREAD,          "\033n" },
-  { "sort-mailbox",              OP_SORT,                         "o" },
-  { "sort-reverse",              OP_SORT_REVERSE,                 "O" },
-  { "print-message",             OP_PRINT,                        "p" },
+  { "next-thread",               OP_MAIN_NEXT_THREAD,             "\016" },
+  { "next-undeleted",            OP_MAIN_NEXT_UNDELETED,          "j" },
+  { "next-unread",               OP_MAIN_NEXT_UNREAD,             NULL },
+  { "next-unread-mailbox",       OP_MAIN_NEXT_UNREAD_MAILBOX,     NULL },
+  { "parent-message",            OP_MAIN_PARENT_MESSAGE,          "P" },
+  { "pipe-message",              OP_PIPE,                         "|" },
 #ifdef USE_NNTP
   { "post-message",              OP_POST,                         NULL },
 #endif
-  { "previous-thread",           OP_MAIN_PREV_THREAD,             "\020" },
+  { "previous-entry",            OP_PREV_ENTRY,                   "K" },
+  { "previous-line",             OP_PREV_LINE,                    NULL },
+  { "previous-new",              OP_MAIN_PREV_NEW,                NULL },
+  { "previous-new-then-unread",  OP_MAIN_PREV_NEW_THEN_UNREAD,    NULL },
+  { "previous-page",             OP_PREV_PAGE,                    "-" },
   { "previous-subthread",        OP_MAIN_PREV_SUBTHREAD,          "\033p" },
+  { "previous-thread",           OP_MAIN_PREV_THREAD,             "\020" },
+  { "previous-undeleted",        OP_MAIN_PREV_UNDELETED,          "k" },
+  { "previous-unread",           OP_MAIN_PREV_UNREAD,             NULL },
+  { "print-message",             OP_PRINT,                        "p" },
   { "purge-message",             OP_PURGE_MESSAGE,                NULL },
   { "purge-thread",              OP_PURGE_THREAD,                 NULL },
+  { "quasi-delete",              OP_MAIN_QUASI_DELETE,            NULL },
   { "quit",                      OP_QUIT,                         "Q" },
-  { "exit",                      OP_EXIT,                         "q" },
-  { "reply",                     OP_REPLY,                        "r" },
+  { "read-subthread",            OP_MAIN_READ_SUBTHREAD,          "\033r" },
+  { "read-thread",               OP_MAIN_READ_THREAD,             "\022" },
   { "recall-message",            OP_RECALL_MESSAGE,               "R" },
 #ifdef USE_NNTP
   { "reconstruct-thread",        OP_RECONSTRUCT_THREAD,           NULL },
 #endif
-  { "read-thread",               OP_MAIN_READ_THREAD,             "\022" },
-  { "read-subthread",            OP_MAIN_READ_SUBTHREAD,          "\033r" },
+  { "redraw-screen",             OP_REDRAW,                       "\014" },
+  { "reply",                     OP_REPLY,                        "r" },
   { "resend-message",            OP_RESEND,                       "\033e" },
-  { "compose-to-sender",         OP_COMPOSE_TO_SENDER,            NULL },
+  { "root-message",              OP_MAIN_ROOT_MESSAGE,            NULL },
   { "save-message",              OP_SAVE,                         "s" },
-  { "skip-quoted",               OP_PAGER_SKIP_QUOTED,            "S" },
-  { "decode-save",               OP_DECODE_SAVE,                  "\033s" },
-  { "tag-message",               OP_TAG,                          "t" },
-  { "toggle-quoted",             OP_PAGER_HIDE_QUOTED,            "T" },
-  { "undelete-message",          OP_UNDELETE,                     "u" },
-  { "undelete-subthread",        OP_UNDELETE_SUBTHREAD,           "\033u" },
-  { "undelete-thread",           OP_UNDELETE_THREAD,              "\025" },
-  { "view-attachments",          OP_VIEW_ATTACHMENTS,             "v" },
-  { "view-raw-message",          OP_VIEW_RAW_MESSAGE,             NULL },
-  { "show-version",              OP_VERSION,                      "V" },
-  { "search-toggle",             OP_SEARCH_TOGGLE,                "\\" },
-  { "display-address",           OP_DISPLAY_ADDRESS,              "@" },
-  { "next-new",                  OP_MAIN_NEXT_NEW,                NULL },
-  { "next-new-then-unread",      OP_MAIN_NEXT_NEW_THEN_UNREAD,    "\t" },
-  { "pipe-message",              OP_PIPE,                         "|" },
-  { "help",                      OP_HELP,                         "?" },
-  { "next-page",                 OP_NEXT_PAGE,                    " " },
-  { "previous-page",             OP_PREV_PAGE,                    "-" },
-  { "top",                       OP_PAGER_TOP,                    "^" },
-  { "sync-mailbox",              OP_MAIN_SYNC_FOLDER,             "$" },
-  { "shell-escape",              OP_SHELL_ESCAPE,                 "!" },
-  { "enter-command",             OP_ENTER_COMMAND,                ":" },
-  { "buffy-list",                OP_BUFFY_LIST,                   "." },
   { "search",                    OP_SEARCH,                       "/" },
-  { "search-reverse",            OP_SEARCH_REVERSE,               "\033/" },
+  { "search-next",               OP_SEARCH_NEXT,                  "n" },
   { "search-opposite",           OP_SEARCH_OPPOSITE,              NULL },
-  { "next-line",                 OP_NEXT_LINE,                    "\n" },
-  { "next-line",                 OP_NEXT_LINE,                    "\r" },
-  { "jump",                      OP_JUMP,                         NULL },
-  { "next-unread",               OP_MAIN_NEXT_UNREAD,             NULL },
-  { "previous-new",              OP_MAIN_PREV_NEW,                NULL },
-  { "previous-new-then-unread",  OP_MAIN_PREV_NEW_THEN_UNREAD,    NULL },
-  { "previous-unread",           OP_MAIN_PREV_UNREAD,             NULL },
-  { "half-up",                   OP_HALF_UP,                      NULL },
-  { "half-down",                 OP_HALF_DOWN,                    NULL },
-  { "previous-line",             OP_PREV_LINE,                    NULL },
-  { "bottom",                    OP_PAGER_BOTTOM,                 NULL },
-  { "parent-message",            OP_MAIN_PARENT_MESSAGE,          "P" },
-  { "root-message",              OP_MAIN_ROOT_MESSAGE,            NULL },
-  { "check-traditional-pgp",     OP_CHECK_TRADITIONAL,            "\033P" },
-  { "mail-key",                  OP_MAIL_KEY,                     "\033k" },
-  { "extract-keys",              OP_EXTRACT_KEYS,                 "\013" },
-  { "forget-passphrase",         OP_FORGET_PASSPHRASE,            "\006" },
-  { "decrypt-copy",              OP_DECRYPT_COPY,                 NULL },
-  { "decrypt-save",              OP_DECRYPT_SAVE,                 NULL },
-  { "what-key",                  OP_WHAT_KEY,                     NULL },
-  { "quasi-delete",              OP_MAIN_QUASI_DELETE,            NULL },
+  { "search-reverse",            OP_SEARCH_REVERSE,               "\033/" },
+  { "search-toggle",             OP_SEARCH_TOGGLE,                "\\" },
+  { "set-flag",                  OP_MAIN_SET_FLAG,                "w" },
+  { "shell-escape",              OP_SHELL_ESCAPE,                 "!" },
+  { "show-version",              OP_VERSION,                      "V" },
 #ifdef USE_SIDEBAR
   { "sidebar-next",              OP_SIDEBAR_NEXT,                 NULL },
   { "sidebar-next-new",          OP_SIDEBAR_NEXT_NEW,             NULL },
@@ -360,101 +365,112 @@ const struct Binding OpPager[] = { /* map: pager */
   { "sidebar-toggle-virtual",    OP_SIDEBAR_TOGGLE_VIRTUAL,       NULL },
   { "sidebar-toggle-visible",    OP_SIDEBAR_TOGGLE_VISIBLE,       NULL },
 #endif
-  { "modify-tags",               OP_MAIN_MODIFY_TAGS,             NULL },
-  { "modify-tags-then-hide",     OP_MAIN_MODIFY_TAGS_THEN_HIDE,   NULL },
-/* NOTE(sileht): kept for backward compatibility */
-  { "modify-labels",             OP_MAIN_MODIFY_TAGS,             NULL },
-  { "modify-labels-then-hide",   OP_MAIN_MODIFY_TAGS_THEN_HIDE,   NULL },
-
+  { "skip-quoted",               OP_PAGER_SKIP_QUOTED,            "S" },
+  { "sort-mailbox",              OP_SORT,                         "o" },
+  { "sort-reverse",              OP_SORT_REVERSE,                 "O" },
+  { "sync-mailbox",              OP_MAIN_SYNC_FOLDER,             "$" },
+  { "tag-message",               OP_TAG,                          "t" },
+  { "toggle-quoted",             OP_PAGER_HIDE_QUOTED,            "T" },
+  { "top",                       OP_PAGER_TOP,                    "^" },
+  { "undelete-message",          OP_UNDELETE,                     "u" },
+  { "undelete-subthread",        OP_UNDELETE_SUBTHREAD,           "\033u" },
+  { "undelete-thread",           OP_UNDELETE_THREAD,              "\025" },
 #ifdef USE_NOTMUCH
-  { "change-vfolder",            OP_MAIN_CHANGE_VFOLDER,          NULL },
   { "vfolder-from-query",        OP_MAIN_VFOLDER_FROM_QUERY,      NULL },
-  { "entire-thread",             OP_MAIN_ENTIRE_THREAD,           NULL },
 #endif
+  { "view-attachments",          OP_VIEW_ATTACHMENTS,             "v" },
+  { "view-raw-message",          OP_VIEW_RAW_MESSAGE,             NULL },
+  { "what-key",                  OP_WHAT_KEY,                     NULL },
   { NULL,                        0,                               NULL },
 };
 
 const struct Binding OpAttach[] = { /* map: attachment */
   { "bounce-message",        OP_BOUNCE_MESSAGE,              "b" },
+  { "check-traditional-pgp", OP_CHECK_TRADITIONAL,           "\033P" },
+  { "collapse-parts",        OP_ATTACH_COLLAPSE,             "v" },
+  { "delete-entry",          OP_DELETE,                      "d" },
   { "display-toggle-weed",   OP_DISPLAY_HEADERS,             "h" },
   { "edit-type",             OP_EDIT_TYPE,                   "\005" },
+  { "extract-keys",          OP_EXTRACT_KEYS,                "\013" },
 #ifdef USE_NNTP
   { "followup-message",      OP_FOLLOWUP,                    NULL },
+#endif
+  { "forget-passphrase",     OP_FORGET_PASSPHRASE,           "\006" },
+  { "forward-message",       OP_FORWARD_MESSAGE,             "f" },
+#ifdef USE_NNTP
   { "forward-to-group",      OP_FORWARD_TO_GROUP,            NULL },
 #endif
-  { "print-entry",           OP_PRINT,                       "p" },
-  { "save-entry",            OP_SAVE,                        "s" },
+  { "group-reply",           OP_GROUP_REPLY,                 "g" },
+  { "list-reply",            OP_LIST_REPLY,                  "L" },
   { "pipe-entry",            OP_PIPE,                        "|" },
-  { "view-mailcap",          OP_ATTACH_VIEW_MAILCAP,         "m" },
+  { "print-entry",           OP_PRINT,                       "p" },
   { "reply",                 OP_REPLY,                       "r" },
   { "resend-message",        OP_RESEND,                      "\033e" },
-  { "group-reply",           OP_GROUP_REPLY,                 "g" },
-  { "list-reply",            OP_LIST_REPLY,                  "L" },
-  { "forward-message",       OP_FORWARD_MESSAGE,             "f" },
-  { "view-text",             OP_ATTACH_VIEW_TEXT,            "T" },
+  { "save-entry",            OP_SAVE,                        "s" },
+  { "undelete-entry",        OP_UNDELETE,                    "u" },
   { "view-attach",           OP_VIEW_ATTACH,                 "\n" },
   { "view-attach",           OP_VIEW_ATTACH,                 "\r" },
-  { "delete-entry",          OP_DELETE,                      "d" },
-  { "undelete-entry",        OP_UNDELETE,                    "u" },
-  { "collapse-parts",        OP_ATTACH_COLLAPSE,             "v" },
-  { "check-traditional-pgp", OP_CHECK_TRADITIONAL,           "\033P" },
-  { "extract-keys",          OP_EXTRACT_KEYS,                "\013" },
-  { "forget-passphrase",     OP_FORGET_PASSPHRASE,           "\006" },
+  { "view-mailcap",          OP_ATTACH_VIEW_MAILCAP,         "m" },
+  { "view-text",             OP_ATTACH_VIEW_TEXT,            "T" },
   { NULL,                    0,                              NULL },
 };
 
 const struct Binding OpCompose[] = { /* map: compose */
   { "attach-file",           OP_COMPOSE_ATTACH_FILE,         "a" },
+  { "attach-key",            OP_COMPOSE_ATTACH_KEY,          "\033k" },
   { "attach-message",        OP_COMPOSE_ATTACH_MESSAGE,      "A" },
 #ifdef USE_NNTP
   { "attach-news-message",   OP_COMPOSE_ATTACH_NEWS_MESSAGE, NULL },
 #endif
-  { "edit-bcc",              OP_COMPOSE_EDIT_BCC,            "b" },
-  { "edit-cc",               OP_COMPOSE_EDIT_CC,             "c" },
   { "copy-file",             OP_SAVE,                        "C" },
   { "detach-file",           OP_DELETE,                      "D" },
-  { "toggle-disposition",    OP_COMPOSE_TOGGLE_DISPOSITION,  "\004" },
+  { "display-toggle-weed",   OP_DISPLAY_HEADERS,             "h" },
+  { "edit-bcc",              OP_COMPOSE_EDIT_BCC,            "b" },
+  { "edit-cc",               OP_COMPOSE_EDIT_CC,             "c" },
   { "edit-description",      OP_COMPOSE_EDIT_DESCRIPTION,    "d" },
-  { "edit-message",          OP_COMPOSE_EDIT_MESSAGE,        "e" },
-  { "edit-headers",          OP_COMPOSE_EDIT_HEADERS,        "E" },
-  { "edit-file",             OP_COMPOSE_EDIT_FILE,           "\030e" },
   { "edit-encoding",         OP_COMPOSE_EDIT_ENCODING,       "\005" },
-  { "edit-from",             OP_COMPOSE_EDIT_FROM,           "\033f" },
   { "edit-fcc",              OP_COMPOSE_EDIT_FCC,            "f" },
-  { "filter-entry",          OP_FILTER,                      "F" },
-  { "get-attachment",        OP_COMPOSE_GET_ATTACHMENT,      "G" },
-  { "display-toggle-weed",   OP_DISPLAY_HEADERS,             "h" },
-  { "ispell",                OP_COMPOSE_ISPELL,              "i" },
-  { "print-entry",           OP_PRINT,                       "l" },
+  { "edit-file",             OP_COMPOSE_EDIT_FILE,           "\030e" },
+#ifdef USE_NNTP
+  { "edit-followup-to",      OP_COMPOSE_EDIT_FOLLOWUP_TO,    NULL },
+#endif
+  { "edit-from",             OP_COMPOSE_EDIT_FROM,           "\033f" },
+  { "edit-headers",          OP_COMPOSE_EDIT_HEADERS,        "E" },
+  { "edit-message",          OP_COMPOSE_EDIT_MESSAGE,        "e" },
   { "edit-mime",             OP_COMPOSE_EDIT_MIME,           "m" },
-  { "new-mime",              OP_COMPOSE_NEW_MIME,            "n" },
 #ifdef USE_NNTP
   { "edit-newsgroups",       OP_COMPOSE_EDIT_NEWSGROUPS,     NULL },
-  { "edit-followup-to",      OP_COMPOSE_EDIT_FOLLOWUP_TO,    NULL },
-  { "edit-x-comment-to",     OP_COMPOSE_EDIT_X_COMMENT_TO,   NULL },
 #endif
-  { "postpone-message",      OP_COMPOSE_POSTPONE_MESSAGE,    "P" },
   { "edit-reply-to",         OP_COMPOSE_EDIT_REPLY_TO,       "r" },
-  { "rename-attachment",     OP_COMPOSE_RENAME_ATTACHMENT,   "\017" },
-  { "rename-file",           OP_COMPOSE_RENAME_FILE,         "R" },
   { "edit-subject",          OP_COMPOSE_EDIT_SUBJECT,        "s" },
   { "edit-to",               OP_COMPOSE_EDIT_TO,             "t" },
   { "edit-type",             OP_EDIT_TYPE,                   "\024" },
-  { "write-fcc",             OP_COMPOSE_WRITE_MESSAGE,       "w" },
-  { "toggle-unlink",         OP_COMPOSE_TOGGLE_UNLINK,       "u" },
-  { "toggle-recode",         OP_COMPOSE_TOGGLE_RECODE,       NULL },
-  { "update-encoding",       OP_COMPOSE_UPDATE_ENCODING,     "U" },
-  { "view-attach",           OP_VIEW_ATTACH,                 "\n" },
-  { "view-attach",           OP_VIEW_ATTACH,                 "\r" },
-  { "send-message",          OP_COMPOSE_SEND_MESSAGE,        "y" },
-  { "pipe-entry",            OP_PIPE,                        "|" },
-  { "attach-key",            OP_COMPOSE_ATTACH_KEY,          "\033k" },
-  { "pgp-menu",              OP_COMPOSE_PGP_MENU,            "p" },
+#ifdef USE_NNTP
+  { "edit-x-comment-to",     OP_COMPOSE_EDIT_X_COMMENT_TO,   NULL },
+#endif
+  { "filter-entry",          OP_FILTER,                      "F" },
   { "forget-passphrase",     OP_FORGET_PASSPHRASE,           "\006" },
-  { "smime-menu",            OP_COMPOSE_SMIME_MENU,          "S" },
+  { "get-attachment",        OP_COMPOSE_GET_ATTACHMENT,      "G" },
+  { "ispell",                OP_COMPOSE_ISPELL,              "i" },
 #ifdef MIXMASTER
   { "mix",                   OP_COMPOSE_MIX,                 "M" },
 #endif
+  { "new-mime",              OP_COMPOSE_NEW_MIME,            "n" },
+  { "pgp-menu",              OP_COMPOSE_PGP_MENU,            "p" },
+  { "pipe-entry",            OP_PIPE,                        "|" },
+  { "postpone-message",      OP_COMPOSE_POSTPONE_MESSAGE,    "P" },
+  { "print-entry",           OP_PRINT,                       "l" },
+  { "rename-attachment",     OP_COMPOSE_RENAME_ATTACHMENT,   "\017" },
+  { "rename-file",           OP_COMPOSE_RENAME_FILE,         "R" },
+  { "send-message",          OP_COMPOSE_SEND_MESSAGE,        "y" },
+  { "smime-menu",            OP_COMPOSE_SMIME_MENU,          "S" },
+  { "toggle-disposition",    OP_COMPOSE_TOGGLE_DISPOSITION,  "\004" },
+  { "toggle-recode",         OP_COMPOSE_TOGGLE_RECODE,       NULL },
+  { "toggle-unlink",         OP_COMPOSE_TOGGLE_UNLINK,       "u" },
+  { "update-encoding",       OP_COMPOSE_UPDATE_ENCODING,     "U" },
+  { "view-attach",           OP_VIEW_ATTACH,                 "\n" },
+  { "view-attach",           OP_VIEW_ATTACH,                 "\r" },
+  { "write-fcc",             OP_COMPOSE_WRITE_MESSAGE,       "w" },
   { NULL,                    0,                              NULL },
 };
 
@@ -472,37 +488,49 @@ const struct Binding OpAlias[] = { /* map: alias */
 
 /* The file browser */
 const struct Binding OpBrowser[] = { /* map: browser */
+  { "buffy-list",            OP_BUFFY_LIST,                  "." },
+#ifdef USE_NNTP
+  { "catchup",               OP_CATCHUP,                     NULL },
+#endif
   { "change-dir",            OP_CHANGE_DIRECTORY,            "c" },
-  { "goto-parent",           OP_GOTO_PARENT,                 "p" },
+  { "check-new",             OP_CHECK_NEW,                   NULL },
+#ifdef USE_IMAP
+  { "create-mailbox",        OP_CREATE_MAILBOX,              "C" },
+  { "delete-mailbox",        OP_DELETE_MAILBOX,              "d" },
+#endif
   { "display-filename",      OP_BROWSER_TELL,                "@" },
   { "enter-mask",            OP_ENTER_MASK,                  "m" },
-  { "sort",                  OP_SORT,                        "o" },
-  { "sort-reverse",          OP_SORT_REVERSE,                "O" },
-  { "select-new",            OP_BROWSER_NEW_FILE,            "N" },
-  { "check-new",             OP_CHECK_NEW,                   NULL },
-  { "toggle-mailboxes",      OP_TOGGLE_MAILBOXES,            "\t" },
+  { "goto-folder",           OP_BROWSER_GOTO_FOLDER,         "=" },
+  { "goto-parent",           OP_GOTO_PARENT,                 "p" },
 #ifdef USE_NNTP
   { "reload-active",         OP_LOAD_ACTIVE,                 NULL },
-  { "subscribe-pattern",     OP_SUBSCRIBE_PATTERN,           NULL },
-  { "unsubscribe-pattern",   OP_UNSUBSCRIBE_PATTERN,         NULL },
-  { "catchup",               OP_CATCHUP,                     NULL },
-  { "uncatchup",             OP_UNCATCHUP,                   NULL },
 #endif
-  { "view-file",             OP_BROWSER_VIEW_FILE,           " " },
-  { "buffy-list",            OP_BUFFY_LIST,                  "." },
 #ifdef USE_IMAP
-  { "create-mailbox",        OP_CREATE_MAILBOX,              "C" },
-  { "delete-mailbox",        OP_DELETE_MAILBOX,              "d" },
   { "rename-mailbox",        OP_RENAME_MAILBOX,              "r" },
 #endif
+  { "select-new",            OP_BROWSER_NEW_FILE,            "N" },
+  { "sort",                  OP_SORT,                        "o" },
+  { "sort-reverse",          OP_SORT_REVERSE,                "O" },
 #if defined USE_IMAP || defined USE_NNTP
   { "subscribe",             OP_BROWSER_SUBSCRIBE,           "s" },
-  { "unsubscribe",           OP_BROWSER_UNSUBSCRIBE,         "u" },
 #endif
+#ifdef USE_NNTP
+  { "subscribe-pattern",     OP_SUBSCRIBE_PATTERN,           NULL },
+#endif
+  { "toggle-mailboxes",      OP_TOGGLE_MAILBOXES,            "\t" },
 #ifdef USE_IMAP
   { "toggle-subscribed",     OP_BROWSER_TOGGLE_LSUB,         "T" },
 #endif
-  { "goto-folder",           OP_BROWSER_GOTO_FOLDER,         "=" },
+#ifdef USE_NNTP
+  { "uncatchup",             OP_UNCATCHUP,                   NULL },
+#endif
+#if defined USE_IMAP || defined USE_NNTP
+  { "unsubscribe",           OP_BROWSER_UNSUBSCRIBE,         "u" },
+#endif
+#ifdef USE_NNTP
+  { "unsubscribe-pattern",   OP_UNSUBSCRIBE_PATTERN,         NULL },
+#endif
+  { "view-file",             OP_BROWSER_VIEW_FILE,           " " },
   { NULL,                    0,                              NULL },
 };
 
@@ -516,29 +544,29 @@ const struct Binding OpQuery[] = { /* map: query */
 };
 
 const struct Binding OpEditor[] = { /* map: editor */
-  { "bol",                   OP_EDITOR_BOL,                  "\001" },
+  { "backspace",             OP_EDITOR_BACKSPACE,            "\010" },
   { "backward-char",         OP_EDITOR_BACKWARD_CHAR,        "\002" },
   { "backward-word",         OP_EDITOR_BACKWARD_WORD,        "\033b" },
+  { "bol",                   OP_EDITOR_BOL,                  "\001" },
+  { "buffy-cycle",           OP_EDITOR_BUFFY_CYCLE,          " " },
   { "capitalize-word",       OP_EDITOR_CAPITALIZE_WORD,      "\033c" },
-  { "downcase-word",         OP_EDITOR_DOWNCASE_WORD,        "\033l" },
-  { "upcase-word",           OP_EDITOR_UPCASE_WORD,          "\033u" },
+  { "complete",              OP_EDITOR_COMPLETE,             "\t" },
+  { "complete-query",        OP_EDITOR_COMPLETE_QUERY,       "\024" },
   { "delete-char",           OP_EDITOR_DELETE_CHAR,          "\004" },
+  { "downcase-word",         OP_EDITOR_DOWNCASE_WORD,        "\033l" },
   { "eol",                   OP_EDITOR_EOL,                  "\005" },
   { "forward-char",          OP_EDITOR_FORWARD_CHAR,         "\006" },
   { "forward-word",          OP_EDITOR_FORWARD_WORD,         "\033f" },
-  { "backspace",             OP_EDITOR_BACKSPACE,            "\010" },
+  { "history-down",          OP_EDITOR_HISTORY_DOWN,         NULL },
+  { "history-search",        OP_EDITOR_HISTORY_SEARCH,       "\022" },
+  { "history-up",            OP_EDITOR_HISTORY_UP,           NULL },
   { "kill-eol",              OP_EDITOR_KILL_EOL,             "\013" },
   { "kill-eow",              OP_EDITOR_KILL_EOW,             "\033d" },
   { "kill-line",             OP_EDITOR_KILL_LINE,            "\025" },
-  { "quote-char",            OP_EDITOR_QUOTE_CHAR,           "\026" },
   { "kill-word",             OP_EDITOR_KILL_WORD,            "\027" },
-  { "complete",              OP_EDITOR_COMPLETE,             "\t" },
-  { "complete-query",        OP_EDITOR_COMPLETE_QUERY,       "\024" },
-  { "buffy-cycle",           OP_EDITOR_BUFFY_CYCLE,          " " },
-  { "history-up",            OP_EDITOR_HISTORY_UP,           NULL },
-  { "history-down",          OP_EDITOR_HISTORY_DOWN,         NULL },
-  { "history-search",        OP_EDITOR_HISTORY_SEARCH,       "\022" },
+  { "quote-char",            OP_EDITOR_QUOTE_CHAR,           "\026" },
   { "transpose-chars",       OP_EDITOR_TRANSPOSE_CHARS,      NULL },
+  { "upcase-word",           OP_EDITOR_UPCASE_WORD,          "\033u" },
   { NULL,                    0,                              NULL },
 };
 
@@ -549,7 +577,7 @@ const struct Binding OpPgp[] = { /* map: pgp */
 };
 
 /* When using the GPGME based backend we have some useful functions
-   for the SMIME menu.  */
+   for the SMIME menu. */
 const struct Binding OpSmime[] = { /* map: smime */
 #ifdef CRYPT_BACKEND_GPGME
   { "verify-key",            OP_VERIFY_KEY,                  "c" },
@@ -563,10 +591,10 @@ const struct Binding OpMix[] = { /* map: mixmaster */
   { "accept",                OP_MIX_USE,                     "\n" },
   { "accept",                OP_MIX_USE,                     "\r" },
   { "append",                OP_MIX_APPEND,                  "a" },
-  { "insert",                OP_MIX_INSERT,                  "i" },
-  { "delete",                OP_MIX_DELETE,                  "d" },
-  { "chain-prev",            OP_MIX_CHAIN_PREV,              "<left>" },
   { "chain-next",            OP_MIX_CHAIN_NEXT,              "<right>" },
+  { "chain-prev",            OP_MIX_CHAIN_PREV,              "<left>" },
+  { "delete",                OP_MIX_DELETE,                  "d" },
+  { "insert",                OP_MIX_INSERT,                  "i" },
   { NULL,                    0,                              NULL },
 };
 #endif /* MIXMASTER */