From: Hans Hagen <j.hagen@xs4all.nl>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>,
Aditya Mahajan <adityam@umich.edu>
Subject: Re: Minimal code for exporting custom tags
Date: Mon, 18 May 2020 11:34:24 +0200 [thread overview]
Message-ID: <11099836-3176-676a-7ce4-365153e0579d@xs4all.nl> (raw)
In-Reply-To: <nycvar.YAK.7.77.849.2005180259010.225319@nqv-guvaxcnq>
On 5/18/2020 9:09 AM, Aditya Mahajan wrote:
> Hi,
>
> What is needed to enable export of user defined macros? Consider the
> following example:
>
>
> ```
> \def\startmycommand{\dostarttagged{mycommand}\empty}
> \def\stopmycommand {\dostoptagged}
>
> \setupbackend[export=xml, level=0]
>
> \starttext
> \startsection[title={Sample document}]
> \startparagraph
> This is a paragraph
> \stopparagraph
> \startmycommand
> This is mycommand
> \stopmycommand
> \stopsection
> \stoptext
> ```
>
> If I compile using `context --trackers=structures.tags filename`, I get
>
> ```
> backend > tags > U+0031:1 => U+0031:1 : 00004 document>1
> section>1 sectioncaption>1 sectionnumber>1
> backend > tags > U+0053:S => U+0074:t : 00005 document>1
> section>1 sectioncaption>1 sectiontitle>1
> backend > tags > U+0054:T => U+0068:h : 00007 document>1
> section>1 sectioncontent>1 paragraph>1
> backend > tags > U+0054:T => U+0064:d : 00008 document>1
> section>1 sectioncontent>1 mycommand>1
> ```
>
> so the tag is applied. I can also verify this by looking at the PDF
> which contains
>
> ```
> << /K 27 0 R /ParentTree 2 0 R /RoleMap << /document /Div /mycommand
> /Span /paragraph /P /section /Sect /sectioncaption /Div /sectioncontent
> /Div /sectionnumber /H /sectiontitle /H >> /Type /StructTreeRoot >>
> ```
>
> and the tag `mycommand` is used at appropriate location.
>
> However, the exported xml file contains no tag:
>
> ```
> <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
>
> <!--
>
> input filename : test-tag
> processing date : 2020-05-18T03:00:33-04:00
> context version : 2020.04.30 11:10
> exporter version : 0.35
>
> -->
>
> <!-- This export file is used for filtering runtime only! -->
>
> <document context="2020.04.30 11:10" date="2020-05-18T03:00:33-04:00"
> file="test-tag" language="en" version="0.35"
> xmlns:m="http://www.w3.org/1998/Math/MathML">
> <metadata>
> </metadata>
> <section detail="section" chain="section" implicit="1" level="3">
> <sectioncaption>
> <sectionnumber>1</sectionnumber>
> <sectiontitle>Sample document</sectiontitle>
> </sectioncaption>
> <sectioncontent>
> <paragraph>This is a paragraph</paragraph>
> </sectioncontent>
> </section>
> </document>
> ```
>
> What am I missing in order to pass user-defined macros to the exporter?
you're probably missing documentation + a high level define command
This registers (extra) elements:
\setelementbackendtag[mycommand]
\setelementnature [mycommand][mixed]
after that you can use \startelement[mycommamd]
\starttext
\startsection[title={Sample document}]
\startparagraph
This is a paragraph
\stopparagraph
\startelement[mycommand]
This is mycommand
\stopelement
\stopsection
\stoptext
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.nl | 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://context.aanhet.net
archive : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___________________________________________________________________________________
next prev parent reply other threads:[~2020-05-18 9:34 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-05-18 7:09 Aditya Mahajan
2020-05-18 9:34 ` Hans Hagen [this message]
2020-05-18 13:50 ` Aditya Mahajan
2020-05-18 17:31 ` Aditya Mahajan
2020-05-19 5:45 ` Aditya Mahajan
2020-05-19 6:16 ` Aditya Mahajan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=11099836-3176-676a-7ce4-365153e0579d@xs4all.nl \
--to=j.hagen@xs4all.nl \
--cc=adityam@umich.edu \
--cc=ntg-context@ntg.nl \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).