Tags which have optional closing tags have an edge case that I can't seem to handle.
The only way I've found to output the closing tags for tags where it is optional, such as <P>, is to set *HTML-STYLE* to :TREE.
What I would like to do is always include closing tags, while also not printing pretty.
The reason why is because when printing pretty, lines wrap unexpectedly for <pre><code> blocks, when I'm trying to illustrate a code snippet verbatim at 80 characters per line.
For example (with-html (:p "hello") (:span "world")) should be treated as 2 elements at the same hierarchical level, but without *HTML-STYLE* set to :TREE, <span> becomes a child of <p>.
Now that I think about it, pretty printing and tree-style printing should be orthogonal. I've updated the code so that binding *html-style* to :tree and *print-pretty* to nil will do what you expected.
Tags which have optional closing tags have an edge case that I can't seem to handle.
The only way I've found to output the closing tags for tags where it is optional, such as
<P>
, is to set*HTML-STYLE*
to:TREE
.What I would like to do is always include closing tags, while also not printing pretty.
The reason why is because when printing pretty, lines wrap unexpectedly for
<pre><code>
blocks, when I'm trying to illustrate a code snippet verbatim at 80 characters per line.For example
(with-html (:p "hello") (:span "world"))
should be treated as 2 elements at the same hierarchical level, but without*HTML-STYLE*
set to:TREE
,<span>
becomes a child of<p>
.Example output that I get:
To recap, I need a way to get the result of the second example above, but not pretty printed. Instead, this:
<p>hello</p><span>world</span>