From 65f012d15513814bd2cc4ad74f54edd35ade13fe Mon Sep 17 00:00:00 2001 From: bringert Date: Mon, 23 Aug 2004 07:51:36 +0000 Subject: Added CFGM format (pm -printer=cfgm) and utf8 conversion for pm. --- src/GF/Canon/PrintGFC.hs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'src/GF/Canon/PrintGFC.hs') diff --git a/src/GF/Canon/PrintGFC.hs b/src/GF/Canon/PrintGFC.hs index 77e60c75d..e2b6e057a 100644 --- a/src/GF/Canon/PrintGFC.hs +++ b/src/GF/Canon/PrintGFC.hs @@ -69,12 +69,13 @@ instance Print Double where prt _ x = doc (shows x) instance Print Char where - prt _ s = doc (showChar '\'' . mkEsc s . showChar '\'') - prtList s = doc (showChar '"' . concatS (map mkEsc s) . showChar '"') + prt _ s = doc (showChar '\'' . mkEsc '\'' s . showChar '\'') + prtList s = doc (showChar '"' . concatS (map (mkEsc '"') s) . showChar '"') -mkEsc :: Char -> ShowS -mkEsc s = case s of - _ | elem s "\\\"'" -> showChar '\\' . showChar s +mkEsc :: Char -> Char -> ShowS +mkEsc q s = case s of + _ | s == q -> showChar '\\' . showChar s + '\\'-> showString "\\\\" '\n' -> showString "\\n" '\t' -> showString "\\t" _ -> showChar s -- cgit v1.2.3