ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* Spacing in \unit
@ 2022-10-08 17:59 Gavin via ntg-context
  2022-10-10  1:32 ` Alan Braslau via ntg-context
  2022-10-12 16:50 ` Dimension atom in math? (was: Spacing in \unit) Gavin via ntg-context
  0 siblings, 2 replies; 21+ messages in thread
From: Gavin via ntg-context @ 2022-10-08 17:59 UTC (permalink / raw)
  To: mailing list for ConTeXt users; +Cc: Gavin

Hi list,

I made a small example with all of the issues I am trying to fix for the \units command. The first formula below uses the \unit command, but produces strange spacing. The second formula produces the desired spacing, without using the \unit command.

\showmakeup[mathglue] %\mathspacingmode=1

\starttext
\startformula
 \unit{1.23e5 kg m^2/s^2} + \unit{8.64e5 W s} = \unit{9.87e5 newton m}
\stopformula
\startformula
 1.23\mathord\times10^5\,{\rm kg\mathord\cdot m^2/s^2} + 8.64\mathord\times10^5\,{\rm W\mathord{\cdot}s} = 9.87\mathord\times10^5\,{\rm N\mathord{\cdot}m}
\stopformula
\stoptext

I’m trying to fix four issues:
  - No space between the number and the following units. Should be a thin space.
  - No space between the units and the following symbol (+ and = above). Should be appropriate “bin" or “rel" space.
  - Too much space around the \cdot in the units. Should be treated like an “ord" when used to separate units.
  - Too much space around the \times in the scientific notation. Should be treated like an "ord" when used in scientific notation. (I'm not sure there is consensus on this.)

Some of these seemed like things I could fix myself, so I dug into phys-dim.mkxl to see what I could do. The good news is that I didn’t break anything. The bad news is that nothing I did seemed to have any effect – including deleting phys-dim.mkxl entirely! I double checked that I was working on the same installation used for typesetting. Is the code used for \unit now somewhere else?

These issues only occur in math mode, and \unit handles comma separators correctly, unlike \digit.

I’d like to get some sort of temporary patch for at least some of these issues, even if I need to write it myself. I use \unit everywhere in physics problems sets for students and in keys that I share other teachers.

Any guidance is appreciated!

Gavin

P.S. I’m working on a more comprehensive test file, but its not ready yet.
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / https://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : https://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : https://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 21+ messages in thread
* Spacing in \unit
@ 2022-09-25 13:30 Gavin via ntg-context
  2022-09-25 15:19 ` Hans Hagen via ntg-context
  2022-09-25 16:31 ` Bruce Horrocks via ntg-context
  0 siblings, 2 replies; 21+ messages in thread
From: Gavin via ntg-context @ 2022-09-25 13:30 UTC (permalink / raw)
  To: mailing list for ConTeXt users; +Cc: Gavin

Hello list,

I have a few questions about space produced by the unit command. Consider this MWE

\starttext
\unit{3.00e8 kg m/s}

$\unit{3.00e8 kg m/s}$
\stoptext

The dot between “kg” and “m” has different spacing depending on whether the \unit command is in text or math mode. I think that the tighter spacing in the first one, in text, is correct.

I personally would also like less space around the \times. To me, the number 3.00e8 should be typeset more like a single number, rather than like a product of 3.00 and 10^8. I am probably in the minority here. If \unit and \digit had an option for tighter spacing around the \times, I’d use it, but the current output with more space is probably what most people expect and want. Perhaps something like [scispace=tight].

Finally, \unit does not play nicely with surrounding spaces. For example:

    $2\pi\,\unit{3.00e8 kg m/s}$

causes a fatal error:

tex error       > tex error on line 9 in file ./Untitled.tex: Incompatible glue units (case 1)

<macro> \phys_units_direct 
    #1->\begingroup \the \everyunits \ifdim \lastskip 
    >\zeropoint \settrue \c_phys_units_dospace \removelastskip \fi \c_phys_digits_method \unitparameter \c!method \relax \ifmmode \else \dontleavehmode \fi \edef \currentunit {#1}\always\edef \unitlanguag
<line 3.9> 
    $2\pi\,\unit
    {3.00e8 kg m/s}$

Using \thinspace produces the same fatal error.

Putting the 2\pi after the \unit{…} can also cause surprises.

    $\unit{3.00e8 kg m/s}\times 2\pi$

produces a \times that is right up against the “s”.

I am very happy with all of the work done on spacing in math. I hope that my observations above are helpful in fine-tuning the excellent system.

Thanks!
Gavin

P.S. I am on as M1 Mac, using ConTeXt  ver: 2022.09.11 20:44 LMTX  fmt: 2022.9.25  int: english/english.
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / https://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : https://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : https://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2022-10-21 19:07 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-08 17:59 Spacing in \unit Gavin via ntg-context
2022-10-10  1:32 ` Alan Braslau via ntg-context
2022-10-10  6:15   ` Max Chernoff via ntg-context
2022-10-12 21:54     ` Spacing in \unit - SOLVED Gavin via ntg-context
2022-10-12 22:11       ` Rik Kabel via ntg-context
2022-10-12 22:49       ` Max Chernoff via ntg-context
2022-10-12 23:55         ` Spacing in \unit - degrees Alan Braslau via ntg-context
2022-10-13  3:14           ` Gavin via ntg-context
2022-10-13 13:26             ` Alan Braslau via ntg-context
2022-10-13  0:11         ` Spacing in \unit - SOLVED Gavin via ntg-context
2022-10-13  7:03       ` Oliver Sieber via ntg-context
2022-10-13 11:52         ` Gavin via ntg-context
2022-10-14  8:12           ` Hans Hagen via ntg-context
2022-10-21 18:20             ` Gavin via ntg-context
2022-10-21 19:07               ` Gavin via ntg-context
2022-10-12 16:50 ` Dimension atom in math? (was: Spacing in \unit) Gavin via ntg-context
  -- strict thread matches above, loose matches on Subject: below --
2022-09-25 13:30 Spacing in \unit Gavin via ntg-context
2022-09-25 15:19 ` Hans Hagen via ntg-context
2022-09-25 15:29   ` Gavin via ntg-context
2022-09-25 15:39     ` Hans Hagen via ntg-context
2022-09-25 16:31 ` Bruce Horrocks via ntg-context

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).