Skip to content

Commit 2986fec

Browse files
fix hash display (colon and endline)
1 parent ac74acf commit 2986fec

File tree

1 file changed

+6
-13
lines changed

1 file changed

+6
-13
lines changed

src/Main.hs

+6-13
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,6 @@ showBranchNumbers distance = show <$> [ahead, behind]
3434
(ahead, behind) = fromMaybe (0,0) -- the script needs some value, (0,0) means no display
3535
$ pairFromDistance <$> distance
3636

37-
makeHashWith :: Char -- prefix to hashes
38-
-> Maybe Hash
39-
-> String
40-
makeHashWith _ Nothing = "" -- some error in gitrevparse
41-
makeHashWith _ (Just (MkHash "")) = "" -- hash too short
42-
makeHashWith c (Just (MkHash hash)) = c : init hash
43-
4437
{- Git commands -}
4538

4639
successOrNothing :: (ExitCode, a, b) -> Maybe a
@@ -56,19 +49,19 @@ gitstatus = safeRun "git" ["status", "--porcelain", "--branch"]
5649
gitrevparse :: IO (Maybe Hash)
5750
gitrevparse = do
5851
result <- safeRun "git" ["rev-parse", "--short", "HEAD"]
59-
return $ MkHash <$> result
52+
return $ MkHash . init <$> result
6053

6154
{- Combine status info, branch info and hash -}
6255

63-
branchOrHash :: Maybe Hash -> Maybe Branch -> String
64-
branchOrHash _ (Just branch) = show branch
65-
branchOrHash (Just hash) Nothing = getHash hash
66-
branchOrHash Nothing _ = ""
56+
branchOrHashWith :: Char -> Maybe Hash -> Maybe Branch -> String
57+
branchOrHashWith _ _ (Just branch) = show branch
58+
branchOrHashWith c (Just hash) Nothing = c : getHash hash
59+
branchOrHashWith _ Nothing _ = ""
6760

6861
allStrings :: Maybe Hash
6962
-> (BranchInfo, Status Int)
7063
-> [String]
71-
allStrings mhash (MkBranchInfo branch _ behead, stat) = branchOrHash mhash branch : (showBranchNumbers behead ++ showStatusNumbers stat)
64+
allStrings mhash (MkBranchInfo branch _ behead, stat) = branchOrHashWith ':' mhash branch : (showBranchNumbers behead ++ showStatusNumbers stat)
7265

7366
stringsFromStatus :: Maybe Hash
7467
-> String -- status

0 commit comments

Comments
 (0)