From 43128f80e62e2157e67c5ef1b7a08755f337460d Mon Sep 17 00:00:00 2001 From: bringert Date: Wed, 27 Jun 2007 09:07:51 +0000 Subject: Limit GSL/JSGF/SRGS ABNF grammar line width to 80. --- src/GF/Speech/PrGSL.hs | 6 +++++- src/GF/Speech/PrJSGF.hs | 5 ++++- src/GF/Speech/PrSRGS_ABNF.hs | 8 ++++++-- 3 files changed, 15 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/GF/Speech/PrGSL.hs b/src/GF/Speech/PrGSL.hs index a8e430ac3..f1fb9013c 100644 --- a/src/GF/Speech/PrGSL.hs +++ b/src/GF/Speech/PrGSL.hs @@ -34,8 +34,12 @@ import Data.Char (toUpper,toLower) import Data.List (partition) import Text.PrettyPrint.HughesPJ +width :: Int +width = 80 + gslPrinter :: Options -> StateGrammar -> String -gslPrinter opts s = show $ prGSL $ makeSimpleSRG opts s +gslPrinter opts s = renderStyle st $ prGSL $ makeSimpleSRG opts s + where st = style { lineLength = width } prGSL :: SRG -> Doc prGSL (SRG{grammarName=name,startCat=start,origStartCat=origStart,rules=rs}) diff --git a/src/GF/Speech/PrJSGF.hs b/src/GF/Speech/PrJSGF.hs index 72910235e..ec1305b5d 100644 --- a/src/GF/Speech/PrJSGF.hs +++ b/src/GF/Speech/PrJSGF.hs @@ -38,11 +38,14 @@ import Data.Maybe import Text.PrettyPrint.HughesPJ import Debug.Trace +width :: Int +width = 80 jsgfPrinter :: Maybe SISRFormat -> Options -> StateGrammar -> String -jsgfPrinter sisr opts s = show $ prJSGF sisr $ makeSimpleSRG opts s +jsgfPrinter sisr opts s = renderStyle st $ prJSGF sisr $ makeSimpleSRG opts s + where st = style { lineLength = width } prJSGF :: Maybe SISRFormat -> SRG -> Doc prJSGF sisr srg@(SRG{grammarName=name,grammarLanguage=ml, diff --git a/src/GF/Speech/PrSRGS_ABNF.hs b/src/GF/Speech/PrSRGS_ABNF.hs index 244a00816..cc81e5d72 100644 --- a/src/GF/Speech/PrSRGS_ABNF.hs +++ b/src/GF/Speech/PrSRGS_ABNF.hs @@ -39,15 +39,19 @@ import Data.Maybe import Text.PrettyPrint.HughesPJ import Debug.Trace +width :: Int +width = 80 srgsAbnfPrinter :: Maybe SISRFormat -> Bool -- ^ Include probabilities -> Options -> StateGrammar -> String -srgsAbnfPrinter sisr probs opts s = show $ prABNF sisr probs $ makeSimpleSRG opts s +srgsAbnfPrinter sisr probs opts s = showDoc $ prABNF sisr probs $ makeSimpleSRG opts s srgsAbnfNonRecursivePrinter :: Options -> StateGrammar -> String -srgsAbnfNonRecursivePrinter opts s = show $ prABNF Nothing False $ makeNonRecursiveSRG opts s +srgsAbnfNonRecursivePrinter opts s = showDoc $ prABNF Nothing False $ makeNonRecursiveSRG opts s + +showDoc = renderStyle (style { lineLength = width }) prABNF :: Maybe SISRFormat -> Bool -> SRG -> Doc prABNF sisr probs srg@(SRG{grammarName=name,grammarLanguage=ml, -- cgit v1.2.3