List Info

Thread: DocBook, list indentation




DocBook, list indentation
user name
2006-03-29 18:28:21
Hi Andrea,
The technique in FO to format a paragraph like you want is
to use 
an fo:block, set a margin-left attribute to the indent you
want 
for paragraph text, and then set a text-indent attribute
with a 
value that is the negative of the margin-left value.

<fo:block margin-left="1cm"
text-indent="-1cm">

The text-indent property applies only to the first line. 
That 
will outdent the first line back to the starting point,
leaving 
all other lines indented.  To provide space between the
label and 
the first text, use an fo:leader of a specified length.  You

would not have to specify a label width, you would just get
the 
label and the leader taking up as much space as they need.

That said, applying this to orderedlist is pretty much a
rewrite 
of those templates.  They currently use an fo:list-block,
with a 
fo:list-item-label for the label and fo:list-item-body for
the 
para.  The above method describes an ordinary fo:block with
an 
inline label.   I don't know of a way to get that kind of
format 
using the existing list-block templates.

Bob Stayton
Sagehill Enterprises
DocBook Consulting
bobssagehill.net


----- Original Message ----- 
From: "Andrea Mattioli" <aldarisjumpy.it>
To: "Bob Stayton" <bobssagehill.net>
Cc: <docbook-appslists.oasis-open.org>
Sent: Tuesday, March 28, 2006 6:05 AM
Subject: Re: [docbook-apps] DocBook, list indentation


> Hi,
> actually I was trying and posing two different
questions.
>
> 1) The first one (to which you answered in 
> http://lists.oasis-open.org/archives/docbo
ok-apps/200603/msg00225.html) 
> referred to the possibility of manually (or
automatically) 
> specifying the width of the label and the distance by
which the 
> label and the *first* line of text in an item (of an
enumerated 
> list) are indented to the right.  This allows to avoid 
> overlapping between long labels and the first line of
an item 
> (FOP) or having long labels compressed in a too short
space 
> (XEP).
> (... and I used your suggestion to use the dbfo
label-width 
> processing instruction to solve this problem)
>
>
------------------------------------------------------------
---------
>
> 2) The second one refers to the possibility of
controlling the 
> indentation of any other line of an item in an
(enumerated) 
> list.
> For instance, if the label of an enumerated list is
extremely 
> long the first line should start just after the label
so that 
> there isn't any overlap between the text and the label
but, at 
> the same time, I could try and indent any other line of
the 
> item (and the other items) so that the text is more
readable 
> (i.e. by making the left margin "more
left", just under the 
> label).
>
> Example
> Given an item in an enumerated list:
>
> <<LONG LABEL>> text text text text text  
[right margin]
> ________________[ X ]
> __[Y]
>
>
> if <<TEXT>> is longer than the page width,
it is automatically 
> indented at point X.  I would like to move point x
(after the 
> first line) to an arbitrary point (e.g. Y), for example
under 
> the label.
>
> In this way:
> - By specifying the label width I can ensure no overlap
between 
> the label and the text on the first line (question 1).
> - By specifying an arbitrary indentation point for the
second 
> line, I can ensure that the text of the item is more
readable 
> (since my lists are deeply nested and with long
labels).
>
> Best regards,
>         Andrea.
>
>
> At 01.45 28/03/2006, you wrote:
>>I thought I answered this question earlier in this
other 
>>response:
>>
>>http://lists.oasis-open.org/archives/docbo
ok-apps/200603/msg00225.html
>>
>>If that didn't answer your question, then I'm
still not 
>>understanding the question.
>>
>>Bob Stayton
>>Sagehill Enterprises
>>DocBook Consulting
>>bobssagehill.net
>>
>>
>>----- Original Message ----- From: "Andrea
Mattioli" 
>><aldarisjumpy.it>
>>To: <docbook-appslists.oasis-open.org>
>>Sent: Friday, March 24, 2006 8:14 AM
>>Subject: [docbook-apps] DocBook, list indentation
>>
>>
>>>Hi,
>>>is there the possibility to specify an attribute
(parameter, 
>>>customization,...) to indent the body of a list
?
>>>
>>>Example: using nested (ordered) lists, instead
of obtaining 
>>>this indentation
>>>
>>>...
>>>1.1.1.2.3. listitem1 first paragraph
>>>-------------- listitem1 second paragraph
>>>-------------- listitem1 third paragraph
>>>-------------- 1.1.1.2.3.1  listitem1 nested
list first 
>>>paragraph
>>>------------------------------- listitem1 nested
list second 
>>>paragraph
>>>------------------------------- listitem1 nested
list third 
>>>paragraph
>>>...
>>>
>>>to get this result?
>>>
>>>...
>>>1.1.1.2.3. listitem1 first paragraph
>>>---listitem1 second paragraph
>>>---listitem1 third paragraph
>>>---1.1.1.2.3.1  listitem1 nested list first
paragraph
>>>------ listitem1 nested list second paragraph
>>>------ listitem1 nested list third paragraph
>>>...
>>>
>>>Thanks,
>>>Andrea.
>>----------------------------------------------------
-----------------
>>To unsubscribe, e-mail: 
>>docbook-apps-unsubscribelists.oasis-open.org
>>For additional commands, e-mail: 
>>docbook-apps-helplists.oasis-open.org
>
>
> 



------------------------------------------------------------
---------
To unsubscribe, e-mail: docbook-apps-unsubscribelists.oasis-open.org
For additional commands, e-mail: docbook-apps-helplists.oasis-open.org

[1]

about | contact  Other archives ( Real Estate discussion Medical topics )