From 15e6dfebb7a5ab1e849b149f81a862b5ccfa8b96 Mon Sep 17 00:00:00 2001 From: Daniele Fucini Date: Sun, 25 Oct 2026 21:23:41 +0100 Subject: [PATCH] Hide the NSP workspace in xmobar while it's empty --- .config/xmonad/xmonad.hs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.config/xmonad/xmonad.hs b/.config/xmonad/xmonad.hs index f725a6b..2d6ce2d 100644 --- a/.config/xmonad/xmonad.hs +++ b/.config/xmonad/xmonad.hs @@ -3,6 +3,7 @@ import Data.Monoid import Graphics.X11.ExtraTypes.XF86 import Control.Monad (forM_, liftM2, when) +import Data.Maybe (isJust) import XMonad import XMonad.Actions.OnScreen (greedyViewOnScreen) import XMonad.Actions.PhysicalScreens @@ -241,6 +242,8 @@ myXmobarPP = ppHidden = cultured . wrap " " "", ppHiddenNoWindows = outerspace . wrap " " "", ppUrgent = sunsetorange . wrap (keylime "!") (keylime "!"), + -- NamedScratchpad never removes NSP once created; hide it while it's empty + ppSort = (. filter (\w -> W.tag w /= scratchpadWorkspaceTag || isJust (W.stack w))) <$> ppSort def, ppOrder = \[ws, l, _, wins] -> [ws, l, wins], ppExtras = [logTitles formatFocused formatUnfocused] }