From 3fec06f36e4dc0404d4faeda562174619d8a7995 Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Sun, 27 Aug 2017 14:22:48 -0500 Subject: [PATCH] modern.out: Trying to trim trailing whitespace. --- extra/modern/out/out.factor | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/extra/modern/out/out.factor b/extra/modern/out/out.factor index 33e76e05c6..37499c577e 100644 --- a/extra/modern/out/out.factor +++ b/extra/modern/out/out.factor @@ -8,8 +8,13 @@ IN: modern.out SYMBOL: last-slice +: trim-before-newline ( seq -- seq' ) + dup [ char: \s = not ] find + { char: \r char: \n } member? + [ tail ] [ drop ] if ; + : write-whitespace ( obj -- ) - [ last-slice get [ swap slice-between ] [ slice-before ] if* >string io:write ] + [ last-slice get [ swap slice-between ] [ slice-before ] if* trim-before-newline >string io:write ] [ last-slice namespaces:set ] bi ; GENERIC: write-literal ( obj -- ) @@ -39,6 +44,11 @@ M: array write-literal [ write-literal ] each ; : rewrite-paths ( seq quot -- ) '[ _ rewrite-path ] each ; inline ]] + +: rewrite-string-exact ( string -- string' ) + string>literals write-modern-string ; + + : rewrite-path-exact ( path -- ) [ path>literals ] [ ] bi write-modern-path ;