On 2022-11-08 16:42:00 +0000, Gavin Smith wrote: > On Tue, Nov 08, 2022 at 11:27:08AM +0100, Vincent Lefevre wrote: > > On 2022-11-08 07:04:11 +0000, Gavin Smith wrote: > > > On Tue, Nov 08, 2022 at 03:57:48AM +0100, Vincent Lefevre wrote: > > > > Note that there is the same issue with a Texinfo macro, i.e. with > > > > > > > > @iftex > > > > @macro atan > > > > \\mathop{\\rm atan} > > > > @end macro > > > > @end iftex > > > > > > > > instead of the \gdef\atan{\mathop{\rm atan}}. This is even more > > > > unexpected, and this seems to be a Texinfo problem. > > > > > > Yes, but it is unlikely that this can be fixed. > > > > The manual doesn't say that this is forbidden or that wouldn't work > > as expected. > > We don't document in the Texinfo manual how TeX math mode spacing works. > The spacing is as expected for TeX.
Well, let's try. :-) ------------------------------------------------------------ \input texinfo @c -*-texinfo-*- @tex \gdef\texatan{\mathop{\rm atan}} @end tex @iftex @macro atan \\mathop{\\rm atan} @end macro @end iftex Spacing test with atan. @math{\mathop{\rm atan}(x)} @math{\texatan(x)} @math{@atan{}(x)} @bye ------------------------------------------------------------ I get: Spacing test with atan. atan(x) atan(x) atan (x) So, one gets the expected behavior with the TeX macro (no space added). But with the Texinfo macro, a space is added. This is unexpected: one should have got the same behavior as with the Tex macro. This means that Texinfo is adding something else in its macro expansion. > > So one would need to use something like @mysin{} (with a definition > > to expand it to "sin"). But it would be better for source readability > > and less confusing if either @math{@sin{}(x)} or @math{@sin(x)} were > > allowed. > > Another idea: define @Sin so that you could do @math{@Sin{}(x)}. With > the right definition you could also do @math{@Sin{x}}. Good idea. Thanks. -- Vincent Lefèvre <vinc...@vinc17.net> - Web: <https://www.vinc17.net/> 100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/> Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)