documents inside documents
Dear list, I need for a document explaining some ConTeXt features, to be able to include a document inside (a page that includes the feature). I know I can create another document and then insert the pages, but it would be much easier for me to be able to have the code inside the main the document. Here is a sample of what I want to include scaled (the way an image is included) within another document: \mainlanguage[en] \setuplanguage[en][patterns={en,agr}] \definepapersize[mine][width=6in,height=2in] \setuppapersize[mine] \usemodule[simplefonts] \setmainfont[Theano Didot] \definelinenote[contxt] \setupnote[contxt][paragraph=yes, inbetween=\hskip1.5em] \setupnotation[contxt][numbercommand=,alternative=serried,distance=1em,compress=yes,compressseparator=] \starttext \startlinenumbering οὐκ οἶσθ᾽\contxt{οἶσθ᾽: οἶσθα, 2nd sg., οἶσδα} ὅτι πολλῶν ἐτῶν\contxt{πολλῶν ἐτῶν: for…; gen. time within} Ἀγάθων ἐνθάδε οὐκ ἐπιδεδήμηκεν\contxt{ἐπιδεδήμηκεν: pf. ἐπιδήμέω}, ἀφ᾽ οὗ\contxt{ἀφ᾽ οὗ: since; “from which (time)”} δ᾽ ἐγὼ Σωκράτει συνδιατρίβω\contxt{συνδιατρίβω: I have been spending; pres. but pf. progressive in translation} καὶ ἐπιμελὲς πεποίημαι\contxt{ἐπιμελὲς πεποίημαι: I have made it my business; “have made it my care,” pf.} \stoplinenumbering \stoptext Is there a standard way to do it with ConTeXt? Many thanks for your help, Pablo -- http://www.ousia.tk
Am 25.06.2013 um 21:31 schrieb Pablo Rodríguez
Dear list,
I need for a document explaining some ConTeXt features, to be able to include a document inside (a page that includes the feature).
I know I can create another document and then insert the pages, but it would be much easier for me to be able to have the code inside the main the document.
Here is a sample of what I want to include scaled (the way an image is included) within another document:
\mainlanguage[en] \setuplanguage[en][patterns={en,agr}] \definepapersize[mine][width=6in,height=2in] \setuppapersize[mine] \usemodule[simplefonts] \setmainfont[Theano Didot] \definelinenote[contxt] \setupnote[contxt][paragraph=yes, inbetween=\hskip1.5em] \setupnotation[contxt][numbercommand=,alternative=serried,distance=1em,compress=yes,compressseparator=] \starttext
\startlinenumbering οὐκ οἶσθ᾽\contxt{οἶσθ᾽: οἶσθα, 2nd sg., οἶσδα} ὅτι πολλῶν ἐτῶν\contxt{πολλῶν ἐτῶν: for…; gen. time within} Ἀγάθων ἐνθάδε οὐκ ἐπιδεδήμηκεν\contxt{ἐπιδεδήμηκεν: pf. ἐπιδήμέω}, ἀφ᾽ οὗ\contxt{ἀφ᾽ οὗ: since; “from which (time)”} δ᾽ ἐγὼ Σωκράτει συνδιατρίβω\contxt{συνδιατρίβω: I have been spending; pres. but pf. progressive in translation} καὶ ἐπιμελὲς πεποίημαι\contxt{ἐπιμελὲς πεποίημαι: I have made it my business; “have made it my care,” pf.} \stoplinenumbering
\stoptext
Is there a standard way to do it with ConTeXt?
http://www.ntg.nl/pipermail/ntg-context/2013/072963.html Wolfgang
On 25/06/13 21:55, Wolfgang Schuster wrote:
Am 25.06.2013 um 21:31 schrieb Pablo Rodríguez
: Dear list,
I need for a document explaining some ConTeXt features, to be able to include a document inside (a page that includes the feature).
I know I can create another document and then insert the pages, but it would be much easier for me to be able to have the code inside the main the document.
Is there a standard way to do it with ConTeXt?
Many thanks for your fast reply, Wolfgang. I'm afraid I cannot get it working with the sample file I provided. I do need to be able to get a complete document, not a TEXpage. Is that possible? Many thanks for your help, Pablo -- http://www.ousia.tk
Am 25.06.2013 um 22:25 schrieb Pablo Rodríguez
On 25/06/13 21:55, Wolfgang Schuster wrote:
Am 25.06.2013 um 21:31 schrieb Pablo Rodríguez
: Dear list,
I need for a document explaining some ConTeXt features, to be able to include a document inside (a page that includes the feature).
I know I can create another document and then insert the pages, but it would be much easier for me to be able to have the code inside the main the document.
Is there a standard way to do it with ConTeXt?
Many thanks for your fast reply, Wolfgang.
I'm afraid I cannot get it working with the sample file I provided. I do need to be able to get a complete document, not a TEXpage.
Is that possible?
\startbuffer[extract:before] \mainlanguage[en] \setuplanguage[en][patterns={en,agr}] \definepapersize[mine][width=6in,height=2in] \setuppapersize[mine] \usemodule[simplefonts] \setmainfont[Theano Didot] \definelinenote[contxt] \setupnote[contxt][paragraph=yes, inbetween=\hskip1.5em] \setupnotation[contxt][numbercommand=,alternative=serried,distance=1em,compress=yes,compressseparator=] \stopbuffer % \startbuffer[extract:after] % % empty % \stopbuffer \def\startextract {\dosingleempty\dostartextract} \def\dostartextract[#1]% {\edef\extractfilename{#1}% \grabbufferdata[extract:content][startextract][stopextract]} \def\stopextract {\doifsomething\extractfilename {\savebuffer[list={extract:before,extract:content,extract:after},file=\extractfilename.tex,prefix=no]% \typesetfile[\extractfilename][]}} \starttext \startextract[dummy] \startlinenumbering οὐκ οἶσθ᾽\contxt{οἶσθ᾽: οἶσθα, 2nd sg., οἶσδα} ὅτι πολλῶν ἐτῶν\contxt{πολλῶν ἐτῶν: for…; gen. time within} Ἀγάθων ἐνθάδε οὐκ ἐπιδεδήμηκεν\contxt{ἐπιδεδήμηκεν: pf. ἐπιδήμέω}, ἀφ᾽ οὗ\contxt{ἀφ᾽ οὗ: since; “from which (time)”} δ᾽ ἐγὼ Σωκράτει συνδιατρίβω\contxt{συνδιατρίβω: I have been spending; pres. but pf. progressive in translation} καὶ ἐπιμελὲς πεποίημαι\contxt{ἐπιμελὲς πεποίημαι: I have made it my business; “have made it my care,” pf.} \stoplinenumbering \stopextract \stoptext Wolfgang
On Tue, Jun 25 2013, Pablo Rodríguez wrote:
I'm afraid I cannot get it working with the sample file I provided.
Hi, Why not? This works here: --8<---------------cut here---------------start------------->8--- \startbuffer[sample-document] \mainlanguage[en] \setuplanguage[en][patterns={en,agr}] \definepapersize[mine][width=6in,height=2in] \setuppapersize[mine] \usemodule[simplefonts] \setmainfont[Theano Didot] \definelinenote[contxt] \setupnote[contxt][paragraph=yes, inbetween=\hskip1.5em] \setupnotation[contxt][numbercommand=,alternative=serried,distance=1em,compress=yes,compressseparator=] \starttext \startlinenumbering οὐκ οἶσθ᾽\contxt{οἶσθ᾽: οἶσθα, 2nd sg., οἶσδα} ὅτι πολλῶν ἐτῶν\contxt{πολλῶν ἐτῶν: for…; gen. time within} Ἀγάθων ἐνθάδε οὐκ ἐπιδεδήμηκεν\contxt{ἐπιδεδήμηκεν: pf. ἐπιδήμέω}, ἀφ᾽ οὗ\contxt{ἀφ᾽ οὗ: since; “from which (time)”} δ᾽ ἐγὼ Σωκράτει συνδιατρίβω\contxt{συνδιατρίβω: I have been spending; pres. but pf. progressive in translation} καὶ ἐπιμελὲς πεποίημαι\contxt{ἐπιμελὲς πεποίημαι: I have made it my business; “have made it my care,” pf.} \stoplinenumbering \stoptext \stopbuffer \savebuffer[list=sample-document, file=sample-document.tex, prefix=no] \starttext bla bla bla \typesetfile[sample-document.tex][width=10cm, frame=on] bla bla bla \stoptext --8<---------------cut here---------------end--------------->8--- -- Peter
On 25/06/13 23:28, Peter Münster wrote:
On Tue, Jun 25 2013, Pablo Rodríguez wrote:
I'm afraid I cannot get it working with the sample file I provided.
Hi,
Why not?
This works here:
Many thanks, Peter, it works also here. One more question, the file belongs in the following code: \startstandardmakeup[align=middle] \typesetfile[sample-document.tex][width=10cm, frame=on] \stopstandardmakeup How can I get this horizontally centered It is vertically centered, and it should be also horizontally aligned, but I don't know why doesn't it work. Many thanks for your help, Pablo -- http://www.ousia.tk
Am 26.06.2013 um 00:07 schrieb Pablo Rodríguez
On 25/06/13 23:28, Peter Münster wrote:
On Tue, Jun 25 2013, Pablo Rodríguez wrote:
I'm afraid I cannot get it working with the sample file I provided.
Hi,
Why not?
This works here:
Many thanks, Peter, it works also here.
One more question, the file belongs in the following code:
\startstandardmakeup[align=middle] \typesetfile[sample-document.tex][width=10cm, frame=on] \stopstandardmakeup
How can I get this horizontally centered It is vertically centered, and it should be also horizontally aligned, but I don't know why doesn't it work.
You need \dontleavehmode, i.e. \dontleavehmode\typesetfile[…]. Wolfgang
On 26/06/13 04:47, Wolfgang Schuster wrote:
Am 26.06.2013 um 00:07 schrieb Pablo Rodríguez
: One more question, the file belongs in the following code:
\startstandardmakeup[align=middle] \typesetfile[sample-document.tex][width=10cm, frame=on] \stopstandardmakeup
How can I get this horizontally centered It is vertically centered, and it should be also horizontally aligned, but I don't know why doesn't it work.
You need \dontleavehmode, i.e. \dontleavehmode\typesetfile[…].
Many thanks for your reply, Wolfgang.
From what I understand, the command is basically telling ConTeXt: “don’t make a new paragraph break after the inserted float”, isn‘t it?
Pablo -- http://www.ousia.tk
Am 26.06.2013 um 19:16 schrieb Pablo Rodríguez
On 26/06/13 04:47, Wolfgang Schuster wrote:
Am 26.06.2013 um 00:07 schrieb Pablo Rodríguez
: One more question, the file belongs in the following code:
\startstandardmakeup[align=middle] \typesetfile[sample-document.tex][width=10cm, frame=on] \stopstandardmakeup
How can I get this horizontally centered It is vertically centered, and it should be also horizontally aligned, but I don't know why doesn't it work.
You need \dontleavehmode, i.e. \dontleavehmode\typesetfile[…].
Many thanks for your reply, Wolfgang.
From what I understand, the command is basically telling ConTeXt: “don’t make a new paragraph break after the inserted float”, isn‘t it?
No, the command tells TeX to go into horizontal mode. \starttext \ruledvbox {\ruledhbox{One} \ruledhbox{Two}} \ruledvbox {\dontleavehmode \ruledhbox{One} \ruledhbox{Two}} \stoptext Wolfgang
On 26/06/13 20:01, Wolfgang Schuster wrote:
You need \dontleavehmode, i.e. \dontleavehmode\typesetfile[…].
Many thanks for your reply, Wolfgang.
From what I understand, the command is basically telling ConTeXt: “don’t make a new paragraph break after the inserted float”, isn‘t it?
No, the command tells TeX to go into horizontal mode.
Many thanks for your reply, Wolfgang. I understand now what horizontal mode is. Pablo -- http://www.ousia.tk
On Tue, 25 Jun 2013, Pablo Rodríguez wrote:
Dear list,
I need for a document explaining some ConTeXt features, to be able to include a document inside (a page that includes the feature).
I know I can create another document and then insert the pages, but it would be much easier for me to be able to have the code inside the main the document.
Is there a standard way to do it with ConTeXt?
Another option is to use the filter module (it takes care of caching and naming of temporary files, and you can specify an output directory for all auxillary files) https://github.com/adityam/filter \usemodule[filter] \traceexternalfilters \defineexternalfilter [CONTEXT] [ output=\externalfilterbasefile.pdf, filter={context --batch --result=\externalfilteroutputfile \space}, readcommand=\ShowPDF, cache=yes, bufferbefore={context:before}, bufferafter={context:after}, ] \define[1]\ShowPDF {\midaligned{\externalfigure[#1][frame=on]}} \startbuffer[context:before] \mainlanguage[en] \setuplanguage[en][patterns={en,agr}] \definepapersize[mine][width=6in,height=2in] \setuppapersize[mine] \usemodule[simplefonts] \setmainfont[Dejavu] \definelinenote[contxt] \setupnote[contxt][paragraph=yes, inbetween=\hskip1.5em] \setupnotation[contxt][numbercommand=,alternative=serried,distance=1em,compress=yes,compressseparator=] \starttext \stopbuffer \startbuffer[context:after] \stoptext \stopbuffer \starttext \startCONTEXT \startlinenumbering οὐκ οἶσθ᾽\contxt{οἶσθ᾽: οἶσθα, 2nd sg., οἶσδα} ὅτι πολλῶν ἐτῶν\contxt{πολλῶν ἐτῶν: for…; gen. time within} Ἀγάθων ἐνθάδε οὐκ ἐπιδεδήμηκεν\contxt{ἐπιδεδήμηκεν: pf. ἐπιδήμέω}, ἀφ᾽ οὗ\contxt{ἀφ᾽ οὗ: since; “from which (time)”} δ᾽ ἐγὼ Σωκράτει συνδιατρίβω\contxt{συνδιατρίβω: I have been spending; pres. but pf. progressive in translation} καὶ ἐπιμελὲς πεποίημαι\contxt{ἐπιμελὲς πεποίημαι: I have made it my business; “have made it my care,” pf.} \stoplinenumbering \stopCONTEXT \stoptext
On 26/06/13 19:56, Aditya Mahajan wrote:
On Tue, 25 Jun 2013, Pablo Rodríguez wrote:
Dear list,
I know I can create another document and then insert the pages, but it would be much easier for me to be able to have the code inside the main the document.
Is there a standard way to do it with ConTeXt?
Another option is to use the filter module (it takes care of caching and naming of temporary files, and you can specify an output directory for all auxillary files)
Many thanks, Aditya, for your reply. Pablo -- http://www.ousia.tk
participants (4)
-
Aditya Mahajan
-
Pablo Rodríguez
-
Peter Münster
-
Wolfgang Schuster