ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* Justifying last line of paragraph
@ 2010-09-25 18:03 Elias Oltmanns
  2010-09-26  7:55 ` Taco Hoekwater
  0 siblings, 1 reply; 4+ messages in thread
From: Elias Oltmanns @ 2010-09-25 18:03 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi there,

what I'm trying to achieve is splitting a paragraph into two -- from
TeX's point of view -- that still look like one single paragraph. To
this end, I have to make sure that the last line of the first paragraph
is justified just like all the surrounding lines, so, in the pdf output
one couldn't tell that this is actually the end of a paragraph. so, How
can I force the last line to be justified as well?

In order to see the reason for my question, consider the following
example:

\setupwhitespace[big]
\setupalign[line]
\starttext
\dorecurse{3}{\input knuth\par}
\placefigure[right][fig:test1]{Basically just a bit of empty space.}
{\framed[width=0.5\textwidth,height=0.4\textheight,offset=none]{Test}}
{\input tufte\par}
\stoptext

The first couple of lines of the paragraph beginning on page two should
really go on the previous page. Since the hang mechanism of \placefigure
doesn't work due to the page break, I'd like to split this paragraph
into two logical entities, so TeX can put the first on the first page
and treat the second as a separate paragraph flowing around the picture.
However, the reader should not be aware of this split.

Any help much appreciated,

Elias
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Justifying last line of paragraph
  2010-09-25 18:03 Justifying last line of paragraph Elias Oltmanns
@ 2010-09-26  7:55 ` Taco Hoekwater
  2010-09-26 16:01   ` Elias Oltmanns
  0 siblings, 1 reply; 4+ messages in thread
From: Taco Hoekwater @ 2010-09-26  7:55 UTC (permalink / raw)
  To: mailing list for ConTeXt users

On 09/25/2010 08:03 PM, Elias Oltmanns wrote:
>
> The first couple of lines of the paragraph beginning on page two should
> really go on the previous page. Since the hang mechanism of \placefigure
> doesn't work due to the page break, I'd like to split this paragraph
> into two logical entities, so TeX can put the first on the first page
> and treat the second as a separate paragraph flowing around the picture.
> However, the reader should not be aware of this split.
>
> Any help much appreciated,

I don't know of any automatic solution to this problem (except _perhaps_
columnsets could help) but the simplest way to split a paragraph into
two paragraphs while still looking like one is by inserting a macro
like this at an existing break point:

\def\splitpar
  {\bgroup
   \parfillskip\zeropoint
   \par
   \aftergroup \parskip
   \aftergroup \zeropoint
   \aftergroup \noindentation
   \egroup }

\splitpar will work anywhere in a paragraph, but you only get a
visually pleasing result when it is applied at, or close to, a break
that would have been chosen anyway.

Best wishes,
Taco
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Justifying last line of paragraph
  2010-09-26  7:55 ` Taco Hoekwater
@ 2010-09-26 16:01   ` Elias Oltmanns
  2010-09-27  7:18     ` Taco Hoekwater
  0 siblings, 1 reply; 4+ messages in thread
From: Elias Oltmanns @ 2010-09-26 16:01 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Taco Hoekwater <taco@elvenkind.com> wrote:
> On 09/25/2010 08:03 PM, Elias Oltmanns wrote:
>>
>
>> The first couple of lines of the paragraph beginning on page two should
>> really go on the previous page. Since the hang mechanism of \placefigure
>> doesn't work due to the page break, I'd like to split this paragraph
>> into two logical entities, so TeX can put the first on the first page
>> and treat the second as a separate paragraph flowing around the picture.
>> However, the reader should not be aware of this split.
>>
>> Any help much appreciated,
>
> I don't know of any automatic solution to this problem (except _perhaps_
> columnsets could help) but the simplest way to split a paragraph into
> two paragraphs while still looking like one is by inserting a macro
> like this at an existing break point:

Thanks Taco, this appears to be exactly what I was looking for. One more
thing though: is there a simple way to arrange for all arguments
provided to \splitpar to be passed on to \placefigure in a definition
like this:

>
> \def\splitpar
>  {\bgroup
>   \parfillskip\zeropoint
>   \par
    \aftergroup \placefigure    % arguments to \splitpar should be passed on
>   \aftergroup \parskip
>   \aftergroup \zeropoint
>   \aftergroup \noindentation
>   \egroup }

Thanks for your help,

Elias
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Justifying last line of paragraph
  2010-09-26 16:01   ` Elias Oltmanns
@ 2010-09-27  7:18     ` Taco Hoekwater
  0 siblings, 0 replies; 4+ messages in thread
From: Taco Hoekwater @ 2010-09-27  7:18 UTC (permalink / raw)
  To: mailing list for ConTeXt users

On 09/26/2010 06:01 PM, Elias Oltmanns wrote:
> Taco Hoekwater<taco@elvenkind.com>  wrote:
>> On 09/25/2010 08:03 PM, Elias Oltmanns wrote:
>>>
>>
>>> The first couple of lines of the paragraph beginning on page two should
>>> really go on the previous page. Since the hang mechanism of \placefigure
>>> doesn't work due to the page break, I'd like to split this paragraph
>>> into two logical entities, so TeX can put the first on the first page
>>> and treat the second as a separate paragraph flowing around the picture.
>>> However, the reader should not be aware of this split.
>>>
>>> Any help much appreciated,
>>
>> I don't know of any automatic solution to this problem (except _perhaps_
>> columnsets could help) but the simplest way to split a paragraph into
>> two paragraphs while still looking like one is by inserting a macro
>> like this at an existing break point:
>
> Thanks Taco, this appears to be exactly what I was looking for. One more
> thing though: is there a simple way to arrange for all arguments
> provided to \splitpar to be passed on to \placefigure in a definition
> like this:

Something like this should work:

    \def\splitpar#1%
      {\bgroup
      ....
       \gdef\splitparcommands{\placefigure#1\parskip...}%
       \aftergroup \splitparcommands
       \egroup}

The definition is all about \aftergroup: each \aftergroup adds exactly
one *token* to the list of things to run after the group ends. Passing
arguments that way is tedious and very error prone (you would need
something like \adtergroup [ \aftergroup l \aftergroup e \aftergroup f
... ), so defining a global macro and passing that is better.

I did not do this in the earlier version because if you can get around
using \gdef, it is usually wise to do so. Sorry, I have no idea whether
it is possible to do this stuff with a nicer, more ConTeXt interface.

Best wishes,
Taco









___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://tex.aanhet.net
archive  : http://foundry.supelec.fr/projects/contextrev/
wiki     : http://contextgarden.net
___________________________________________________________________________________


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-09-27  7:18 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-25 18:03 Justifying last line of paragraph Elias Oltmanns
2010-09-26  7:55 ` Taco Hoekwater
2010-09-26 16:01   ` Elias Oltmanns
2010-09-27  7:18     ` Taco Hoekwater

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).