[Xmonad] Xinerama & switching workspaces

Dave Harrison dave at nullcube.com
Sun Jun 10 02:08:20 EDT 2007

Donald Bruce Stewart wrote:
>> So now I come to a question, I have a xinerama setup for my laptop
>> that means I can plug into a monitor and have two screens.  My usual
>> usage involves me having to go hunting through workspaces to find
>> where I left a particular client window open (a terminal, web browser
>> window etc).  What I'm finding at the moment is that as I move through
>> the workspaces, at some point I select a workspace that's on the other
>> screen to the one I'm working on, and by selecting that workspace I
>> move to that other screen.  Then as I continue looking through my
>> workspaces, I pull them to that screen instead (I flick fast ;-) ).
>> So the question is, how do other people solve this problem (ie. how do
>> you cycle workspaces to find something you want in xinerama without
>> getting thrown around between screens) ?
>> And, is there a better way to find something on another workspace ?
> I use the state logging facility, and xmonad-status.c to display a
> little status bar showing the current workspace, and those others with
> clients on them -- I'm actually addicted to this script now.
> It takes the logging output, and prints it as:
>     1 2 [3] 5 8
> giving the indices of non-empty workspaces, and the focused one.
> Pipe that into dzen, and off you go. Examples in XMonadContrib/scripts/
> I the darcs version, you enable this by setting logging = True,
> and having xmonad-status.c built and in your path. 
> We're just about to move this printing stuff into Config.hs too, so you
> can print your own formats to stdout.
> -- Don

Hi Don,

I recall the output feature not being in 0.2, at least definitely
can't see any ouput flowing through the pipe that is setup on startup.

So since I have a recollection of needing the latest src from the
head, I tried to build the latest xmonad from darcs and hit this error,

% runhaskell Setup.lhs configure
Configuring xmonad-0.2...
configure: Dependency base>=2.0: using base-2.0
configure: Dependency X11>=1.2.1: using X11-1.2.2
configure: Dependency X11-extras>=0.2: using X11-extras-0.2
configure: Dependency mtl>=1.0: using mtl-1.0
configure: Dependency unix>=1.0: using unix-1.0
configure: Using install prefix: /usr/local
configure: Binaries installed in: /usr/local/bin
configure: Libraries installed in: /usr/local/lib/xmonad-0.2/ghc-6.6
configure: Private binaries installed in: /usr/local/libexec
configure: Data files installed in: /usr/local/share/xmonad-0.2
configure: Using compiler: /usr/bin/ghc
configure: Compiler flavor: GHC
configure: Compiler version: 6.6
configure: Using package tool: /usr/bin/ghc-pkg
configure: Using ar found on system at: /usr/bin/ar
configure: No haddock found
configure: No pfesetup found
configure: Using ranlib found on system at: /usr/bin/ranlib
configure: Using runghc found on system at: /usr/bin/runghc
configure: Using runhugs found on system at: /usr/bin/runhugs
configure: No happy found
configure: No alex found
configure: Using hsc2hs: /usr/bin/hsc2hs
configure: No c2hs found
configure: No cpphs found
configure: No greencard found
alana% runhaskell Setup.lhs build
*** Exception: dist/build/autogen/Paths_xmonad.hs: openFile:
permission denied (Permission denied)
alana% sudo runhaskell Setup.lhs build
Preprocessing executables for xmonad-0.2...
Building xmonad-0.2...
[3 of 6] Compiling Config[boot]     ( Config.hs-boot, nothing )
[4 of 6] Compiling Operations       ( Operations.hs,
dist/build/xmonad/xmonad-tmp/Operations.o )

Operations.hs:199:9: Not in scope: `changeProperty32'

Operations.hs:205:12: Not in scope: `unmapWindow'

Operations.hs:509:15: Not in scope: `getWMNormalHints'

    Not in scope: type constructor or class `SizeHints'

Operations.hs:525:51: Not in scope: `sh_max_size'

Operations.hs:526:51: Not in scope: `sh_base_size'

Operations.hs:527:51: Not in scope: `sh_resize_inc'

Operations.hs:528:51: Not in scope: `sh_aspect'

Operations.hs:529:51: Not in scope: `sh_base_size'

More information about the Xmonad mailing list