LATEX-L Archives

Mailing list for the LaTeX3 project


Options: Use Forum View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Joseph Wright <[log in to unmask]>
Reply To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Thu, 27 Dec 2018 08:55:44 +0000
text/plain (41 lines)
On 27/12/2018 08:26, Tisha Shusho wrote:
> Hello List,
> Merry Christmas and a Happy New Year in advance.
> I want to apply the function '\exp_args:Ncnn' to
> '\fontspec_set_family:Nnn <family-passed-as-list-of-strings> <feature> 
> <font>'.
> Please note the family name is defined as a variable l__..._tl. The 
> reason that
> I want to 'Ncnn' (I think) is that the argument specification of the 
> function
> '\fontspec_set_family' is 'Nnn'.
> However, there is no argument specification 'Ncnn' in the signature of
> '\exp_args'. Also as I understand from the LaTeX3 documents it is not
> possible to create such a variant for this function with
> '\cs_generate_variant:Nn'. Furthermore, as '\exp_args_generate:n' is
> defined in 'l3candidates' which is experimental, at the moment I have
> decided to use the following:
> \exp_args:Ncnx \fontspec_set_family:Nnn 
> <family-passed-as-list-of-strings> <feature> <font>'
> Is it correct to use 'Ncnx' instead of 'Ncnn'? What is the best
> argument specification to use instead of 'Ncnx' here?
> Thanks,
> Tisha

You should be making a variant, but you can't have a c-type variant for 
an n-type parent. Instead, you want to pass the value of a csname: 
that's v-type

   \cs_generate_variant:Nn \fontspec_set_family:Nnn { Nv }
   \fontspec_set_family:Nvn \fontspec_set_family:Nnn \sometoken
     { l_tmpa_tl } % or whatever
     { ... }