On 15/10/2015 19:20, jfbu wrote: > > Le 15 oct. 2015 à 19:58, jfbu <[email protected]> a écrit : > >> >> Le 15 oct. 2015 à 19:43, jfbu <[email protected]> a écrit : >> >>> >>> Le 15 oct. 2015 à 19:37, David Carlisle <[email protected]> a écrit : >>> >>>> On 15 October 2015 at 18:35, jfbu <[email protected]> wrote: >>>>> Hi Joseph >>>>> >>>>> Le 15 oct. 2015 à 19:29, Joseph Wright <[email protected]> >>>>> a écrit : >>>>> >>>>>>> >>>>>> >>>>>> Hello Jean-François, >>>>>> >>>>>> The 'real' names of the primitives have always been just \Umath... For >>>>>> some time they've been enabled with the "luatex" prefix.. The LaTeX team >>>>>> have recently taken a more 'active' interest in directly supporting >>>>>> LuaTeX (and XeTeX) by modifying latex.ltx to 'know' about these engines. >>>>>> As part of that process, we've revised the approach to the newer >>>>>> primitives and dropped the prefix 'out of the box'. >>>>>> >>>>>> For code that needs to work both with older (pre 2015/10/01) and newer >>>>>> (2015/10/01 onward) kernel releases, adding >>>>>> >>>>>> \directlua{ >>>>>> tex.enableprimitives("luatex", tex.extraprimitives("Umath")) >>>>>> } >>>>>> >>>>>> (for just the Umath set) will do the job. Alternatively, if the code in >>>>>> your package gets modified to drop the prefix then >>>>>> >>>>>> \directlua{ >>>>>> tex.enableprimitives("", tex.extraprimitives("Umath")) >>>>>> } >>>>>> >>>>>> will ensure that the 'natural' names are available with older kernel >>>>>> releases. >>>>> >>>>> >>>>> OK, let's see if I get you right: I remove from mathastext.sty >>>>> all "luatex" prefixes, but also I need to add >>>>> >>>>> \directlua{ >>>>> tex.enableprimitives("", tex.extraprimitives("Umath")) >>>>> } >>>>> >>>>> to mathastext.sty if it detects luatex, >>>>> >>>>> so as to be sure the new version of the package will work also >>>>> with older LaTeX releases ? >>>>> >>>>> is that right ? >>>>> >>>>> best, >>>>> >>>>> Jean-François >>>> >>>> >>>> That works in general for primitives that were previously prefixed >>>> \luatex... but the \Umath... names are special in that they were >>>> previously available both prefixed and not prefixed, so you can just >>>> use the unprefixed ones. >>>> >>> >>> Hi David, >>> >>> ok, this is very clear, thanks, sorry if I have one last question does >>> "previously available" mean "all the way back to 2011" ? >>> >>> I can't test it on my laptop which only has TeXLive 2012 and later, >>> and I would like not to break installations as far back as 2011, >>> >>> best >>> >>> Jean-François >> >> Hi David/Joseph, >> >> [ I apologize to the list, perhaps I should move this discussion to >> a LaTeX list ] >> >> sorry again, but texdoc ltnews did not give me the following info: >> >> should I also remove the "xetex" prefixes and use "\Umathchardef" >> also under XeLaTeX ? from texdoc xetex, the primitives are there >> only with "U" prefix. >> >> best, >> >> Jean-François >> > > Hi all, > > sorry for all the fuss. I will do > > \let\mst@Umathcharnumdef\Umathcharnumdef > \let\mst@Umathcodenum\Umathcodenum > \let\mst@Umathcode\Umathcode > \let\mst@Umathchardef\Umathchardef > > then test if \mst@Umathcode is \undefined > and in the latter case use either "luatexU" or "XeTeX" > prefix depending on the engine, > > besides I am sorry about the TL2011 thing, because > regarding LuaLaTeX the doc of mathastext says > already TL2013 or later is needed. > > mathastext.sty will be leaner as I can not > treat identically both unicode engines > > best wishes > > Jean-François
>From TL2013 both XeTeX and LuaTeX have \Umath... Joseph
