plex icon indicating copy to clipboard operation
plex copied to clipboard

Full Math Symbols?

Open tecosaur opened this issue 5 years ago • 64 comments

Hello,

Out of impatience, I see that in 2017 @mjabbink said "Extended Math symbols will come in 2019" and then in 2018 "We will design a version of Plex with full mathematical glyphs next year". Now that it's 2019 I was wondering how much longer we'll have to wait?

Also I'm curious as to how extensive addition will be; specificly, which of the following blocks are planning on being included?

  • Mathematical Operators block (U+2200 – U+22FF)
  • Supplemental Mathematical Operators block (U+2A00 – U+2AFF)
  • Mathematical Alphanumeric Symbols block (U+1D400 – U+1D7FF)
  • Letterlike Symbols block (U+2100 – U+214F) has a math subset
  • Miscellaneous Mathematical Symbols-A block (U+27C0 – U+27EF)
  • Miscellaneous Mathematical Symbols-B block (U+2980 – U+29FF)
  • Miscellaneous Technical block (U+2300 – U+23FF) has a math subset
  • Geometric Shapes block (U+25A0 – U+25FF) has a math subset
  • Miscellaneous Symbols and Arrows block (U+2B00–U+2BFF Arrows) has a math subset (U+2B30 – 2B44 and U+2B47 – 2B4C)
  • Arrows block (U+2190–U+21FF)
  • Supplemental Arrows-B block (U+2900–U+297F)
  • The various math symbols in other blocks that haven't yet been added (Such as U+2034 triple prime)

thanks!

tecosaur.

tecosaur avatar Apr 28 '19 02:04 tecosaur

Math support for IBM Plex is still on the roadmap. But how many glyphs – out of the thousands of glyphs that are in those blocks – are sufficient for a first release is still being determined. A full Math character set comparable to the likes of STIX easily surpasses 5,000 glyphs.

For what kind of purpose would you use a font like this?

BoldMonday avatar Apr 28 '19 14:04 BoldMonday

Most of the documents I produce are made in LaTeX. I have found the design choices made in plex to match quite well and so have adopted it as part of my default template. However, a significant irritation comes from the difficulty in finding a good math font to match.

