From b017bc1e9d6a11d89da294089d312203c39c0b1f Mon Sep 17 00:00:00 2001 From: Dmitry Zuikov Date: Fri, 17 Feb 2023 20:54:46 +0300 Subject: [PATCH] fixed negative literal issue --- .fixme/config | 39 ++++++++++++++++++++ .fixme/log | 4 ++ .fixme/report-wip.tpl | 3 ++ .gitignore | 1 + lib/Data/Config/Suckless/Parse/Megaparsec.hs | 10 ++++- 5 files changed, 55 insertions(+), 2 deletions(-) create mode 100644 .fixme/log create mode 100644 .fixme/report-wip.tpl diff --git a/.fixme/config b/.fixme/config index f33cce9..079e281 100644 --- a/.fixme/config +++ b/.fixme/config @@ -7,5 +7,44 @@ fixme-prefix FIXME: bugs issues ; defines a fixme entity and it's cate fixme-files doc/devlog **/*.hs fixme-files-ignore .direnv/** dist-newstyle/** +fixme-attribs assigned workflow resolution asap + +fixme-value-set workflow new backlog wip test fixed done + +fixme-value-set asap asap + + +[ fixme-report all json + (render builtin:microstache report-wip.tpl) + (post builtin:columns | 10 10 8 10 _) + (query ~workflow:backlog) + ; (query ?workflow:wip) + ; (query ?workflow:test) +] + +[ fixme-report wip json + (render builtin:microstache report-wip.tpl) + (post builtin:columns | 10 10 8 10 _) + (query ?workflow:test) + (query ?workflow:wip) + (query ?workflow:fixed) +] + +[ fixme-report backlog json + (render builtin:microstache report-wip.tpl) + (post builtin:columns | 10 10 8 10 _) + (query workflow:backlog) +] + +;; it's perfectly possible to override default +;; reports. do it on your own risk + +( fixme-report builtin:list-brief json + (render builtin:microstache report-wip.tpl) + (post builtin:columns | 10 10 8 10 _) +) + +[ fixme-report wip-json json +] diff --git a/.fixme/log b/.fixme/log new file mode 100644 index 0000000..22da08b --- /dev/null +++ b/.fixme/log @@ -0,0 +1,4 @@ + +;; This is a log file. All fixmies status updates go here + +fixme-set "workflow" "done" "9QfPgLHLSw" \ No newline at end of file diff --git a/.fixme/report-wip.tpl b/.fixme/report-wip.tpl new file mode 100644 index 0000000..b5af54a --- /dev/null +++ b/.fixme/report-wip.tpl @@ -0,0 +1,3 @@ +{{#items}} +{{&id}}|[{{&workflow}}]|{{&tag}}|{{&assigned}}|{{&title}} +{{/items}} diff --git a/.gitignore b/.gitignore index 0264734..9694907 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ dist-newstyle/ .direnv/ +.fixme/state.db diff --git a/lib/Data/Config/Suckless/Parse/Megaparsec.hs b/lib/Data/Config/Suckless/Parse/Megaparsec.hs index 0f859d5..6dff69b 100644 --- a/lib/Data/Config/Suckless/Parse/Megaparsec.hs +++ b/lib/Data/Config/Suckless/Parse/Megaparsec.hs @@ -82,17 +82,23 @@ intLit sp = L.lexeme sp $ do dec'= signed sc L.decimal symbolChars :: [Char] -symbolChars = "!$%&|*+-/:<=>?@^_~#.'" +symbolChars = "-!$%&|*+/:<=>?@^_~#.'" symbolChar :: Parser Char symbolChar = oneOf symbolChars +symbolCharNoMinus :: Parser Char +symbolCharNoMinus = oneOf symbolChars' + where + symbolChars' = dropWhile (== '-') symbolChars + -- FIXME: position! symbol :: forall c . MegaConstraints c => Parser () -> Parser (Syntax c) symbol sp = L.lexeme sp $ do co <- MegaContext . Just <$> getOffset - h <- letterChar <|> symbolChar + h <- letterChar <|> symbolCharNoMinus + -- FIXME: dont-start-symbol-with-minus t <- many (letterChar <|> digitChar <|> symbolChar) case h:t of "#t" -> pure $ Literal co (mkLit True)