Index: OPS =================================================================== RCS file: /home/roessler/cvs/mutt/OPS,v retrieving revision 3.6 diff -u -r3.6 OPS --- OPS 17 Feb 2005 03:33:00 -0000 3.6 +++ OPS 19 Jul 2005 22:09:49 -0000 @@ -108,10 +108,12 @@ OP_MAIN_NEXT_NEW "jump to the next new message" OP_MAIN_NEXT_NEW_THEN_UNREAD "jump to the next new or unread message" OP_MAIN_NEXT_SUBTHREAD "jump to the next subthread" +OP_MAIN_NEXT_TAGGED "jump to the next tagged message" OP_MAIN_NEXT_THREAD "jump to the next thread" OP_MAIN_NEXT_UNDELETED "move to the next undeleted message" OP_MAIN_NEXT_UNREAD "jump to the next unread message" OP_MAIN_PARENT_MESSAGE "jump to parent message in thread" +OP_MAIN_PREV_TAGGED "jump to previous tagged message" OP_MAIN_PREV_THREAD "jump to previous thread" OP_MAIN_PREV_SUBTHREAD "jump to previous subthread" OP_MAIN_PREV_UNDELETED "move to the previous undeleted message" Index: PATCHES =================================================================== RCS file: /home/roessler/cvs/mutt/PATCHES,v retrieving revision 3.6 diff -u -r3.6 PATCHES --- PATCHES 9 Dec 2002 17:44:54 -0000 3.6 +++ PATCHES 19 Jul 2005 22:09:49 -0000 @@ -0,0 +1 @@ +patch-1.5.9.aw.jumptagged.1 Index: curs_main.c =================================================================== RCS file: /home/roessler/cvs/mutt/curs_main.c,v retrieving revision 3.22 diff -u -r3.22 curs_main.c --- curs_main.c 12 Jun 2005 18:24:31 -0000 3.22 +++ curs_main.c 19 Jul 2005 22:09:49 -0000 @@ -1323,10 +1323,13 @@ case OP_MAIN_PREV_UNREAD: case OP_MAIN_NEXT_NEW_THEN_UNREAD: case OP_MAIN_PREV_NEW_THEN_UNREAD: + case OP_MAIN_NEXT_TAGGED: + case OP_MAIN_PREV_TAGGED: { int first_unread = -1; int first_new = -1; + int first_tagged = -1; CHECK_MSGCOUNT; CHECK_VISIBLE; @@ -1336,7 +1339,7 @@ for (j = 0; j != Context->vcount; j++) { #define CURHDRi Context->hdrs[Context->v2r[i]] - if (op == OP_MAIN_NEXT_NEW || op == OP_MAIN_NEXT_UNREAD || op == OP_MAIN_NEXT_NEW_THEN_UNREAD) + if (op == OP_MAIN_NEXT_NEW || op == OP_MAIN_NEXT_UNREAD || op == OP_MAIN_NEXT_NEW_THEN_UNREAD || op == OP_MAIN_NEXT_TAGGED) { i++; if (i > Context->vcount - 1) @@ -1369,7 +1372,12 @@ if ((!CURHDRi->old) && first_new == -1) first_new = i; } - + + if (CURHDRi->tagged && first_tagged == -1) { + first_tagged = i; + break; + } + if ((op == OP_MAIN_NEXT_UNREAD || op == OP_MAIN_PREV_UNREAD) && first_unread != -1) break; @@ -1387,11 +1395,14 @@ op == OP_MAIN_NEXT_NEW_THEN_UNREAD || op == OP_MAIN_PREV_NEW_THEN_UNREAD) && first_unread != -1) menu->current = first_unread; + else if ((op == OP_MAIN_NEXT_TAGGED || op == OP_MAIN_PREV_TAGGED) + && first_tagged != -1) + menu->current = first_tagged; if (menu->current == -1) { menu->current = menu->oldcurrent; - mutt_error ("%s%s.", (op == OP_MAIN_NEXT_NEW || op == OP_MAIN_PREV_NEW) ? _("No new messages") : _("No unread messages"), + mutt_error ("%s%s.", (op == OP_MAIN_NEXT_NEW || op == OP_MAIN_PREV_NEW) ? _("No new messages") : (op == OP_MAIN_NEXT_TAGGED || op == OP_MAIN_PREV_TAGGED) ? _("No tagged messages") : _("No unread messages"), Context->pattern ? _(" in this limited view") : ""); } else if (menu->menu == MENU_PAGER) Index: functions.h =================================================================== RCS file: /home/roessler/cvs/mutt/functions.h,v retrieving revision 3.9 diff -u -r3.9 functions.h --- functions.h 17 Feb 2005 03:33:00 -0000 3.9 +++ functions.h 19 Jul 2005 22:09:49 -0000 @@ -139,6 +139,8 @@ { "next-unread", OP_MAIN_NEXT_UNREAD, NULL }, { "previous-unread", OP_MAIN_PREV_UNREAD, NULL }, { "parent-message", OP_MAIN_PARENT_MESSAGE, "P" }, + { "next-tagged", OP_MAIN_NEXT_TAGGED, NULL }, + { "previous-tagged", OP_MAIN_PREV_TAGGED, NULL }, { "extract-keys", OP_EXTRACT_KEYS, "\013" }, @@ -231,6 +233,8 @@ { "previous-line", OP_PREV_LINE, NULL }, { "bottom", OP_PAGER_BOTTOM, NULL }, { "parent-message", OP_MAIN_PARENT_MESSAGE, "P" }, + { "next-tagged", OP_MAIN_NEXT_TAGGED, NULL }, + { "previous-tagged", OP_MAIN_PREV_TAGGED, NULL },