From d2f975944380aab57047a9e84af620e15464fa15 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Thu, 2 Aug 2012 13:47:26 -0400 Subject: refactor --- Assistant/Alert.hs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'Assistant') diff --git a/Assistant/Alert.hs b/Assistant/Alert.hs index b234d2a5a..16ce222ad 100644 --- a/Assistant/Alert.hs +++ b/Assistant/Alert.hs @@ -247,18 +247,11 @@ sanityCheckFixAlert msg = Alert combinemessage _ _ = Nothing addFileAlert :: FilePath -> Alert -addFileAlert file = (activityAlert (Just "Added") $ trim $ takeFileName file) +addFileAlert file = (activityAlert (Just "Added") $ shortFile $ takeFileName file) { alertName = Just AddFileAlert , alertCombiner = messageCombiner combinemessage } where - trim f - | len < maxlen = f - | otherwise = take half f ++ ".." ++ drop (len - half) f - where - len = length f - maxlen = 20 - half = (maxlen - 2) `div` 2 combinemessage (StringAlert new) (StringAlert old) = Just $ StringAlert $ unlines $ take 10 $ new : lines old @@ -274,3 +267,13 @@ messageCombiner combinemessage = Just go Nothing -> Nothing Just !m -> Just $! old { alertMessage = m } | otherwise = Nothing + +shortFile :: FilePath -> String +shortFile f + | len < maxlen = f + | otherwise = take half f ++ ".." ++ drop (len - half) f + where + len = length f + maxlen = 20 + half = (maxlen - 2) `div` 2 + -- cgit v1.2.3