summaryrefslogtreecommitdiff
path: root/src/GF
diff options
context:
space:
mode:
authorbringert <bringert@cs.chalmers.se>2007-06-27 09:07:51 +0000
committerbringert <bringert@cs.chalmers.se>2007-06-27 09:07:51 +0000
commit43128f80e62e2157e67c5ef1b7a08755f337460d (patch)
tree2c161ec704c7bf9253d1ae71579da6bf7ec81ac4 /src/GF
parent48b477037d7fc8fcbbf548c72bab654cc967a094 (diff)
Limit GSL/JSGF/SRGS ABNF grammar line width to 80.
Diffstat (limited to 'src/GF')
-rw-r--r--src/GF/Speech/PrGSL.hs6
-rw-r--r--src/GF/Speech/PrJSGF.hs5
-rw-r--r--src/GF/Speech/PrSRGS_ABNF.hs8
3 files changed, 15 insertions, 4 deletions
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,