From 2a1b51d10f42cafa4a9efa084a8914cde8e70cb3 Mon Sep 17 00:00:00 2001 From: Spencer Janssen Date: Thu, 18 Oct 2007 02:25:11 +0200 Subject: Truncate long window titles darcs-hash:20071018002511-a5988-12b76a33f36ff72975d03585b68454dd1a4f8c5d.gz --- DynamicLog.hs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'DynamicLog.hs') diff --git a/DynamicLog.hs b/DynamicLog.hs index 213b997..888ed68 100644 --- a/DynamicLog.hs +++ b/DynamicLog.hs @@ -29,7 +29,7 @@ module XMonadContrib.DynamicLog ( pprWindowSetXinerama, PP(..), defaultPP, sjanssenPP, - wrap, xmobarColor + wrap, xmobarColor, shorten ) where -- @@ -128,6 +128,12 @@ wrap :: String -> String -> String -> String wrap l r "" = "" wrap l r m = l ++ m ++ r +shorten :: Int -> String -> String +shorten n xs | length xs < n = xs + | otherwise = (take (n - length end) xs) ++ end + where + end = "..." + sepBy :: String -> [String] -> String sepBy sep = concat . intersperse sep . filter (not . null) @@ -153,7 +159,7 @@ defaultPP = PP { ppCurrent = wrap "[" "]" , ppHiddenNoWindows = const "" , ppSep = " : " , ppWsSep = " " - , ppTitle = const "" + , ppTitle = shorten 50 , ppLayout = id , ppOrder = id } -- cgit v1.2.3