[xmonad] FR: Workspace cursors

Nicolas Pouillard nicolas.pouillard at gmail.com
Tue Apr 28 08:38:30 EDT 2009

Excerpts from Adam Vogt's message of Tue Apr 28 06:30:11 +0200 2009:
> * On Monday, April 27 2009, Russell Adams wrote:
> >Here's another idea that had been tossed around on IRC, a list of
> >workspace "cursors". This was born from a discussion regarding
> >Enlightenment virtual desktops, and on further inspection it turns out
> >that simulating a cursor was the real feature.
> >
> >When maintaining a large list of workspaces, navigating between them
> >is an issue. Having a list of pointers or cursors that could be
> >accessed quickly (single keypress bound) or linearly (next/prev
> >cursor) would be useful to "jump" between tasks.
> >
> >The idea would be that given an array of cursors, the current cursor
> >is constantly updated with the current workspace. Changing to another
> >cursor jumps to its last known location and it becomes the new current
> >cursor.
> >
> ...
> >
> >You could get fancy and change the array boundchecking to use the
> >length of the array, or make it a ring and just loop (nice idea).
> >
> >Comments?
> I'm not sure if XMonad.Actions.TopicSpace came up in the discussion, but it 
> does some of what you want because it keeps track of the previously viewed 
> workspaces, and has keybindings to the n'th last viewed workspace.

I was going to advertise for TopicSpace but I didn't have to :)

I can confirm that the goto n'th last viewed workspace + workspacePrompt let
me manage 50 workspaces seamlessly.

> So with a binding like:
> > [ ((modm, k), switchNthLastFocused myTopicConfig i) | (i, k) <- zip [1..] [xK_1 .. xK_9]]
> Lets you cycle the view among the last n+1 other workspaces by repeatedly
> calling that action.
> Ex. M-4 will cycle the last 5 workspaces (but only in one direction, though 
> I suspect that the list of recently visited workspaces could be modified to 
> make the other direction possible)

I was recently thinking of something similar. A binding could allow to pop the
workspaces from the head of the last-viewed list (actually push them back to
the end).
Best regards,

Nicolas Pouillard

More information about the xmonad mailing list