What I am hoping to see is sufficient Maths support for a LaTeX package to be produced, and for it to be able to satisfy the range of symbols I use day to day. Of the top of my head, these are the character sets I use most frequently, i.e. the 99% from most used to least.

  1. Letters a-z, true italic — 52 characters
  2. Greek letters, italic - 48 characters
  3. Common operations (+-×±∓ etc.) — ~20? characters
  4. Deliminators, large deliminators ([{⟨ etc. — ~10 characters + mirrored
  5. Sum / Product (∑ ∏) — 2 characters
  6. Arrows — ~30 characters
  7. Relation symbols (∩∪⊂⊇≠≫ etc.) — ~40 characters
  8. Special sets, i.e. blackboard letters (ℤ ℚ ℝ ℂ etc.) - 26 characters (uppercase only)
  9. Special operators, using Caligraphic Variants (𝓛 𝓟 etc.) - 26 to 52 characters (have yet to use lower case)
  10. A few miscellaneous others, let's say ~50

Total: ~300 characters, but you already have the italic letters and (I think) greek, so Total New: ~200 characters

200 ≪ 5,000 so that's good.

This is what I'd consider a bare minimum to be potentially viable.

In order to actualy be an clear choice though, I'd imagine one would really need all the symbols listed here https://www.caam.rice.edu/~heinken/latex/symbols.pdf which is around 500 symbols.

I'm afraid that maths people such as myself seem to really like their symbols, but at least there's a fair bit or re-use that goes on, e.g. with equals sign combined with: dot, dash, strike, two dots in middle, two dots on ends, circle above, triangle above etc.

This goes a bit beyond your question "For what kind of purpose would you use a font like this?" but hopefuly it may be of help in working out what glyphs to include.

tecosaur avatar Apr 28 '19 17:04 tecosaur

Behind schedule on this due to budget constraints and focus on CJK (Chinese, Japanese, Korean). It will certainly be moving into 2020.

mjabbink avatar Apr 29 '19 03:04 mjabbink

@mjabbink thanks for the update. If you don't mind I have two more questions

  • How far into the planning stage are you?
  • What's the chance of more update as you get closer to starting? (i.e. have decided we'll be doing these glyphs, have now started, halfway through etc.)

tecosaur avatar May 12 '19 08:05 tecosaur

@tecosaur I would not look for this until end of 2020. We are in the middle of CJK and I hope to get this going now in the beginning of Q1 2020. There is a slight chance for sooner but it’s looking slim.

mjabbink avatar Jun 04 '19 20:06 mjabbink

Ping @inferno986return (https://github.com/IBM/plex/issues/122).

Arcitec avatar Nov 25 '19 09:11 Arcitec

By the way @mjabbink, with the math symbol set, it would be possible to create a IBM Plex Mono Code variant which is literally just Mono but with certain mappings from character sequences to single math characters. Such as <= into and >> into . A fan could create that after the math set exists. Just throwing the idea out there.

For an example of such a sequence transformation, see https://github.com/tonsky/FiraCode.

PS: IBM Plex is gorgeous. Great job, everyone involved!

Arcitec avatar Nov 25 '19 09:11 Arcitec

As mentioned here, APL symbols are now part of this project. It can be tricky to get the various APL symbols to look good together, especially as many are shared with the general mathematical symbols. The below table and samples from IBM's existing APL fonts, Courier APL2 Unicode and APL2 Unicode may be helpful here.

Table of related symbols

          stars: *⍣⍟⋆
        circles: ⍥○⍟⌽⍉⊖⍜⊙⌾⌼
        slashes: /⌿⍁≠≢
    backslashes: \⍀⍂
        uptacks: ⍊⍎⊥
      downtacks: ⍡⍑⍕⊤
       epsilons: ∊⍷
           jots: ∘⍤⍛⍎⍕⍝⌻⌾
         commas: ,⍪;⍮
       diamonds: ⋄⌺⍚
           dels: ⍫∇⍢⍒
         stiles: ⍒⍋∥⍭|⍦⍧⍅⍆
         deltas: ∆⍙⍋
      up arrows: ↑⍐⍏
    down arrows: ↓⍗⍖
   right arrows: →⍈⍆
    left arrows: ←⍇⍅
          shoes: ⊂⊆⊇⊃∪∩⍝⍦⋔⍧
      diaeresis: ¨⍡⍢⍨⍣⍤⍩
    comparisons: <≤>≥⍩⍃⍄
         wedges: ∧⍲∨⍱⍓⍌
     equalities: =⌸≠≡≢
          tacks: ⊢⊣⊥⌶⊤⍎⍕
          quads: ⍠⌹⌸⍯⌺⎕⍁⍂⌼⌻⍃⍄⍓⍌⍔⍍⍞⍰⍐⍗⍇⍈
      underbars: ⊆⊇⍊⍘⍙⍚⍛⍜⍮⍶⍷⍸⍹
         alphas: ⍺⍶
         omegas: ⍵⍹
         dashes: -⌿⍀⍪⊖÷
       overbars: ¯⍑
         tildes: ~⍲⍱⍬⍫⍭⍨
         colons: ⍠:⌹÷
       brackets: ⌷[]

Courier APL2 Unicode

Courier APL2 Unicode

APL2 Unicode

APL2 Unicode

abrudz avatar Jan 24 '20 13:01 abrudz

When we get to finally do the math font We can cover APL2. Might be able to phase out project and cover APL2 first, box glyphs (since we’re developing those for Korean release in February 2020), then tackle the rest of the beast.

mjabbink avatar Jan 24 '20 14:01 mjabbink

I informed the StackExchange:TeX community about the announced 2020 mathematics extension of IBM Plex. Which OpenType math-fonts are available?.

The Tex.StackExchange page's focused discussion of existing mathematical fonts may interest developers.

Two asides:

  • Using the most recent distribution, I found that the Mono font had problems with punctuation (in urls), which disappeared when I used the Mono Text font.
  • I am delighted by the IBM Plex family of fonts, which I find to be more readable on my laptop than the excellent Libertinus family of fonts with its excellent Mathematics extension of its Serif font (which may have advantages for printed documents).

JimEBlevins avatar Apr 20 '20 15:04 JimEBlevins

For what kind of purpose would you use a font like this?

The mathematics extension of IBM Plex should aspire to be a free, open-source (SIL OTF) competitor to the mathematics extension of Microsoft's Cambria, which has already been adopted as the font for ISO manuals. Cambria aspires to replace Times New Roman as the workhorse for printed text, while being more legible for on-screen use. Both Cambria and IBM Plex Serif have distinct and independent designs, so a friendly rivalry should drive improvements in both fonts.

Plex's free and open attributes simplify the sharing of documents and code with others, especially for the joint editing of documents when a collaborator may use Macs or UNIX / GNU Linux.

For on-screen use, the Plex family is more legible than Cambria, e.g., because of its higher x-height (while Cambria has an x-height that is greater than Times New Roman's but that is less than Microsoft's fonts for on-screen documents (Verdana, Tahoma, and Trebuchet). The Plex family is more coherent than Microsoft's ClearType C-fonts, which were quickly designed.

With an excellent Math extension, IBM Plex could become the leading font for on-line scientific and technical documents and for drafting and proof-reading such printed documents. It should also appeal to businesses, schools, universities, and governments for producing documents for on-screen reading.

Users of LaTeX may try this invocation of Plex: ` \usepackage{luatexbase} \usepackage{microtype} \usepackage{luatextra} \usepackage{luaotfload} \usepackage{fontspec}

\setmainfont[ Extension=.otf, UprightFont={IBM Plex Serif-Text}, BoldFont={IBM Plex Serif-Bold}, ItalicFont={IBM Plex Serif-Italic}, BoldItalicFont={IBM Plex Serif-BoldItalic} ]{IBM Plex Serif}[Ligatures=TeX,Scale=MatchUppercase] % Scales Plex to default size, e.g., to Helvetica´s size.

\setmonofont{IBM Plex Mono Text}[Scale=MatchLowercase, Ligatures=TeX] \setsansfont{IBM Plex Sans Text}[Scale=MatchUppercase, Ligatures=TeX] `

JimEBlevins avatar Apr 21 '20 09:04 JimEBlevins

With an excellent Math extension, IBM Plex could become the leading font for on-line scientific and technical documents and for drafting and proof-reading such printed documents. It should also appeal to businesses, schools, universities, and governments for producing documents for on-screen reading.

I really like Plex, but actually, my biggest problem with it, is that it is just too successful in achieving its goal of being "distinctly IBM"; it is too IBM. I don't feel like I can use it for my own generic things because I'll give the false impression of my project being endorsed by IBM!

abrudz avatar Apr 21 '20 09:04 abrudz

Looks like 2021. Need funding.

mjabbink avatar Apr 21 '20 09:04 mjabbink

@mjabbink I read through the entire ibm.com/plex and noticed:

The unexpected and expressive tone of the Selectric typeface, Italic 12 was a major influence in Plex Mono Italic.

The accompanying Italic 12 type sample looked remarkably familiar. Turns out I recently created a modern clone of its derivative which includes all APL symbol and (thus) many mathematical symbols. Feel free to use for inspiration/guidance.

abrudz avatar Apr 21 '20 10:04 abrudz

Need funding.

How much?

abrudz avatar Apr 21 '20 10:04 abrudz

@abrudz Cool project and yes it looks like Italic 12. The funding is not small. Doing the entire Math character set we’re looking to achieve is a lot of work and I think we’re doing with the Serif but need to make a decision there (sans or serif?). I lean on serif as use case is typically within white papers and heavy documentation.

mjabbink avatar Sep 29 '20 20:09 mjabbink

@abrudz Cool project and yes it looks like Italic 12. The funding is not small. Doing the entire Math character set we’re looking to achieve is a lot of work and I think we’re doing with the Serif but need to make a decision there (sans or serif?). I lean on serif as use case is typically within white papers and heavy documentation.

When I think of mathematical fonts, I think of Computer Modern Roman which is the standard of LaTeX.

IBM Plex Serif would be a good basis.

inferno986return avatar Sep 29 '20 22:09 inferno986return

@mjabbink if you don't mind me chiming in:

  • It's fantastic to hear that you're planning covering Maths seriously :partying_face:
  • I would urge that serif be the basis for a comprehensive Maths character set, as that how I see the majority of maths typeset, and what I personally use for "serious maths stuff"
  • Would it also be possible just to say just design Mathematical Operators block (U+2200 – U+22FF) in sans-serif? This would be a useful jump in support IMO, and I think it can be said that that single block would give you the most "bang for your buck".

tecosaur avatar Sep 30 '20 03:09 tecosaur

@abrudz Cool project and yes it looks like Italic 12. The funding is not small. Doing the entire Math character set we’re looking to achieve is a lot of work and I think we’re doing with the Serif but need to make a decision there (sans or serif?). I lean on serif as use case is typically within white papers and heavy documentation.

Serif is standard in mathematics because readers need instantly to distinguish isolated glyphs, e.g., c from C (without being familiar with e.g., IBM Plex).

Earlier, you asked about desiderata for mathematical typography:

  • Küster, Johannes. Fonts for Mathematics.
  • Microsoft ClearType and Advanced Reading Technologies Group. Now Read this: The Microsoft ClearType Font Collection; Microsoft Corporation, 2004.
  • Mills, Ross and John Hudson (editors), with contributions by Richard Lawrence and Murray Sargent. Mathematical Typesetting: Mathematical and Scientific Typesetting Solutions from Microsoft. Microsoft Corporation 2007.
  • Rhatigan, Daniel (September 2007). Three Typefaces for Mathematics— The development of Times 4-line Mathematics Series569, AMS Euler, and Cambria Math (PDF). University of Reading (MA thesis).

Mathematics fonts have been designed for greater legibility under repeated photocopying and under coarse printing and displays and to help readers with visual impairments (e.g., age). Typography designers may find inspiration in these typefaces:

Small caps are used in LaTeX and in the most important LaTeX style files by major mathematical publishers, e.g, the American Mathematical Society (AMS) and the Society for Industrial and Applied Mathematics (SIAM) --- perhaps unwisely! IBM Plex has already increased the goodwill towards IBM among students of engineering and science. It would be difficult to overstate the desire of such students for a typeface that would have the breadth of typefaces of the Computer Modern family, e.g., with small caps.

JimEBlevins avatar Jul 24 '21 12:07 JimEBlevins

Also useful: Designing Math Fonts, presentation by Johannes Küster of Typoma (he made Minion Math) Designing.Math.Fonts.20040430-bachotex.pdf

kenmcd avatar Jul 24 '21 19:07 kenmcd

Thanks for all the info @StatisticalProgrammer

@tecosaur — We plan on using Plex Serif as the basis but will explore your recommendation for the Sans for Mathematical Operators block (U+2200 – U+22FF)

mjabbink avatar Jul 25 '21 23:07 mjabbink

@tecosaur — We plan on using Plex Serif as the basis but will explore your recommendation for the Sans for Mathematical Operators block (U+2200 – U+22FF)

In mathematics, sans serif is used for e.g., the transposition operator that is a superscript T or t. Sans fonts are especially useful for symmetric matrices and symmetric operators (following Parlett's use of only symmetric letters such as A, B, C for symmetric matrices). Parlett also typeset such letters in sans serif, for increased symmetry. (I is surprising how often my child's homework asks her to draw lines of symmetry in a serif letter, which is close to symmetric!)

Parlett's The Symmetric Eigenvalue Problem has been reprinted by SIAM, which makes its front matter freely available, including the thoughtful table of notation.

JimEBlevins avatar Jul 26 '21 00:07 JimEBlevins

@StatisticalProgrammer Yes, IBM Plex Math will be open source as is the entire Plex family (if we manage to get this project going!)

Extended Latin

Arabic Cyrillic Devanagari Greek Hebrew Japanese Korean Thai

mjabbink avatar Jul 26 '21 15:07 mjabbink

Fingers crossed we begin Q1 2022. It’s looking good so I’m very optimistic.

mjabbink avatar Nov 02 '21 17:11 mjabbink

Developing the IBM Plex Sans Math font would be also a great thing since currently we only have one OpenType Math sans serif font: Fira Math.

I would also very much like to suggest the design of lowercase script alphabet.

kauesena avatar Nov 02 '21 23:11 kauesena

@abrudz We’ll gladly accept anything you’re willing to donate to the Plex Math cause!

mjabbink avatar Nov 03 '21 15:11 mjabbink

@mjabbink There's no donation button on this repo. How might we donate, and how much would be reasonable? If you prefer, you can contact me directly on adam@ with the same domain as www.dyalog.com

abrudz avatar Nov 03 '21 15:11 abrudz

@mjabbink After raising the request #124 (more than 300 tickets and 4 years ago) I'm little disappointed about the speed this takes related to the announcements for math. Math is really connecting all scientists around the world, while other languages are "just" locally relevant. So starting with little math gets awareness around the whole world.

I would appreciate, if you start with any set of math symbols and improve stepwise, just to get it going. Looking into the key-Infrastructure of scientific math-workers is LaTeX, may be you try kicking of very reduced with the Computer Modern Font Elements for Math, Symbols and extended Symbols (Knuth D.E., Computers & Typesetting, Volume E, 1986). Then you can benefit of the strong community having discusses the advantages of those initial works over the years and they let you know in comparison on tons of documents, when or where you might or need to improve to make it better by Plex. Waiting more years will not help to improve acceptance in scientific areas and as you don't start small, you will get no feedback on how it works for scientific writing and publishing.

On the other hand, as you get to the point, that it has no impact to improve existing math fonts by IBM Plex, let us know. Or ask your community ahead, for more tickets to make aware, why math is needed in the IBM Plex Font Family.

As there is a group working on LaTeX3 future releases, you might benefit of that team, getting influenced and improving, what they are aware of, related to math font handling.

SieDa avatar Feb 13 '22 14:02 SieDa

I would like to express gratitude for the excellent typeface family that IBM has given to the world. I am grateful to the team at IBM and their collaborators for their great work. I appreciate that IBM has tried to support a mathematics font.

JimEBlevins avatar Feb 13 '22 16:02 JimEBlevins

@JimEBlevins I fully agree to the first two points and really work with Plex on a daily bases for different targets since the first days (4+ years - #124). Getting such 3x 64 font elements to start working with LaTeX as in early days (35+ years), would really make my day. Even if other fonts like Lucida provide more elements, there is a rupture in style regarding the rest of the text set in IBM Plex and more worth as you mix it inline, take it into charts or integrate it into web-sites.
To keep in line with IBM Plexness [] IBM Poster, design Paul Rand, 1985: "He who stops beeing better, stops beeing good". That just fits into those early years of TeX by Donald E. Knuth.

SieDa avatar Feb 13 '22 17:02 SieDa