diff -r 32cd156749d1 dwm.h --- a/dwm.h Fri Jul 21 21:15:39 2006 +0200 +++ b/dwm.h Sun Jul 23 10:13:52 2006 +0200 @@ -139,6 +139,8 @@ extern void settags(Client *c); extern void settags(Client *c); extern void togglemode(Arg *arg); extern void view(Arg *arg); +extern void viewnext(Arg *arg); +extern void viewprev(Arg *arg); /* util.c */ extern void *emallocz(unsigned int size); diff -r 32cd156749d1 event.c --- a/event.c Fri Jul 21 21:15:39 2006 +0200 +++ b/event.c Sun Jul 23 10:13:52 2006 +0200 @@ -39,6 +39,8 @@ static Key key[] = { { MODKEY, XK_2, view, { .i = Tnet } }, { MODKEY, XK_3, view, { .i = Twork } }, { MODKEY, XK_4, view, { .i = Tmisc} }, + { MODKEY, XK_Right, viewnext, { 0 } }, + { MODKEY, XK_Left, viewprev, { 0 } }, { MODKEY, XK_j, focusnext, { 0 } }, { MODKEY, XK_k, focusprev, { 0 } }, { MODKEY, XK_m, togglemax, { 0 } }, diff -r 32cd156749d1 tag.c --- a/tag.c Fri Jul 21 21:15:39 2006 +0200 +++ b/tag.c Sun Jul 23 10:13:52 2006 +0200 @@ -212,3 +212,17 @@ view(Arg *arg) arrange(NULL); drawall(); } + +void +viewnext(Arg *arg) +{ + arg->i = (tsel < TLast-1) ? tsel+1 : 0; + view(arg); +} + +void +viewprev(Arg *arg) +{ + arg->i = (tsel > 0) ? tsel-1 : TLast-1; + view(arg); +}