Re: [NTG-context] Get rid of LuaTeX warning on duplicate destination identifier

2013-08-31 Thread Aditya Mahajan

On Thu, 29 Aug 2013, Hans Hagen wrote:


On 8/29/2013 10:15 AM, Hans Hagen wrote:

On 8/29/2013 4:06 AM, Aditya Mahajan wrote:

Hi,

I am trying to pick up on an old thread of creating an overview page
[1]. Basically, the idea is to create an overvew slide at the end of a
presentation that shows the first page of different sections in a
presentation. Based on Wolfgang's answer in that old thread, I save the
relevant pages in a box, and then display them again at the end of the
presentation.

This works, except that I get a series of warnings:

l.86 \placeoverviewpage
  LuaTeX warning (ext4): destination with the same
identifier (name{aut:10}) has been already used, duplicate ignored

How do I get rid of these?


Tricky. The problem is that you flush a box (copy) so the message comes
from deep inside the backend (for good reason) and so we cannot
intercept it as hey user, you use the same dest twice simply because
it's a copy and not re-rendered.

There are two solutions:

(1) strip the box before copying (i can make a helper for that - later
as i have to go now): destinations, references, writes-to-lists etc

(2) you copy the old file before processing and use that one

  \def\placeoverviewpage
{\startstandardmakeup[\c!align=\v!middle]
\getfiguredimensions[temp.pdf]%

\dorecurse{\noffigurepages}{\externalfigure[temp.pdf][\c!page=##1,\c!width=\overviewwidth]\relax\space}

 \stopstandardmakeup}


I am afraid that I cannot create a small example illustrating this
warning, so I am attaching the complete test file.

[1]: http://thread.gmane.org/gmane.comp.tex.context/72556/focus=72571


[2] It has always been a wish of mine to have it as option in the engine
(pdfetex) but in luatex it's not that hard to do it myself now (i
already have a stripper so I can extend that one a bit).


attached ... you can run the module for an example (you need a new beta)


Thanks, works nicely.

I'll add the configuration commands, and release it as a module.

Aditya
___
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
___


Re: [NTG-context] Get rid of LuaTeX warning on duplicate destination identifier

2013-08-31 Thread Hans Hagen

On 8/31/2013 5:36 PM, Aditya Mahajan wrote:

On Thu, 29 Aug 2013, Hans Hagen wrote:


On 8/29/2013 10:15 AM, Hans Hagen wrote:

On 8/29/2013 4:06 AM, Aditya Mahajan wrote:

Hi,

I am trying to pick up on an old thread of creating an overview page
[1]. Basically, the idea is to create an overvew slide at the end of a
presentation that shows the first page of different sections in a
presentation. Based on Wolfgang's answer in that old thread, I save the
relevant pages in a box, and then display them again at the end of the
presentation.

This works, except that I get a series of warnings:

l.86 \placeoverviewpage
  LuaTeX warning (ext4): destination with the same
identifier (name{aut:10}) has been already used, duplicate ignored

How do I get rid of these?


Tricky. The problem is that you flush a box (copy) so the message comes
from deep inside the backend (for good reason) and so we cannot
intercept it as hey user, you use the same dest twice simply because
it's a copy and not re-rendered.

There are two solutions:

(1) strip the box before copying (i can make a helper for that - later
as i have to go now): destinations, references, writes-to-lists etc

(2) you copy the old file before processing and use that one

  \def\placeoverviewpage
{\startstandardmakeup[\c!align=\v!middle]
\getfiguredimensions[temp.pdf]%

\dorecurse{\noffigurepages}{\externalfigure[temp.pdf][\c!page=##1,\c!width=\overviewwidth]\relax\space}


 \stopstandardmakeup}


I am afraid that I cannot create a small example illustrating this
warning, so I am attaching the complete test file.

[1]: http://thread.gmane.org/gmane.comp.tex.context/72556/focus=72571


[2] It has always been a wish of mine to have it as option in the engine
(pdfetex) but in luatex it's not that hard to do it myself now (i
already have a stripper so I can extend that one a bit).


attached ... you can run the module for an example (you need a new beta)


Thanks, works nicely.

I'll add the configuration commands, and release it as a module.


ok; i already did the commandhandler so it should be easy to extend .. 
no problem adding it to the standard distribution (i'll add some 
comments then about the 'issue' of duplication) as it can probably serve 
some more purposes (and be extended)


Hans


--

-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
 | www.pragma-pod.nl
-
___
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
___


Re: [NTG-context] Get rid of LuaTeX warning on duplicate destination identifier

2013-08-29 Thread Hans Hagen

On 8/29/2013 4:06 AM, Aditya Mahajan wrote:

Hi,

I am trying to pick up on an old thread of creating an overview page
[1]. Basically, the idea is to create an overvew slide at the end of a
presentation that shows the first page of different sections in a
presentation. Based on Wolfgang's answer in that old thread, I save the
relevant pages in a box, and then display them again at the end of the
presentation.

This works, except that I get a series of warnings:

l.86 \placeoverviewpage
  LuaTeX warning (ext4): destination with the same
identifier (name{aut:10}) has been already used, duplicate ignored

How do I get rid of these?


Tricky. The problem is that you flush a box (copy) so the message comes 
from deep inside the backend (for good reason) and so we cannot 
intercept it as hey user, you use the same dest twice simply because 
it's a copy and not re-rendered.


There are two solutions:

(1) strip the box before copying (i can make a helper for that - later 
as i have to go now): destinations, references, writes-to-lists etc


(2) you copy the old file before processing and use that one

 \def\placeoverviewpage
   {\startstandardmakeup[\c!align=\v!middle]
   \getfiguredimensions[temp.pdf]%

\dorecurse{\noffigurepages}{\externalfigure[temp.pdf][\c!page=##1,\c!width=\overviewwidth]\relax\space}
\stopstandardmakeup}


I am afraid that I cannot create a small example illustrating this
warning, so I am attaching the complete test file.

[1]: http://thread.gmane.org/gmane.comp.tex.context/72556/focus=72571


[2] It has always been a wish of mine to have it as option in the engine 
(pdfetex) but in luatex it's not that hard to do it myself now (i 
already have a stripper so I can extend that one a bit).


Hans

-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
 | www.pragma-pod.nl
-
___
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
___


Re: [NTG-context] Get rid of LuaTeX warning on duplicate destination identifier

2013-08-29 Thread Hans Hagen

On 8/29/2013 10:15 AM, Hans Hagen wrote:

On 8/29/2013 4:06 AM, Aditya Mahajan wrote:

Hi,

I am trying to pick up on an old thread of creating an overview page
[1]. Basically, the idea is to create an overvew slide at the end of a
presentation that shows the first page of different sections in a
presentation. Based on Wolfgang's answer in that old thread, I save the
relevant pages in a box, and then display them again at the end of the
presentation.

This works, except that I get a series of warnings:

l.86 \placeoverviewpage
  LuaTeX warning (ext4): destination with the same
identifier (name{aut:10}) has been already used, duplicate ignored

How do I get rid of these?


Tricky. The problem is that you flush a box (copy) so the message comes
from deep inside the backend (for good reason) and so we cannot
intercept it as hey user, you use the same dest twice simply because
it's a copy and not re-rendered.

There are two solutions:

(1) strip the box before copying (i can make a helper for that - later
as i have to go now): destinations, references, writes-to-lists etc

(2) you copy the old file before processing and use that one

  \def\placeoverviewpage
{\startstandardmakeup[\c!align=\v!middle]
\getfiguredimensions[temp.pdf]%

\dorecurse{\noffigurepages}{\externalfigure[temp.pdf][\c!page=##1,\c!width=\overviewwidth]\relax\space}

 \stopstandardmakeup}


I am afraid that I cannot create a small example illustrating this
warning, so I am attaching the complete test file.

[1]: http://thread.gmane.org/gmane.comp.tex.context/72556/focus=72571


[2] It has always been a wish of mine to have it as option in the engine
(pdfetex) but in luatex it's not that hard to do it myself now (i
already have a stripper so I can extend that one a bit).


attached ... you can run the module for an example (you need a new beta)


-
  Hans Hagen | PRAGMA ADE
  Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com
 | www.pragma-pod.nl
-
% experimental, based on an idea by Aditya, messed up by Hans.

\unprotect

\installnamespace{overview}

\installsimplecommandhandler \overview {overview}

\initializeboxstack{\overview}

\let\overviewsection\empty

\let\overview_previous_headnumber\!!minusone
\let\overview_current_headnumber \!!zerocount

\unexpanded\def\overview_save_page#1%
  {\ifx\overviewsection\empty
 \page_shipouts_normal{#1}%
   \else
 
\xdef\overview_current_headnumber{\somenamedheadnumber\overviewsection\c!current}%
 \setbox\nextbox\hbox{#1}%
 \ifx\overview_previous_headnumber\overview_current_headnumber \else
   \glet\overview_previous_headnumber\overview_current_headnumber
   \setbox\scratchbox\copy\nextbox
   \cleanupbox\scratchbox % remove nodes that should not be seen in the 
backend twice
   \writestatus{overview}{saving first page of 
\overviewsection\space\overview_current_headnumber}%
   \savebox{\overview}{\overview_current_headnumber}{\box\scratchbox}%
 \fi
 \page_shipouts_normal{\box\nextbox}%
   \fi}

\installshipoutmethod{overview}\overview_save_page

\definelistalternative
  [overview]
  [\c!renderingsetup=\??listrenderings:overview]

\setuplistalternative
  [overview]
  [\c!before=\dontleavehmode,
   \c!after=\space,
   \c!width=.4\textwidth] % or \listparameter\c!width

\startsetups[\??listrenderings:overview]
\doifboxelse{\overview}{\currentlistentrynumber}
   {\listalternativeparameter\c!before
\startcurrentlistentrywrapper
  \scale
[\c!width=\listalternativeparameter\c!width]
{\foundbox{\overview}{\currentlistentrynumber}}%
\stopcurrentlistentrywrapper
\listalternativeparameter\c!after}
   {}%
\stopsetups

\unexpanded\def\placeoverviewpage
  {\startstandardmakeup[\c!align=\v!middle]
  \placelist
[\overviewsection]
[\c!criterium=\v!all,
 \c!alternative=overview]
   \stopstandardmakeup}

\appendtoks
\ifx\overviewsection\empty
  \edef\overviewsection{\overviewparameter\c!level}%
  \ifx\overviewsection\empty
\setuppaper[\c!method=\v!normal]%
  \else
\setuppaper[\c!method=overview]%
  \fi
   \else
 \writestatus{overview}{level is already set to \overviewsection, ignoring 
\overviewparameter\c!level}%
   \fi
\to \everysetupoverview

\protect

\continueifinputfile{m-pageview.mkiv}

\usemodule[pageview]

\setupinteraction
  [state=start]

\setupoverview
  [level=section]

\setuppapersize
  [S4]

\starttext

\dorecurse{4}
  {\startsection[title={Section #1}]
  \dorecurse{3}{\input knuth \par}
\stopsection
  \page}

\placeoverviewpage

\stoptext