From 8bbf31f9f779ae9958ff3324f0f7735aa366f7bc Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Mon, 11 Sep 2023 05:10:54 +0200 Subject: Add the ‘=’ node for whitespace trimming MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- gsp.5 | 69 ++++++++++++++++++++----------------------------------------------- 1 file changed, 20 insertions(+), 49 deletions(-) (limited to 'gsp.5') diff --git a/gsp.5 b/gsp.5 index c7c7651..902dade 100644 --- a/gsp.5 +++ b/gsp.5 @@ -195,55 +195,6 @@ p {- } .Ed .Ss Whitespace control -The typical behavior of -.Nm -is to compact whitespace. -Here you can see a before-and-after of transpilation: -.Bd -literal -offset indent -Before - -foo { - bar{- Hello World } - baz{-Hello World} -} -.Ed -.Bd -literal -offset indent -After - -Hello WorldHello World -.Ed -.Pp -One exception to this use is when using embedded nodes. -If your literal text contains an embedded node, then whitespace around the node -is preserved: -.Bd -literal -offset indent -Before - -foo {- - Hello @bar{-there} world! -} -.Ed -.Bd -literal -offset indent -After - -Hello there world! -.Ed -.Pp -Therefore if you would like to remove the whitespace when working with literal -text, you need to manually compact your document: -.Bd -literal -offset indent -Before - -foo {- - Hello@bar{-there}world! -} -.Ed -.Bd -literal -offset indent -After - -Hellothereworld! -.Ed -.Pp Sometimes it is also useful to have a newline between nodes, especially when working with .Sq code @@ -269,6 +220,26 @@ After bar baz .Ed +.Pp +Additionally, sometimes when using literal text with the +.Sq - +special node name, it can be nice to have a way to trim whitespace around the +text without having to minify your markup. +To achieve this, you can use the special equals +.Pq Sq = +node name: +.Bd -literal -offset indent +Before + +>foo {- Hello World } + bar {= Hello World } +.Ed +.Bd -literal -offset indent +After + + Hello World +Hello World +.Ed .Sh SEE ALSO .Xr gsp 1 .Pp -- cgit v1.2.3