1{-# LANGUAGE OverloadedStrings #-}
13import qualified Json.Encode as Json
14import Data.Binary (Binary, get, put)
37merge :: Region -> Region -> Region
38merge (Region start _) (Region _ end) =
45 Region (Position 0 0) (Position 0 0)
51 Region (Position 1 1) (Position 1 1)
58encode :: Region -> Json.Value
59encode (Region start end) =
61 [ ("start", encodePosition start)
62 , ("end", encodePosition end)
66encodePosition :: Position -> Json.Value
67encodePosition (Position line column) =
69 [ ("line", Json.int line)
70 , ("column", Json.int column)
78instance Binary Region where
80 Region <$> get <*> get
82 put (Region start end) =
87instance Binary Position where
89 Position <$> get <*> get
91 put (Position line column) =
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list