This is the mail archive of the docbook@lists.oasis-open.org mailing list for the DocBook project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [docbook] <informalexample> to contain one or multiple <programlisting>element(s) for a multi-line source code block?


Hi Taro,

the docbook programlisting tag preserves whitespaces. From TDG (http://www.docbook.org/tdg/en/html/programlisting.html):

Processing Expectations

Formatted as a displayed block. This element is displayed “verbatim”; whitespace and linebreaks within this element are significant. ProgramListings are usually displayed in a fixed width font.

Patrick


Taro Ikai schrieb:

http://www.docbook.org/tdg/en/html/informalexample.html


cites an example of <informalexample><programlisting> block that contains
several lines of source code block in a single <programlisting> element:

<informalexample>
<programlisting>
sub print_content_model {
   my($self) = shift;
   local($_) = shift;
   local(*FILE) = shift;

   my(@cm) = $self->format_content_model2($_);
   foreach $_ (@cm) {
       print FILE $self->make_links($_, 1, 1), "\n";
   }
}
</programlisting>
</informalexample>

My limited understanding of XML is that it does not pay attention to
the white spaces or new lines within CDATA sections. The CYGWIN
distribution of Tidy, for example, does not not preserve
the new lines within CDATA.

Am I better off to use something like the following?

<informalexample>
<programlisting>sub print_content_model {</programlisting>
<programlisting>&nbsp;&nbsp;my($self) = shift;</programlisting>
<programlisting>&nbsp;&nbsp;local($_) = shift;</programlisting>
<programlisting>&nbsp;&nbsp;local(*FILE) = shift;</programlisting>
<programlisting>&nbsp;&nbsp; my(@cm) = $self->format_content_model2($_);</programlisting>
<programlisting/>
<programlisting>&nbsp;&nbsp;foreach $_ (@cm) {</programlisting>
<programlisting>&nbsp;&nbsp; print FILE $self->make_links($_, 1, 1), "\n";</programlisting>
<programlisting>&nbsp;&nbsp;}</programlisting>
<programlisting>}</programlisting>
</informalexample>


Taro Ikai


---------------------------------------------------------------------
To unsubscribe, e-mail: docbook-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: docbook-help@lists.oasis-open.org


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]