ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* requesting multipass
@ 2010-04-27 15:04 Philipp Gesang
  2010-04-27 18:02 ` Hans Hagen
  0 siblings, 1 reply; 5+ messages in thread
From: Philipp Gesang @ 2010-04-27 15:04 UTC (permalink / raw)
  To: ntg-context


[-- Attachment #1.1: Type: text/plain, Size: 432 bytes --]

Hi all,


how do I trigger another pass?

Using md5 and io I want to save data to a helper file and reuse it in a
second pass (like e.g. mtx-context.lua) or update the file if
appropriate. But I couldn't quite figure out how to request another pass
from the lua end.

Thanks for any help,


Philipp


-- 
()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

[-- Attachment #1.2: Type: application/pgp-signature, Size: 198 bytes --]

[-- Attachment #2: Type: text/plain, Size: 486 bytes --]

___________________________________________________________________________________
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] 5+ messages in thread

* Re: requesting multipass
  2010-04-27 15:04 requesting multipass Philipp Gesang
@ 2010-04-27 18:02 ` Hans Hagen
  2010-04-27 21:09   ` Philipp Gesang
  0 siblings, 1 reply; 5+ messages in thread
From: Hans Hagen @ 2010-04-27 18:02 UTC (permalink / raw)
  To: mailing list for ConTeXt users; +Cc: Philipp Gesang

On 27-4-2010 5:04, Philipp Gesang wrote:
> Hi all,
>
>
> how do I trigger another pass?
>
> Using md5 and io I want to save data to a helper file and reuse it in a
> second pass (like e.g. mtx-context.lua) or update the file if
> appropriate. But I couldn't quite figure out how to request another pass
> from the lua end.

there's

jobfiles.run(
	"filename-to-be-checked",
	"command-to-be-executed-if-changed"
)


-----------------------------------------------------------------
                                           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
___________________________________________________________________________________


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

* Re: requesting multipass
  2010-04-27 18:02 ` Hans Hagen
@ 2010-04-27 21:09   ` Philipp Gesang
  2010-04-27 21:47     ` Hans Hagen
  0 siblings, 1 reply; 5+ messages in thread
From: Philipp Gesang @ 2010-04-27 21:09 UTC (permalink / raw)
  To: mailing list for ConTeXt users


