[xmonad] never show infobars on certain workspace

Norbert Zeh nzeh at cs.dal.ca
Tue Dec 13 18:31:21 CET 2011


enxt [2011.12.13 1957 +0300]:
> hi!
> 
> i'm looking for the method how to avoid showing infobars like dzenbar on a
> particular workspace. is it possible? if yes, could someone give concrete hints
> and recommendations how to implement it?
> 
> i use xmonad-darcs and bars are spawned with the following lines:
> 
> main = do
> myStatusBarPipe <- spawnPipe myStatusBar
> conkyBar <- spawnPipe myConkyBar

The answer depends on what exactly it is you want.

- If you

  - Simply want your windows to use the entire screen (covering up the status
    bar and thereby creating the illusion that it's not there) and

  - You're okay with setting this up interactively,

  then create a key binding for XMonad.Hooks.ManageDocks.toggleStruts, and you
  can interactively show/hide the status bar.  The status of visible/hidden
  statusbar is actually stored on a per-workspace/layout basis.  So it will give
  you the end result you want: statusbar visible on some workspaces, not visible
  on others.

- If you really want the status bar to disappear, then I don't think this can be
  done using the current way in which xmonad interacts with status bars.
  Essentially, it doesn't manage them at all, but this is what would be required
  to physically hide them.

- If what you want is between these two extremes and you are okay with simply
  covering up the workspace but you want things setup automatically so that the
  statusbar is visible on some workspaces and hidden on others, I think this
  should not be too hard to do, but a little trickery will be required.

So, maybe you can explain more precisely what you want, and then we can
investigate your options further.

N.



More information about the xmonad mailing list