summaryrefslogtreecommitdiff
path: root/src/GF/Infra/CompactPrint.hs
blob: eb8be2292f241bde600afead51b1ed8b592a10b6 (plain)
1
2
3
4
5
6
7
8
9
10
11
module GF.Infra.CompactPrint where
import Data.Char

compactPrint = concat . map spaceIf . words 

spaceIf w = case w of
  _ | keyword w -> "\n" ++ w
  c:cs | isAlpha c || isDigit c -> " " ++ w
  _ -> w

keyword w = elem w ["cat","fun","lin","lincat","oper","param"]