[-- Attachment #1.1: Type: text/plain, Size: 2184 bytes --]

On 2010-04-27 <20:02:27>, Hans Hagen wrote:
> On 27-4-2010 5:04, Philipp Gesang wrote:
> >Hi all,
> >
> >
> >how do I trigger another pass?
> >
> >Using md5 and io I want to save data to a helper file and reuse it in a
> >second pass (like e.g. mtx-context.lua) or update the file if
> >appropriate. But I couldn't quite figure out how to request another pass
> >from the lua end.
> 
> there's
> 
> jobfiles.run(
> 	"filename-to-be-checked",
> 	"command-to-be-executed-if-changed"
> )

Good evening, Hans!


Let me clarify my intention a bit: jobfiles.run calls "context" on the
argument list, but that is not what I need.

My problem is that I generate stuff during the tex run and want to
collect it in a table that is saved to a file at the end of the run.
This data is hashed at the beginning of the document and if the hash
does not match the end-run hash _or_ the file doesn't exist in the first
place, then I'd like to run another independent pass.

(I guess I could use jobfiles.run to process \jobname at the very end of
the document but would have to handle recursion somehow.)


Philipp

> 
> 
> -----------------------------------------------------------------
>                                           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
> ___________________________________________________________________________________

-- 
()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

[-- Attachment #1.2: Type: application/pgp-signature, Size: 198 bytes --]

[-- Attachment #2: Type: text/plain, Size: 486 bytes --]

___________________________________________________________________________________
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] 5+ messages in thread

* Re: requesting multipass
  2010-04-27 21:09   ` Philipp Gesang
@ 2010-04-27 21:47     ` Hans Hagen
  2010-04-29 20:53       ` Philipp Gesang
  0 siblings, 1 reply; 5+ messages in thread
From: Hans Hagen @ 2010-04-27 21:47 UTC (permalink / raw)
  To: mailing list for ConTeXt users; +Cc: Philipp Gesang

On 27-4-2010 11:09, Philipp Gesang wrote:
> On 2010-04-27<20:02:27>, Hans Hagen wrote:
>> On 27-4-2010 5:04, Philipp Gesang wrote:
>>> Hi all,
>>>
>>>
>>> how do I trigger another pass?
>>>
>>> Using md5 and io I want to save data to a helper file and reuse it in a
>>> second pass (like e.g. mtx-context.lua) or update the file if
>>> appropriate. But I couldn't quite figure out how to request another pass
>> >from the lua end.
>>
>> there's
>>
>> jobfiles.run(
>> 	"filename-to-be-checked",
>> 	"command-to-be-executed-if-changed"
>> )
>
> Good evening, Hans!
>
>
> Let me clarify my intention a bit: jobfiles.run calls "context" on the
> argument list, but that is not what I need.
>
> My problem is that I generate stuff during the tex run and want to
> collect it in a table that is saved to a file at the end of the run.
> This data is hashed at the beginning of the document and if the hash
> does not match the end-run hash _or_ the file doesn't exist in the first
> place, then I'd like to run another independent pass.
>
> (I guess I could use jobfiles.run to process \jobname at the very end of
> the document but would have to handle recursion somehow.)

so, as you save your data in a file, just after saving the table, hash 
that file:

\starttext

test

\startluacode
     jobvariables.tobesaved.MyPersonalChecksum = file.checksum("MyName") 
or "no checksum"
\stopluacode

\stoptext

the context runner will take care of extra runs then.

(I'll think about a more robust user space for such status variables but 
as long as you use UpperCased names you quite safe.)


-----------------------------------------------------------------
                                           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
___________________________________________________________________________________


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

* Re: requesting multipass
  2010-04-27 21:47     ` Hans Hagen
@ 2010-04-29 20:53       ` Philipp Gesang
  0 siblings, 0 replies; 5+ messages in thread
From: Philipp Gesang @ 2010-04-29 20:53 UTC (permalink / raw)
  To: mailing list for ConTeXt users


[-- Attachment #1.1: Type: text/plain, Size: 1800 bytes --]

On 2010-04-27 <23:47:03>, Hans Hagen wrote:
> On 27-4-2010 11:09, Philipp Gesang wrote:
> >On 2010-04-27<20:02:27>, Hans Hagen wrote:
> >>On 27-4-2010 5:04, Philipp Gesang wrote:
> >>>Hi all,
> >>>
> >>>
> >>>how do I trigger another pass?
> \starttext
> 
> test
> 
> \startluacode
>     jobvariables.tobesaved.MyPersonalChecksum =
> file.checksum("MyName") or "no checksum"
> \stopluacode
> 
> \stoptext
> 
> the context runner will take care of extra runs then.
> 
> (I'll think about a more robust user space for such status variables
> but as long as you use UpperCased names you quite safe.)

Nice, following to your advice I just appended an adapted macro to
\everybye and it works great.

Many, many thanks!


Philipp


> -----------------------------------------------------------------
>                                           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
> ___________________________________________________________________________________

-- 
()  ascii ribbon campaign - against html e-mail
/\  www.asciiribbon.org   - against proprietary attachments

[-- Attachment #1.2: Type: application/pgp-signature, Size: 198 bytes --]

[-- Attachment #2: Type: text/plain, Size: 486 bytes --]

___________________________________________________________________________________
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] 5+ messages in thread

end of thread, other threads:[~2010-04-29 20:53 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-04-27 15:04 requesting multipass Philipp Gesang
2010-04-27 18:02 ` Hans Hagen
2010-04-27 21:09   ` Philipp Gesang
2010-04-27 21:47     ` Hans Hagen
2010-04-29 20:53       ` Philipp Gesang

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).