ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Gerion Entrup <gerion.entrup@flump.de>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>,
	Wolfgang Schuster <wolfgang.schuster.lists@gmail.com>
Subject: [NTG-context] Re: Combine \setupdelimitedtext with an author (define custom variable?)
Date: Thu, 06 Jun 2024 22:07:18 +0200	[thread overview]
Message-ID: <4890903.Wku2Vz74k6@falbala> (raw)
In-Reply-To: <30fe1ee2-5afc-6335-5d67-2f4a2c93d265@gmail.com>


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

Am Donnerstag, 6. Juni 2024, 16:34:03 MESZ schrieb Wolfgang Schuster:
> Gerion Entrup schrieb am 06.06.2024 um 12:30:
> > Hi,
> > 
> > I like to achieve something that looks like this:
> > ```
> > \definedelimitedtext[extract][blockquote]
> > \setupdelimitedtext
> >    [extract]
> >    [leftmargin=1.5pc,
> >     style={\italic},
> >     before={\setupindenting[next]},
> >     after={\blank[1ex] \hrule \blank[1ex] \startalignment[flushright] \tfx\italic{René Descartes} \stopalignment}]
> > 
> > \starttext
> > \startextract
> >      Cogito ergo sum.
> > \stopextract
> > \stoptext
> > ```
> > 
> > So it should setup a quotation and mentions the author.
> > However, here the author is hardcoded within the blockquote. I would like it to use like this:
> > ```
> > \definedelimitedtext[extract][blockquote]
> > \setupdelimitedtext
> >    [extract]
> >    [leftmargin=1.5pc,
> >     style={\italic},
> >     before={\setupindenting[next]},
> >     after={\blank[1ex] \hrule \blank[1ex] \startalignment[flushright] \tfx\italic{\getcustomvariable{author}} \stopalignment}]
> > 
> > \starttext
> > \startextract[author=René Descartes]
> >      Cogito ergo sum.
> > \stopextract
> > \stoptext
> > ```
> > 
> > Is there an easy way to achieve that?
> > I tried with \structureuservariable (like possible in \startchapter) but it does not work.
> 
> \startsetups [userdata:extract]
>      \startnarrower
>          \setupindenting[next]
>          \getuserdata
>          \hairline
>          \dontleavehmode\wordright{\itx\userdataparameter{author}}
>      \stopnarrower
> \stopsetups
> 
> \defineuserdataalternative
>    [extract]
>    [renderingsetup=userdata:extract]
> 
> \defineuserdata
>    [extract]
>    [style=italic,
>     alternative=extract]
> 
> \starttext
> 
> \startextract[author=René Descartes]
>      Cogito ergo sum.
> \stopextract
> 
> \stoptext

Really cool! Thank you. If I see it right, this is completely generic,
so with this it is possible to define any start<something> stop<something>
with completely variable arguments.

Gerion

[-- Attachment #1.2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 659 bytes --]

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

___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
webpage  : https://www.pragma-ade.nl / https://context.aanhet.net (mirror)
archive  : https://github.com/contextgarden/context
wiki     : https://wiki.contextgarden.net
___________________________________________________________________________________

  parent reply	other threads:[~2024-06-06 20:09 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-06 10:30 [NTG-context] " Gerion Entrup
2024-06-06 11:51 ` [NTG-context] " Hans Hagen via ntg-context
2024-06-06 22:36   ` Gerion Entrup
2024-06-06 14:34 ` Wolfgang Schuster
2024-06-06 14:50   ` Hans Hagen via ntg-context
2024-06-06 20:07   ` Gerion Entrup [this message]
2024-06-17 11:04   ` Gerion Entrup
2024-06-17 19:20     ` Wolfgang Schuster
2024-06-18  7:57       ` Gerion Entrup

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=4890903.Wku2Vz74k6@falbala \
    --to=gerion.entrup@flump.de \
    --cc=ntg-context@ntg.nl \
    --cc=wolfgang.schuster.lists@gmail.com \
    /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).