From: Ben Harris Date: Sun, 2 Jun 2024 09:45:37 +0000 (+0100) Subject: A load more large mathematical operators X-Git-Tag: bedstead-002.007~52 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~bjharris/git?a=commitdiff_plain;h=148e6b657e6faf6aef4b6af914db8edb3c9e0395;p=bedstead-debian.git A load more large mathematical operators The TeX "unicode-math" package conveniently lists a bunch of characters that it treats as the kind of large operator that takes limits. Bedstead has a standard treatment for these, stretching them over the full height of the character cell. So I've drawn some that are in Plain TeX or otherwise reasonably easy. One exception is the n-ary square cap and cup operators because I can't work out how to distinguish them from the n-ary product and coproduct. --- diff --git a/bedstead.c b/bedstead.c index c3c8b07..deecf11 100644 --- a/bedstead.c +++ b/bedstead.c @@ -1440,6 +1440,8 @@ static struct glyph { {{000,021,012,004,000,037,000,000,000}, U(22BB) }, /* xor */ {{000,037,000,004,012,021,000,000,000}, U(22BC) }, /* nand */ {{000,037,000,021,012,004,000,000,000}, U(22BD) }, /* nor */ + {{004,004,004,012,012,012,021,021,021}, U(22C0) }, /* n-ary logical and */ + {{021,021,021,012,012,012,004,004,004}, U(22C1) }, /* n-ary logical or */ {{016,021,021,021,021,021,021,021,021}, U(22C2) }, /* n-ary intersection */ {{021,021,021,021,021,021,021,021,016}, U(22C3) }, /* n-ary union */ {{000,004,012,021,012,004,000,000,000}, U(22C4) }, /* diamond operator */ @@ -1822,6 +1824,8 @@ static struct glyph { /* Miscellaneous mathematical symbols-A */ {{004,004,004,016,004,004,004,000,000}, U(27CA) }, /* vert bar horiz stroke */ {{000,025,025,025,025,016,000,000,000}, U(27D2) }, /* upward element of */ + {{004,004,004,004,004,004,004,004,037}, U(27D8) }, /* large up tack */ + {{037,004,004,004,004,004,004,004,004}, U(27D9) }, /* large down tack */ {{000,000,010,027,010,000,000,000,000}, U(27DC) }, /* left multimap */ {{002,002,004,010,004,002,002,000,000}, U(27E8) }, /* left angle bracket */ {{010,010,004,002,004,010,010,000,000}, U(27E9) }, /* right angle bracket */ @@ -1878,6 +1882,14 @@ static struct glyph { /* Supplemental mathematical operators */ {{016,021,021,021,025,021,021,021,016}, U(2A00) }, /* n-ary circled dot */ {{016,021,025,025,037,025,025,021,016}, U(2A01) }, /* n-ary circled plus */ + {{016,021,021,033,025,033,021,021,016}, U(2A02) }, /* n-ary circled times */ + {{021,021,021,021,025,021,021,021,016}, U(2A03) }, /* n-ary union dot */ + {{021,021,025,025,037,025,025,021,016}, U(2A04) }, /* n-ary union plus */ + {{002,005,004,004,037,004,004,024,010}, U(2A0D) }, /* integral with bar */ + {{002,005,004,037,004,037,004,024,010}, U(2A0E) }, /* integral w/dbl bar */ + {{002,005,004,037,025,037,004,024,010}, U(2A16) }, /* integral w/square */ + {{002,005,004,016,025,025,004,024,010}, U(2A19) }, /* integral w/cap */ + {{002,005,004,025,025,016,004,024,010}, U(2A1A) }, /* integral w/cup */ {{004,004,037,004,004,000,004,000,000}, U(2A25) }, /* plus dot */ {{000,000,000,037,000,004,000,000,000}, U(2A2A) }, /* minus dot */ {{000,020,000,037,000,001,000,000,000}, U(2A2B) }, /* minus falling dots */ @@ -1935,6 +1947,7 @@ static struct glyph { {{025,025,025,025,025,025,025,000,000}, U(2AF4) }, /* triple v bar operator */ {{025,025,025,037,025,025,025,000,000}, U(2AF5) }, /* triple v bar h stroke */ {{025,025,025,025,025,025,025,025,025}, U(2AFC) }, /* large triple vert bar */ + {{016,012,012,012,012,012,012,012,016}, U(2AFF) }, /* n-ary white vert bar */ /* Miscellaneous symbols and arrows */ {{000,025,000,021,000,025,000,000,000}, U(2B1A) }, /* dottedsquare */