[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [docbook-apps] How to remove extra newline in programlisting
On Wed, 13 Oct 2010, Jason Gilmore wrote: +-- | I am however running into a strange issue involving <programlisting> | elements in which the enclosed text is delimited by <![CDATA[...]]>. | When I convert from Docbook to PDF using oXygen (using the Saxon 6.5 | transformer), my program listing's include two extra newlines at the | top and one at the bottom when the <programlisting>'s look like this: +-- Here's how I format code snippets (with a little context to show the indentation): <para> This code destroys Western Snivelization: </para> <programlisting role='outFile:hardloop.bas' > 10 PRINT "BASIC IS OLDER THAN DIRT" 20 GOTO 10 30 END </programlisting> <para> And now... </para> We're especially sensitive to how <programlisting> works because we use this element for literate programming: the code snippets are the ones that get executed. Remarks on the above example: a. Whitespace, including newlines, is always allowed before the closing '>' of a tag. b. We use the 'role' attribute, which is reserved for application use, to mark the source file to which each fragment is written. The lines written to file "hardloop.bas" look like this: ================================================================ 10 PRINT "BASIC IS OLDER THAN DIRT" 20 GOTO 10 30 END ---------------------------------------------------------------- c. Note that the first code line is misaligned relative to the following line because of the '>'. This is annoying only while you're editing the source; it looks correct in HTML and PDF output. With CDATA it'd look like this: <programlisting> ><![CDATA[ 10 PRINT "BASIC IS OLDER THAN DIRT" 20 GOTO 10 30 END ]]></programlisting> Here's a boatload of literate programming examples and some pointers to the why and how in our local practice: http://www.nmt.edu/~shipman/soft/litprog/ Happy happy joy joy, John Shipman (john@nmt.edu), Applications Specialist, NM Tech Computer Center, Speare 119, Socorro, NM 87801, (575) 835-5735, http://www.nmt.edu/~john ``Let's go outside and commiserate with nature.'' --Dave Farber
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]