From: Wolfgang Schuster <schuster.wolfgang@gmail.com>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Export: \setuphemistich distance=
Date: Wed, 18 Mar 2015 21:34:25 +0100 [thread overview]
Message-ID: <9AB81614-C350-453A-89F6-A8AA10F9F94D@gmail.com> (raw)
In-Reply-To: <op.xvpk6x1bfkrasx@ishamid-pc>
[-- Attachment #1.1: Type: text/plain, Size: 3718 bytes --]
> Am 18.03.2015 um 20:45 schrieb Idris Samawi Hamid ادريس سماوي حامد <ishamid@colostate.edu>:
>
> On Wed, 18 Mar 2015 11:51:13 -0600, Wolfgang Schuster <schuster.wolfgang@gmail.com <mailto:schuster.wolfgang@gmail.com>> wrote:
>
>>
>>> Am 18.03.2015 um 15:04 schrieb Idris Samawi Hamid ادريس سماوي حامد <ishamid@colostate.edu>:
>>>
>>> Dear gang,
>>>
>>> In the attached, we export hemistiches:
>>>
>>> ===============
>>> \setupexport[cssfile=sh_ahmad-qajar.css]
>>> \setupbackend[export=yes]
>>>
>>> \usemodule[hemistich]
>>>
>>> \setuphemistich
>>> [width=local,
>>> distance=1\emwidth,
>>> separator=]
>>>
>>> \setuphemistich
>>> [leftcolor=,
>>> separatorcolor=,
>>> rightcolor=]
>>>
>>> \setuphemistich
>>> % [separator=\vl\hskip.25em\vl]
>>> [separator=]
>>>
>>> %% We need separate lines in the export, so use \start|stoplines
>>> \definestartstop[VERSES][before={\blank[medium]\startlines \noindentation},after={\stoplines \blank[medium]}]
>>> \starttext
>>> \startVERSES
>>> \hemistiches{Become a shunner of your affairs;}{Entrust all affairs to the Decision.}
>>> \hemistiches{Thus tight spaces will often widen;}{And open spaces will often get tight.}
>>> \stopVERSES
>>> \stoptext
>>> ===============
>>>
>>> In the output we get
>>>
>>> ===============
>>> <div>
>>> <div class="lines">
>>> <div class="line"><div class="line">Become a shunner of your affairs;Entrust all affairs to the Decision.</div><div class="line">Thus tight spaces will often widen;And open spaces will often get tight.</div></div>
>>> </div>
>>> </div>
>>> ===============
>>>
>>> Is there anyway to tag and export the distance info:
>>>
>>> distance=1\emwidth
>>>
>>> so that we can get some space in the xhtml. Note that I do not expect any of the alignment that the hemistiches module provides. Just some reasonable space.
>>>
>>> That said: How do I design a \start|stophemistiches environment that would get tagged in the output as such (i.e., <div class="hemistiches">)?
>>
>> You have to add tag commands in the source of the module to get tags in the exported text.
>>
>> The distance between both texts in the output can be set with CSS but first you need tags.
>
> Hi Wolfgang,
>
> Can you give an example of adding tag commands to a macro or to a \start-stop<command>? Thanks as always for the clarity and
Something like this should do it for the hemistiches module.
\unexpanded\def\dodohemistiches#1[#2]#3#4%
{\dontleavehmode
\begingroup
\doifassignmentelse{#2}
{\edef\currenthemistich{#1}%
\setupcurrenthemistich[#2]}
{\def\currenthemistich{#2}}%
\doifelse{\hemistichparameter\c!width}\v!local
{\scratchwidth\availablehsize}
{\scratchwidth\hemistichparameter\c!width\relax}%
\spaceskip\zeropoint\s!plus\plusone\s!fill\relax
+ \dostarttagged\t!division\currenthemistich
\hbox to \scratchwidth\bgroup
\scratchwidth.5\dimexpr\scratchwidth-\hemistichparameter\c!distance\relax
\hbox to \scratchwidth\bgroup
+ \dostarttagged\t!construct\c!lefttext
\usehemistichstyleandcolor\c!leftstyle\c!leftcolor#3%
+ \dostoptagged
\egroup
\hss
\begingroup
+ \dostarttagged\t!construct\c!separator
\usehemistichstyleandcolor\c!separatorstyle\c!separatorcolor
\hemistichparameter\c!separator
+ \dostoptagged
\endgroup
\hss
\hbox to \scratchwidth\bgroup
+ \dostarttagged\t!construct\c!righttext
\usehemistichstyleandcolor\c!rightstyle\c!rightcolor#4%
+ \dostoptagged
\egroup
\egroup
+ \dostoptagged
\endgroup}
Wolfgang
[-- Attachment #1.2: Type: text/html, Size: 10148 bytes --]
[-- Attachment #2: Type: text/plain, Size: 485 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
___________________________________________________________________________________
next prev parent reply other threads:[~2015-03-18 20:34 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-18 14:04 Idris Samawi Hamid ادريس سماوي حامد
2015-03-18 17:51 ` Wolfgang Schuster
2015-03-18 19:45 ` Idris Samawi Hamid ادريس سماوي حامد
2015-03-18 20:34 ` Wolfgang Schuster [this message]
2015-03-19 12:42 ` Idris Samawi Hamid ادريس سماوي حامد
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=9AB81614-C350-453A-89F6-A8AA10F9F94D@gmail.com \
--to=schuster.wolfgang@gmail.com \
--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).