diff options
author | Karl Berry <karl@freefriends.org> | 2020-12-21 22:11:41 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2020-12-21 22:11:41 +0000 |
commit | c23203c16457db67087d183b7911a13a4ab67a38 (patch) | |
tree | 49cbc7096b9e095b7c50bab69d8593acaceb4835 /Master/texmf-dist | |
parent | fc9f80df3b4160ff1a58170d6e3a7cf523011757 (diff) |
newtx (21dec20)
git-svn-id: svn://tug.org/texlive/trunk@57192 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
26 files changed, 545 insertions, 200 deletions
diff --git a/Master/texmf-dist/doc/fonts/newtx/README b/Master/texmf-dist/doc/fonts/newtx/README index da48ba2a431..a3913fff073 100644 --- a/Master/texmf-dist/doc/fonts/newtx/README +++ b/Master/texmf-dist/doc/fonts/newtx/README @@ -1,10 +1,16 @@ This package, initially based on txfonts, provides many fixes and enhancements to the txfonts package, splitting it into two separate packages---newtxtext and newtxmath, which may be run independently of one another. It provides scaling, improved metrics, and other options. In particular, newtxmath offers a libertine option which substitutes Linux Libertine (provided with TeXLive and MikTeX) italic and Greek letters for the default Times letters, providing a good match for the Libertine text font, which is heavier than Computer Modern but lighter than Times, and in my experience, looks very sharp and clear on the screen. -Current version: 1.632 2020-11-12 +Current version: 1.640 2020-12-20 This material is subject to the LaTeX Project Public License. See http://www.ctan.org/license/lppl1.3 for the details of that license. +Changes in version 1.640 +1. Added several Blackboard Bold Greek glyphs. +2. Substantially modified the handling of Blackboard Bold and Math Script, both simplifying code and correctly conflicts with bolding macros and hyperref. +3. Corrected newtx-subs.tex, which had become corrupted in recent distributions. (Thanks John Lienhard.) +4. All text packages having an "enhanced" math option using newtxmath are now at the same level as far as available options and macros are concerned. + Changes in version 1.632 Added two missing map file entries. diff --git a/Master/texmf-dist/doc/fonts/newtx/newtxdoc.pdf b/Master/texmf-dist/doc/fonts/newtx/newtxdoc.pdf Binary files differindex 08cbd72feb1..d5eeafd87b0 100644 --- a/Master/texmf-dist/doc/fonts/newtx/newtxdoc.pdf +++ b/Master/texmf-dist/doc/fonts/newtx/newtxdoc.pdf diff --git a/Master/texmf-dist/doc/fonts/newtx/newtxdoc.tex b/Master/texmf-dist/doc/fonts/newtx/newtxdoc.tex index ac15fac1b96..130853a1214 100644 --- a/Master/texmf-dist/doc/fonts/newtx/newtxdoc.tex +++ b/Master/texmf-dist/doc/fonts/newtx/newtxdoc.tex @@ -1,5 +1,6 @@ % !TEX TS-program = pdflatexmk -\documentclass[11pt]{article} +\def\fsc{11pt} +\documentclass[\fsc]{article} \usepackage[margin=1in]{geometry} \usepackage[parfill]{parskip}% Begin paragraphs with an empty line rather than an indent \pdfmapfile{=newtx.map} @@ -15,7 +16,7 @@ \usepackage{fonttable} %SetFonts % newtxtext text and newtxmath -\usepackage{amsmath,amsthm} +\usepackage{amsthm} \newtheoremstyle{oldplain} {\topsep} % ABOVESPACE {\topsep} % BELOWSPACE @@ -34,7 +35,7 @@ \usepackage[T1]{fontenc} \usepackage[varqu,varl]{zi4} %\traceon -\usepackage{newtxmath} +\usepackage{newtxmath} % default choice of \mathbb %\traceoff %\useosf \DeclareMathSymbol{\bbZ}{\mathord}{lettersA}{218} @@ -43,7 +44,12 @@ \makeatletter \DeclareMathSymbol{\Sumop}{\mathop}{largesymbols}{"50} \makeatother +% some ad-hoc symbol fonts +\font\fAMSa=msam10 at \fsc +\font\fAMSb=msbm10 at \fsc + \usepackage{array,booktabs} +\usepackage{hyperref} \title{New TX font package} \author{Michael Sharpe} \date{\today} % Activate to display a given date or no date @@ -67,7 +73,7 @@ The {\tt newtx} package differs from {\tt txfonts} in the following ways: the new package is split into separate text and math packages that do not need to be used in conjunction; \item both text and math packages offer options not present in the original package, described below, including the option to use \textsf{libertine} Latin and Greek letters to replace \textsf{Times}, as well as a similar option \textsf{minion}; \item wide accent glyphs have been corrected (they should have zero depth) so that they no longer collide with the underlying glyph; -\item for those who do not like the integral in \textsf{txfonts}, an emboldened version of the Computer Modern integral is made available, matching the weight of the \textsf{txfonts} symbols; +\item for those who do not like the integral in \textsf{txfonts}, an emboldened version of the Computer Modern integral is made available, matching the weight of the \textsf{txfonts} symbols---this is no longer available since the original \textsf{txfonts} integral have been replaced; \item an upright partial derivative symbol has been added, named \verb|\uppartial|; \item there is now an option to get braces more pleasing to older eyes; \item macros have been added to bring the calls to Greek symbols more into conformity with \textsc{psnfss} and Mathtime Pro~2; @@ -227,7 +233,7 @@ Don't use these unless you know what you're doing. \item (new in version 1.55) {\tt stix2} loads different versions of math italic and bold math italic based on \textsf{StixTwoMath} rather than \textsf{Times}---the {\tt varg} and {\tt varvw} options are disabled in this case. See the documentation to the {\tt SticksToo} package, which contains more details and some math samples. \item (new in version 1.60) {\tt ebgaramond} loads different versions of math italic and bold math italic based on \textsf{EBGaramond} rather than \textsf{Times}---the {\tt varg} and {\tt varvw} options are disabled in this case. See the end of Appendix 2 for an example of a preamble. \item (new as of version 1.629) {\tt noto, notosans} load different versions of math italic and bold math italic based on \textsf{NotoSerif}, \textsf{NotoSans} rather than \textsf{Times}. There are some intricacies involved, for which there is a separate package, {\tt notomath}, that tries to offer as simple an interface as it was possible for me to devise. -\item (new in version 1.62) {\tt nc, ncf} load different versions of math italic and bold math italic based on \textsf{ScholaX} (\textsf{New Century Schoolbook}) rather than \textsf{Times}---the {\tt varg} and {\tt varvw} options are disabled in this case. The difference is that o[tion {\tt nc} loads math Greek letters from {\tt newtxmath}, while option {\tt ncf} loads math greek from an adaptation of {\tt fourier} Greek. +\item (new in version 1.62) {\tt nc, ncf} load different versions of math italic and bold math italic based on \textsf{ScholaX} (\textsf{New Century Schoolbook}) rather than \textsf{Times}---the {\tt varg} and {\tt varvw} options are disabled in this case. The difference is that option {\tt nc} loads math Greek letters from {\tt newtxmath}, while option {\tt ncf} loads math greek from an adaptation of {\tt fourier} Greek. \item {\tt minion} loads different versions of math italic and bold math italic based on \textsf{MinionPro} rather than \textsf{Times}---the {\tt varg} and {\tt varvw} options are disabled in this case, as the equivalent variant forms are made available by default---see the extended discussion below; \item {\tt garamondx} loads different versions of math italic and bold math italic based on \textsf{garamondx} rather than \textsf{Times}---the {\tt varg} and {\tt varvw} options are disabled in this case, as the equivalent variant forms are made available by default. \item {\tt baskervaldx} (or {\tt Baskervaldx}) loads different versions of math italic and bold math italic based on \textsf{Baskervaldx} rather than \textsf{Times}---the {\tt varg} and {\tt varvw} options are disabled in this case, as the equivalent variant forms are made available by default. @@ -275,8 +281,8 @@ causes no error, unlike the same combination with {\tt txfonts}, but does nothin \item The option {\tt cmbraces} instructs {\tt newtxmath} to ignore the brace collections from {\tt txfonts}, substituting a collection based on thickened versions of the Computer Modern braces, which I find much easier to distinguish from other delimiters. This works quite well in regular weight but looks a bit clunky in bold. The option {\tt bigdelims}, which superseded {\tt cmbraces}, is now not necessary---it is the default as of version 1.5. \item Option {\tt nonewtxmathopt} (or {\tt scale}, a mistake I cannot now erase) causes newtxmath to not make use of the optical math sizes (7{\tt pt}, 5{\tt pt}), as preferred by some. \item Option {\tt subscriptcorrection} enables the special spacing of some subscripts. (The default is {\tt nosubscriptcorrection}.) -\item The \textsf{newtxmath} package contains three different Blackboard Bold alphabets, where original \textsf{txfonts} contained two. The default, triggered by \verb|\mathbb{}|, takes its glyphs from the font which replaces {\tt msbm} and has the same overall appearance of a hollowed-out text font, which I find neither bold nor blackboard-like. The second option, taken from \textsf{txfonts}, is triggered by \verb|\varmathbb{}|, is more geometric and, in my opinion, preferable but not optimal. The option {\tt varbb} makes \verb|\mathbb{}| synonymous with \verb|\varmathbb{}|. The third option is the double-struck glyphs from the STIX collection. See the expanded discussion below. -\item {\tt noOT1} affects only those text-math combinations where {\tt operators} is defined by default to OT1 with Greek uppercase letters. It causes {\tt operators} to keep the same encoding as in tex, allowing operatornames to use accented charaters, but losing Greek uppercase. +\item The \textsf{newtxmath} package contains three different Blackboard Bold alphabets, where the original \textsf{txfonts} contained two. The default, triggered by \verb|\mathbb{}|, takes its glyphs from the font which replaces {\tt msbm} and has the same overall appearance of a hollowed-out text font, which I find neither bold nor blackboard-like. The second option, taken from \textsf{txfonts}, is triggered by \verb|\varmathbb{}|, is more geometric and, in my opinion, preferable but not optimal. The option {\tt varbb} makes \verb|\mathbb{}| synonymous with \verb|\varmathbb{}|. The third option is the double-struck glyphs from the STIX collection. See the expanded discussion below. +\item {\tt noOT1} affects only those text-math combinations where {\tt operators} is defined by default to OT1 with Greek uppercase letters. It causes {\tt operators} to keep the same encoding as in tex, allowing operatornames to use accented characters, but losing Greek uppercase. \item {\tt nosymbolsc} causes the package to not load the {\tt symbolsC} fonts, saving a math family. (This font contains mostly exotic symbols, along with some very useful, commonly used symbols like \verb|\coloneq| $\coloneq$, \verb|\eqcolon| $\eqcolon$, \verb|\notin| $\notin$, \verb|\notni| $\notni$, \verb|\neq| $\neq$, \verb|\nsubset| $\nsubset$ and \verb|\nsupset| $\nsupset$, but these have been moved (virtually) to {\tt lettersA} so they may continue to be used even if you use the option {\tt nosymbolsc}.) If this option is selected, then, as of version 1.53, new definitions are made for the missing negated symbols. The package {\tt centernot} is now required. \item {\tt amssymbols} (the default) and {\tt noamssymbols} determine whether the {\tt txfonts} versions of the \textsc{ams} symbols ({\tt AMSm}) are loaded---if so, they override previous settings in {\tt amsmath}. If you use the option {\tt noamssymbols}, then \verb|\mathbb{}| is set to mean the same as \verb|\varmathbb{}|. (One advantage of {\tt noamssymbols} is that you save two of your precious math families for other purposes, such as setting a couple of external math alphabets by means of the \textsf{mathalfa} package.) \textbf{Important note:} if you load an AMS class, like {\tt amsart}, then some trickery will be involved. The AMS classes have an option, {\tt noamsfonts} which currently (2017) does not work as advertised, but is fixed in \TeX Live 2018. It is supposed to prevent the loading of {\tt AMSa} and {\tt AMSb}, which waste two slots. The following workaround seems like a reasonable stopgap until then. \begin{verbatim} @@ -343,7 +349,7 @@ so that \verb|\BIA| works as expected in all math styles (display, text, script, \usepackage[T1]{fontenc} % best for Western European languages \usepackage{textcomp} % required to get special symbols \usepackage[varqu,varl]{inconsolata}% a typewriter font must be defined -\usepackage{amsmath,amsthm}% must be loaded before newtxmath +\usepackage{amsthm}% must be loaded before newtxmath \usepackage[libertine,vvarbb]{newtxmath} \usepackage[scr=rsfso]{mathalfa} \usepackage{bm}% load after all math to give access to bold math @@ -375,7 +381,7 @@ The following examples illustrate some general models, the most unintuitive bein \usepackage[T1]{fontenc} \usepackage[scaled=.85]{beramono}% used only by \mathtt \usepackage[type1]{cabin}% used only by \mathsf -\usepackage{amsmath,amsthm}% must be loaded before newtxmath +\usepackage{amsthm}% must be loaded before newtxmath \usepackage[libertine]{newtxmath} % loads minlibertine because no other Roman text package was specified % so that \mathrm and \mathbf also use minlibertine @@ -395,7 +401,7 @@ The next example is similar, but in math mode, numbers, basic symbols, operator \renewcommand{\rmdefault}{fbb-LF}% Roman font for use in math mode \usepackage[scaled=.85]{beramono}% used only by \mathtt \usepackage[type1]{cabin}% used only by \mathsf -\usepackage{amsmath,amsthm}% load before newtxmath +\usepackage{amsthm}% load before newtxmath \usepackage[libertine,vvarbb]{newtxmath} % does not load minlibertine because another Roman text package was specified \usepackage[scr=rsfso]{mathalfa} @@ -524,42 +530,110 @@ allows you to write \verb|\xyvec{x}{+y}| to output $\xyvec{x}{+y}$; \end{itemize} (The last two assume that you have effectively set the option {\tt uprightGreek}---the default.) -\section{Blackboard bold} -As mentioned briefly above, the package now has a new blackboard bold alphabet built-in, and some new macros to call the non-default versions. To summarize, the problems are: +\section{Blackboard Bold} +Much of what is in this section is a repetition of material from other parts of the document, more expanded and with more emphasis on the differences between the available Blackboard Bold alphabets. It also reflect substantive changes in {\tt newtxmath.sty} version 1.640 that have changed for the better the handling of math alphabets such as \verb|\mathbb| and \verb|\mathscr|. The new handlers maintain consistency of the printed output with prior versions, while greatly improving interactions with the {\tt bm} and {\tt hyperref} packages. + +When \textsc{Cost} is mentioned in the following discussion, this is to remind you that you have a total of only sixteen math families available to any document, and it is easy to run out, so I provide the \textsc{Cost} of an option as the number of math families in regular weight only that this would involve. (If you make also use of a bold symbol from one of those families, the \textsc{Cost} could double.) + +In the \TeX\ world, Blackboard Bold appeared first in the {\tt amstex} package, with {\tt msam} containing Gothic and {\tt msbm} containing Blackboard Bold. The only weight provided was regular. Those AMS additions, referred to below as \textsf{AMSadd}, were designed to blend well with Computer Modern, with geometric symbols vertically centered on its math axis and line widths matching those in Computer Modern. They are not good matches for the math axis and line width in {\tt newtx}. (\textsc{Cost}=$2$.) + +In the original {\tt txfonts}, the \textsf{AMSadd} fonts \verb|msam*| and \verb|msbm*| were replaced by {\tt AMSa} and {\tt AMSb}, with vertical positions and line widths appropriate to Times, each available in regular and bold. (\textsc{Cost}=$2$.) In the {\tt newtx} package, these two seven bit fonts are replaced by one eight bit font. (\textsc{Cost}=$1$.) In the sequel, this will be called \textsf{TXAMSadd}. The Gothic and Blackboard Bold alphabets they contain were not substantially heavier that those in the \textsf{AMSadd} fonts, but the shapes were somewhat different. For example, Blackboard Bold A in the original AMS additions and in the original {\tt txfonts} look as followed, scaled up by a factor of five:\\ +\scalebox{5}{\hbox{\fAMSb\char65 }} {\scalefont{5}{$\mathbb{A}$}}\\ +In both, there are areas of the glyphs where the narrow gaps between the outlines do not render well at normal text sizes, making for uneven gray blotched areas. In my opinion, neither is good for high quality work. Technically, both work work well with respect to \verb|hyperref| and the macros \verb|\bm|, \verb|\boldmath| and \verb|\boldsymbol|. + +The following describe a number of common scenarios relative to the AMS font symbols ans show how to minimize additional \textsc{Cost}. +\begin{itemize} +\item +\textbf{I need neither \textsf{AMSadd} nor \textsf{TXAMSadd}:} \begin{itemize} \item -the default, called by \verb|\mathbb| is quite ugly and indistinct, but does cooperate with the bolding macros \verb|\bm| and \verb|\boldsymbol|; -\item the original variant form called with the macro \verb|\varmathbb| is better, but the macro conflicts with \verb|\bm|. (In fact, the bold version is identical to the regular version, but it is still not right that it conflicts with them.) The problem stems from the part of the definition of \verb|\varmathbb| which allows you to insert an argument with more than one character, like \verb|\varmathbb{ABC}|. Another problem with \verb|\varmathbb| is that it conflicts with {\tt hyperref}---if you use the macro in a moveable argument such as a section heading, you will provoke a \LaTeX\ error message. The solution is to use macros that take a single character as argument, like \verb|\vmathbb{A}| and \verb|\vvmathbb{A}|, which both cooperate with {\tt hyperref}. -\item the third, new, alphabet is borrowed from the STIX fonts---it is sharp and quite clear, geometric in design. The macro \verb|\vvmathbb| provided to access this alphabet. The new option {\tt vvarbb} effectively makes \verb|\mathbb| mean the same as \verb|\vvmathbb|. -(The reason for including these in the \textsf{newtx} package rather than calling them from the \textsf{mathalfa} package is that \textsf{newtx} leaves very little space for new math symbol fonts and math alphabets, and this way requires no additional such resources. +Do not load {\tt amssymb}, otherwise \textsf{AMSadd} will be loaded. +\item When loading {\tt newtxmath}, include the option {\tt noamssymbols} to prevent \textsf{TXAMSadd} from loading. +\item If you use one of the AMS classes ({\tt amsart}, {\tt amsbook}, {\tt amsreport}), the default is for that class to load {\tt amsfonts}, but there is a class option {\tt noamsfonts} to prevent this. +\end{itemize} +\item +\textbf{I want to use \textsf{TXAMSadd}, not \textsf{AMSadd}:} +\begin{itemize} +\item +Do not load {\tt amssymb}, otherwise \textsf{AMSadd} will be loaded uselessly, additional \textsc{Cost}=$2$. +\item When loading {\tt newtxmath}, do not include the option {\tt noamssymbols}, so that \textsf{TXAMSadd} will load. +\item If you use one of the AMS classes ({\tt amsart}, {\tt amsbook}, {\tt amsreport}), include the class option {\tt noamsfonts} to prevent \textsf{AMSadd} from loading. +\end{itemize} +\item +\textbf{I want to use \textsf{AMSadd}, not \textsf{TXAMSadd}:} +\begin{itemize} +\item If you use one of the AMS classes ({\tt amsart}, {\tt amsbook}, {\tt amsreport}), do not include the class option {\tt noamsfonts} that prevents \textsf{AMSadd} from loading. Otherwise, load {\tt amssymb}. +\item When loading {\tt newtxmath}, include the option {\tt noamssymbols}, so that \textsf{TXAMSadd} will {\bf NOT} load. +\end{itemize} +\end{itemize} +%Be aware that you may incur additional \textsc{Cost} inadvertently if you load both {\tt amssymb} and {\tt newtxmath}.The following points should be kept in mind when constructing or modifying your preamble involving {\tt newtxmath}: +%\begin{itemize} +% +%{\tt newtxmath} loads the {\tt amsmath} package, so there is no need to explicitly load it. +%\item +%\item Loading the class {\tt amsfonts} is usually an error if you later load {\tt newtxmath}, simply wasting precious math families. +%\item {\tt newtxmath} loads by default the +% \textsf{TXAMSadd} fonts as a replacement for \textsf{AMSadd}, but has an option {\tt noamssymbols} to prevent this. +% \end{itemize} +%More particularly, if you must use one of them, choose the one specifically designed for {\tt newtx} by adopting the following rules. +%\begin{itemize} +%\item do not load the {\tt amssymb} package---the effect would be to add two font math families (four if you use bold) which are in fact intended as a math for Computer Modern, not Times---loading {\tt newtxmath} by default loads replacements suited to Times, and making use of only one math family (provided you make no use of any bold symbol from that font family.) +%\end{itemize} + +Newtxmath now has three built-in blackboard bold alphabets, along with package options and macros to call them. In summary: +\begin{itemize} +\item In the absence of one of the options {\tt varbb}, {\tt vvarbb}, and assuming you did not block loading of both \textsf{AMSadd} and \textsf{TXAMSadd}, \verb|\mathbb| will use the alphabet described in the preceding paragraphs, otherwise it will use the alphabet described in the following item. +\item +The second possible alphabet may be specified by the option {\tt varbb}, looking like $\varmathbb{ABC...k}$. It does cooperate with the bolding macro \verb|\bm| and with \verb|hyperref| but, in my opinion, it has appearance problems.It has all uppercase letters, but its only lowercase glyph is $\varmathbb{k}$. The bold version is identical to the regular version. +\item +The third possibility is specified by the option {\tt vvarbb}, looking like $\vvmathbb{ABC...Za...z0...9}$. It cooperates with the bolding macro \verb|\bm| and with \verb|hyperref| and, in my opinion , looks better than the other two. It is taken from the original STIX math fonts. There is a slightly heavier bold version. +\item No matter which alphabet option you chose, you may use symbols from of of the variant alphabets by means of the macros \verb|\vmathbb|, \verb|\vvmathbb|: e.g., \verb|\vmathbb{N}| gives $\vmathbb{N}$ and \verb|\vvmathbb{C}| gives $\vvmathbb{C}$. Note that for consistency with earlier usage in {\tt newtxmath}, \verb|\varmathbb| is a synonym for \verb|\vmathbb|. +\item In each of the two variant alphabets, there are digits as well as dotlessi and dotlessj, all taken from the STIX Blackboard Bold alphabets. \item \textbf{Important note:} Under the option {\tt stix2}, there are still three blackboard fonts but the macro \verb|\vmathbb| now points to glyphs from {\tt DSSerif}, a serifed double-struck family that replaces the original variant that is still available under other options. With {\tt stix2}, the {\tt dotlessi} and {\tt dotlessj} glyphs from the {\tt DSSerif} font are available as \verb|$\imathbbs$| and \verb|$\jmathbbs$|, no matter which blackboard bold option you chose. \end{itemize} -One interesting feature of the new alphabet is that it contains blackboard bold numbers, of which $0$ and $1$ will likely be the most useful, perhaps as operator names. I find $\vvmathbb{1}$=\verb|$\vvmathbb{1}$| useful in specifying an indicator, AKA characteristic function. Here are some examples: - +One interesting feature of the third Blackboard Bold alphabet is that it contains blackboard bold numbers, of which $0$ and $1$ will likely be the most useful, perhaps as operator names. I find $\vvmathbb{1}$=\verb|$\vvmathbb{1}$| useful in specifying an indicator, AKA characteristic function. Here are some examples that hold except with the {\tt stix2} option: \begin{center} \begin{tabular}{@{} llll @{}} \toprule & Regular & Bold & Remarks \\ \midrule -Default & \verb|$\mathbb{R}$| $\mathbb{R}$& \verb|$\bm{\mathbb{R}}$| $\bm{\mathbb{R}}$\\ -Variant 1 & \verb|$\varmathbb{R}$| $\varmathbb{R}$ & & Bold is same as regular \\ -$\dots$or & \verb|$\vmathbb{R}$| $\vmathbb{R}$ & & Single char.\ argument\\ -Variant 2 & \verb|$\vvmathbb{R}}$| $\vvmathbb{R}$& \verb|{\boldmath $\vvmathbb{R}$}| {\boldmath $\vvmathbb{R}$} & Make a macro for this! \\ +Default & \verb|$\mathbb{R}$| $\mathbb{R}$& \verb|$\bm{\mathbb{R}}$| $\bm{\mathbb{R}}$& Bold has more interior space\\ + & \verb|$\mathbb{R}$| $\mathbb{R}$& \verb|{\boldmath$\mathbb{R}$}| {\boldmath$\mathbb{R}$} & Also ``bold''\\ +Variant 1 & \verb|$\varmathbb{R}$| $\varmathbb{R}$ & \verb|$\bm{\varmathbb{R}}$|$\bm{\varmathbb{R}}$ & Bold glyphs same as regular \\ +$\dots$or & \verb|$\vmathbb{R}$| $\vmathbb{R}$ & \\ +& \verb|$\varmathbb{2}$| $\varmathbb{2}$ & \verb|$\bm{\varmathbb{2}}$| $\bm{\varmathbb{2}}$ & Bold digits are now bolder \\ + Variant 2 & \verb|$\vvmathbb{R}$| $\vvmathbb{R}$& \verb|$\bm{\vvmathbb{R}}$| $\bm{\vvmathbb{R}}$ & Truly bold! \\ + & \verb|$\vvmathbb{1}$| $\vvmathbb{1}$& \verb|$\bm{\vvmathbb{1}}$| $\bm{\vvmathbb{1}}$ & \\ + & \verb|$\vvmathbb{\Gamma}$| $\vvmathbb{\Gamma}$& \verb|$\bm{\vvmathbb{\Gamma}}$| $\bm{\vvmathbb{\Gamma}}$ & Also $\vvmathbb{\gamma}$, $\vvmathbb{\Pi}$, $\vvmathbb{\pi}$ \\ % & $\bm{\mathbb{AB}}$ & $\bm{\vmathbb{A}\vmathbb{B}}$ & $\bm{\vvmathbb{A}\vvmathbb{B}}$ \\ \bottomrule \end{tabular} \end{center} -The macros \verb|\vmathbb| and \verb|\vvmathbb| have been substantially rewritten as of version 1.55 and can now accept strings as arguments rather than just single characters. At some point in time, the \verb|\bm| and \verb|\boldsymbol| macros stopped working with the prior versions of these macros, and that remains a problem with the new versions. If you need only a few blackboard bold symbols, it may be better practice to define macros for each, including bold versions you might need. E.g., the your preamble: +The macros \verb|\varmathbb| and \verb|\vvarmathbb| have been substantially rewritten as of version 1.640. Both accept strings as arguments rather than just single characters, and pass through characters not in the Blackboard Bold alphabet. + +Revision 1.640 makes a symbol definition for every Blackboard Bold glyph, like \begin{verbatim} -\let\bbZ\undefined -\DeclareMathSymbol{\bbZ}{\mathord}{lettersA}{218} % Z may not always be in this slot +\DeclareMathSymbol{\m@thbbch@rA}{\mathord}{lettersA}{132} +\DeclareMathSymbol{\m@thbbch@rimath}{\mathord}{lettersA}{125} \end{verbatim} -Then, \verb|\bm| will correctly understand +and then parses the argument of, e.g., \verb|\varmathbb|, concatenating the prefix \verb|\m@thbbch@r| with the name of each character in the argument successively. If the resulting macro exists, that definition applies, otherwise the character is passed through to be rendered by the normal means. For example, \verb|$\vvmathbb{A\imath \alpha\pi c}$| renders as $\vvmathbb{A\imath \alpha\pi c}$. + +The prefix \verb|\m@thbbch@r| is a carry-over from the txfonts---other alphabets use the simple forms, like \verb|\tx@Bbb| for the \verb|\vvmathbb| letters, \verb|\tx@Scr| for script letters and \verb|\tx@UScr| for upright script letters. So, for example, we have +\begin{verbatim} +\tx@BbbA % slot 193 in lettersA +... +\tx@BbbZ % slot 218 in lettersA +\tx@Bbba % slot 225 in lettersA +\tx@Bbbz % slot 250 in lettersA +\end{verbatim} +The corresponding digits are named \begin{verbatim} -\bbZ\;\bm{\bbZ} +\tx@BbbZero % slot 43 in lettersA +... +\tx@BbbNine % slot 52 in lettersA \end{verbatim} -and render it as -\[\bbZ\;\bm{\bbZ}\] +which may be \verb|\let| to more convenient forms just as above: e.g., \verb|\let\BBNine\tx@BbbNine| while in a \verb|\makeatletter| block. + \section{Samples from free Times and Libertine packages} \textsc{TXFONTS:}\\ @@ -737,26 +811,19 @@ $\smallointctrclockwise$ & \verb|$\smallointctrclockwise$|& $\ointctrclockwise$ \verb|\bulletSS| $\quad\bulletSS$\\ \verb|\bulletSSS| $\quad\bulletSSS$\\ \verb|\primeS| $\quad\primeS$ (cf. \verb|\prime| $\quad\prime$)\\ - \item New macros \verb|\setSYdimens| and \verb|\setEXdimens| allow experts to modify some math font dimensions. - \end{itemize} - \def\jj{\mkern-3mu j} - \section{Appendix 2: Changes made in version 1.60} Versions of {\tt newtx} dated from September, 2019 (1.60 for {\tt newtxmath} make some quite substantial changes, mostly to math mode. - \section{Goals} Spurred by work of Ross Moore to provide means of generating archivable pdf using {\tt pdflatex}, the main goal was to change {\tt newtx} and {\tt newpx} to meet the requirements for satisfying the {\tt PDF/A-1b} standards by using an appropriate preamble involving the {\tt pdfx} package and other unicode mapping files. Making these changes gave me the opportunity to organize the source files to make them more manageable in future revisions. A further goal whose time seemed ripe was to rework the spacing of math letters, both Roman and Greek, so they behaved better in superscripts and subscripts. This did not turn out to be so easy. The problem is illustrated by math italic j. If you don't give it enough extra space on the left, it will likely collide with the D in rendering \verb|$D^j$|. On the other hand, if you do give it enough space on the left, it will look bad as a subscript, appearing too far right. A final goal was to make better use of the remaining space in some of the math fonts by placing some math alphabets in them, avoiding perhaps a waste of those precious sixteen math families. - \section{The important changes} The following changes were made to both {\tt newtx} and {\tt newpx}. - \subsection{Archivability} Some of the individual font files from which the math fonts are built turned out to have some fairly minor structural issues. These have all been corrected. The more major issue was the lack of unicode mapping for all characters in the fonts. For the symbol and math extension fonts, this issue was largely solved by Ross Moore's {\tt glyphtounicode} files that are now accessible as part of TeXLive and MiKTeX. The main problem was the math alphabets like math italic, bold math italic, upright Greek and slanted Greek, all of which have now been assigned their own unicode points. For all of these, I constructed new fonts using unicode names for the glyphs, then made \textsf{fontinst} scripts that renamed those unicode values to the original simple names as used in the encoding files so that I could use my old encoding and adjustment files. This exercise has now been carried out for {\tt newtxmath}, {\tt newpxmath}, {\tt newtxmath/libertine}, {\tt newtxmath/cochineal}, {\tt newtxmath/stix2}, {\tt newtxmath/xcharter} and {\tt newtxmath/erewhon.} Each of these can now be considered to have an ``enhanced'' status that allows them to share all the new assets described below. The other packages which may be specified as an option to {\tt newtxmath} (e.g., {\tt baskervaldx, baskervillef}) must be considered for the moment to be ``unenhanced'' and able to share only some of the new assets. In particular, only the enhanced items can generate archivable pdf. @@ -820,9 +887,11 @@ newtx-notosans-subs.tex \subsection{New glyphs added} \textbf{(For enhanced packages only)} Math family 1 {\tt (letters)} has been extended from 128 slots to 256, retaining the {\tt OML} encoding of the first 128. Most of additional slots have been allocated to a script font from the old STIX collection and an upright modification of that font. By default, \verb|$\mathscr{F}$| will produce $\mathscr{F}$.\\ $\bullet$ option {\tt uprightscript} changes the output to {\usefont{OML}{ntxmi}{m}{it}\char201}.\\ -In both cases, there are full upper-case and lower-case and {\tt dotlessi}, {\tt dotlessj}. To insert the latter, you can write either \verb|$\mathscr{\imath}$| or \verb|$\imathscr$|, rendered as $\mathscr{\imath}$ in the slanted script case. +In both cases, there are full upper-case and lower-case and {\tt dotlessi}, {\tt dotlessj}. To insert the latter, you can write either \verb|$\mathscr{\imath}$| or \verb|$\imathscr$|, rendered as $\mathscr{\imath}$ in the slanted script case. + +There are in fact two additional macros, \verb|\mathslscr| (slanted script) and \verb|\mathuscr| (upright script) that may be used. By default, \verb|\mathscr| is \verb|\let| to \verb|\mathslscr|, but, under option {\tt uprightscript}, \verb|\mathscr| is \verb|\let| to \verb|\mathuscr|. -The secondary letters font {\tt (lettersA)} and math family 2 {\tt(symbols)} have been rearranged. The first of these continues to have a Fraktur alphabet, but it a modification of its original one, having wider vertical stems and a blacker appearance more in keeping with the weight Times. {\tt Dotlessi} and {\tt dotlessj} have been added and can be specified in math mode by \verb|$\imathfrak$| and \verb|$\jmathfrak$|---\verb|$\mathfrak{\imath}$| also works. There are in addition two subsidiary Bbb alphabets in {\tt lettersA}, specified by the respective options {\tt vmathbb}, {\tt vvmathbb}, and there are corresponding {\tt dotlessi}, {\tt dotlessj} activated by \verb|$\imathbb$|, \verb|$\jmathbb$|, which always render as $\imathbb$, $\jmathbb$ mo matter the choice of which Blackboard Bold Alphabet. If you select one of the options {\tt varbb}, {\tt vvarbb}, you will have Bbb digits 0..9 using, e.g., \verb|$\mathbb{1}$| to get~$\vvmathbb{1}$. +The secondary letters font {\tt (lettersA)} and math family 2 {\tt(symbols)} have been rearranged. The first of these continues to have a Fraktur alphabet, but it a modification of its original one, having wider vertical stems and a blacker appearance more in keeping with the weight Times. {\tt Dotlessi} and {\tt dotlessj} have been added and can be specified in math mode by \verb|$\imathfrak$| and \verb|$\jmathfrak$|---\verb|$\mathfrak{\imath}$| also works. There are in addition two subsidiary Bbb alphabets in {\tt lettersA}, specified by the respective options {\tt vmathbb}, {\tt vvmathbb}, and there are corresponding {\tt dotlessi}, {\tt dotlessj} activated by \verb|$\imathbb$|, \verb|$\jmathbb$|, which always render as $\imathbb$, $\jmathbb$ no matter the choice of which Blackboard Bold Alphabet. If you select one of the options {\tt varbb}, {\tt vvarbb}, you will have Bbb digits 0..9 using, e.g., \verb|$\mathbb{1}$| to get~$\vvmathbb{1}$. Among the new symbols added are:\\ $\bullet$ \verb|\hslash|, \verb|\hbar|, \verb|\lambdaslash|, \verb|\lambdabar|, \verb|\Zbar|, \verb|\Angstrom| are now constructed from the native glyphs, but only in the enhanced families.\\ @@ -846,7 +915,7 @@ have been extended and all glyphs now have appropriate unicode mappings. \item The AMS fonts replacement, {\tt ntxsym} corrects the former misplacement of \verb|\kbbb|, \verb|\daleth|, \verb|\circledR| and \verb|\circledS|.) \end{itemize} -\newpage +%\newpage \section{Changed Font Tables} \subsection{letters} \fonttable{ntxmi} @@ -893,7 +962,7 @@ As {\tt ebgaramond} has an x-height considerably smaller than {\tt newtx}, some \usepackage[T1]{fontenc} % best for Western European languages \usepackage{textcomp} % required to get special symbols \usepackage[varqu,varl]{inconsolata}% a typewriter font must be defined -\usepackage{amsmath,amsthm}% must be loaded before newtxmath +\usepackage{amsthm}% must be loaded before newtxmath \usepackage[ebgaramond,vvarbb,subscriptcorrection]{newtxmath} % STIX Bbb \usepackage{bm}% load after all math to give access to bold math \end{verbatim} diff --git a/Master/texmf-dist/fonts/afm/public/newtx/txbmiaSTbb.afm b/Master/texmf-dist/fonts/afm/public/newtx/txbmiaSTbb.afm index 23f09c23e2d..8aa875813ca 100644 --- a/Master/texmf-dist/fonts/afm/public/newtx/txbmiaSTbb.afm +++ b/Master/texmf-dist/fonts/afm/public/newtx/txbmiaSTbb.afm @@ -1,6 +1,6 @@ StartFontMetrics 2.0 -Comment Generated by FontForge 20170730 -Comment Creation Date: Mon Jun 3 08:19:04 2019 +Comment Generated by FontForge 20200314 +Comment Creation Date: Wed Dec 9 13:52:52 2020 FontName txbmiaSTbb FullName txbmiaST Blackboard Bold FamilyName txbmiaST @@ -19,16 +19,16 @@ C 0 ; WX 497 ; N uni213E ; B 75 0 643 676 ; C 5 ; WX 768 ; N uni213F ; B 75 0 693 676 ; C 13 ; WX 646 ; N uni213D ; B 23 -203 624 486 ; C 25 ; WX 804 ; N uni213C ; B 55 -11 759 461 ; -C 48 ; WX 540 ; N u1D7D8 ; B 28 -14 512 676 ; -C 49 ; WX 540 ; N u1D7D9 ; B 91 0 355 693 ; -C 50 ; WX 547 ; N u1D7DA ; B 48 0 514 676 ; -C 51 ; WX 540 ; N u1D7DB ; B 49 -14 478 676 ; -C 52 ; WX 540 ; N u1D7DC ; B 20 0 524 676 ; -C 53 ; WX 540 ; N u1D7DD ; B 35 -14 489 662 ; -C 54 ; WX 540 ; N u1D7DE ; B 28 -14 512 676 ; -C 55 ; WX 540 ; N u1D7DF ; B 24 0 511 662 ; -C 56 ; WX 540 ; N u1D7E0 ; B 28 -14 512 676 ; -C 57 ; WX 540 ; N u1D7E1 ; B 28 -12 512 676 ; +C 48 ; WX 680 ; N u1D7D8 ; B 42 -14 638 676 ; +C 49 ; WX 444 ; N u1D7D9 ; B 52 0 371 693 ; +C 50 ; WX 614 ; N u1D7DA ; B 48 0 574 676 ; +C 51 ; WX 547 ; N u1D7DB ; B 34 -14 504 676 ; +C 52 ; WX 620 ; N u1D7DC ; B 32 0 588 676 ; +C 53 ; WX 570 ; N u1D7DD ; B 45 -14 525 662 ; +C 54 ; WX 631 ; N u1D7DE ; B 41 -14 590 676 ; +C 55 ; WX 597 ; N u1D7DF ; B 38 0 567 662 ; +C 56 ; WX 620 ; N u1D7E0 ; B 41 -14 579 676 ; +C 57 ; WX 631 ; N u1D7E1 ; B 41 -14 590 677 ; C 65 ; WX 787 ; N u1D538 ; B 50 0 737 676 ; C 66 ; WX 729 ; N u1D539 ; B 75 0 669 676 ; C 67 ; WX 727 ; N uni2102 ; B 45 -19 672 691 ; diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/ntxbmia.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/ntxbmia.tfm Binary files differindex 873a3a7bde9..7614d4ed571 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/ntxbmia.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/ntxbmia.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgbmia.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgbmia.tfm Binary files differindex 1b8cfe8ddb6..90d3288d473 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgbmia.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgbmia.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgmi.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgmi.tfm Binary files differindex 0c552089847..f97f4cb80d7 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgmi.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgmi.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgmia.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgmia.tfm Binary files differindex 8737350d6d6..b24c5d3f5b8 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgmia.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/ntxebgmia.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/ntxmia.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/ntxmia.tfm Binary files differindex a3017103f87..27db4caddca 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/ntxmia.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/ntxmia.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/nxlbmia.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/nxlbmia.tfm Binary files differindex 04347d806e0..f2f4dc3d9ae 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/nxlbmia.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/nxlbmia.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/nxlmia.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/nxlmia.tfm Binary files differindex e334d4b1597..dc00ff4f730 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/nxlmia.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/nxlmia.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/txbmiaSTbb.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/txbmiaSTbb.tfm Binary files differindex e2cd4d94766..ebe61549280 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/txbmiaSTbb.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/txbmiaSTbb.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/zutbmia.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/zutbmia.tfm Binary files differindex b0c3dc5d299..9b08fc736f6 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/zutbmia.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/zutbmia.tfm diff --git a/Master/texmf-dist/fonts/tfm/public/newtx/zutmia.tfm b/Master/texmf-dist/fonts/tfm/public/newtx/zutmia.tfm Binary files differindex 072feda45e5..7507b956c23 100644 --- a/Master/texmf-dist/fonts/tfm/public/newtx/zutmia.tfm +++ b/Master/texmf-dist/fonts/tfm/public/newtx/zutmia.tfm diff --git a/Master/texmf-dist/fonts/type1/public/newtx/txbmiaSTbb.pfb b/Master/texmf-dist/fonts/type1/public/newtx/txbmiaSTbb.pfb Binary files differindex 4788a4bc6cd..f02d15462db 100644 --- a/Master/texmf-dist/fonts/type1/public/newtx/txbmiaSTbb.pfb +++ b/Master/texmf-dist/fonts/type1/public/newtx/txbmiaSTbb.pfb diff --git a/Master/texmf-dist/fonts/vf/public/newtx/ntxbmia.vf b/Master/texmf-dist/fonts/vf/public/newtx/ntxbmia.vf Binary files differindex 00d0a09fa63..c7b125230c0 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/ntxbmia.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/ntxbmia.vf diff --git a/Master/texmf-dist/fonts/vf/public/newtx/ntxebgbmia.vf b/Master/texmf-dist/fonts/vf/public/newtx/ntxebgbmia.vf Binary files differindex e81ef0d20ed..2748d2cde14 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/ntxebgbmia.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/ntxebgbmia.vf diff --git a/Master/texmf-dist/fonts/vf/public/newtx/ntxebgmi.vf b/Master/texmf-dist/fonts/vf/public/newtx/ntxebgmi.vf Binary files differindex 2c0e3870a72..545e2405071 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/ntxebgmi.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/ntxebgmi.vf diff --git a/Master/texmf-dist/fonts/vf/public/newtx/ntxebgmia.vf b/Master/texmf-dist/fonts/vf/public/newtx/ntxebgmia.vf Binary files differindex 10e54878d69..47890100c66 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/ntxebgmia.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/ntxebgmia.vf diff --git a/Master/texmf-dist/fonts/vf/public/newtx/ntxmia.vf b/Master/texmf-dist/fonts/vf/public/newtx/ntxmia.vf Binary files differindex 9b4778fc15c..3a3195f3f82 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/ntxmia.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/ntxmia.vf diff --git a/Master/texmf-dist/fonts/vf/public/newtx/nxlbmia.vf b/Master/texmf-dist/fonts/vf/public/newtx/nxlbmia.vf Binary files differindex 775b2f3acf6..0cdb3f6c612 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/nxlbmia.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/nxlbmia.vf diff --git a/Master/texmf-dist/fonts/vf/public/newtx/nxlmia.vf b/Master/texmf-dist/fonts/vf/public/newtx/nxlmia.vf Binary files differindex 1ddf7d78d86..817ac5e5e39 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/nxlmia.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/nxlmia.vf diff --git a/Master/texmf-dist/fonts/vf/public/newtx/zutbmia.vf b/Master/texmf-dist/fonts/vf/public/newtx/zutbmia.vf Binary files differindex f1c0ffc11e7..1e349d8cd69 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/zutbmia.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/zutbmia.vf diff --git a/Master/texmf-dist/fonts/vf/public/newtx/zutmia.vf b/Master/texmf-dist/fonts/vf/public/newtx/zutmia.vf Binary files differindex 0edc37fadaf..7632c8d9620 100644 --- a/Master/texmf-dist/fonts/vf/public/newtx/zutmia.vf +++ b/Master/texmf-dist/fonts/vf/public/newtx/zutmia.vf diff --git a/Master/texmf-dist/tex/latex/newtx/newtx-subs.tex b/Master/texmf-dist/tex/latex/newtx/newtx-subs.tex index 9e22663573c..3335a4406b1 100644 --- a/Master/texmf-dist/tex/latex/newtx/newtx-subs.tex +++ b/Master/texmf-dist/tex/latex/newtx/newtx-subs.tex @@ -1,17 +1,17 @@ {f}{-3} {j}{-3} -{p}{-} -{y}{-} +{p}{-1} +{y}{-1} {A}{-2} -{B}{-} -{D}{-} -{H}{-} -{I}{-} -{K}{-} -{L}{-} -{M}{-} +{B}{-1} +{D}{-1} +{H}{-1} +{I}{-1} +{K}{-1} +{L}{-1} +{M}{-1} {N}{-0.5} -{P}{-} -{X}{-} +{P}{-1} +{X}{-1} {\rho}{-1.5} {\mu}{-1}
\ No newline at end of file diff --git a/Master/texmf-dist/tex/latex/newtx/newtxmath.sty b/Master/texmf-dist/tex/latex/newtx/newtxmath.sty index 369f2fa84de..c5ca5c0587b 100644 --- a/Master/texmf-dist/tex/latex/newtx/newtxmath.sty +++ b/Master/texmf-dist/tex/latex/newtx/newtxmath.sty @@ -11,8 +11,8 @@ % of glyph collisions. % These modifications are by Michael Sharpe, msharpe at ucsd dot edu -\def\fileversion{1.630} -\def\filedate{2020/09/19} +\def\fileversion{1.640} +\def\filedate{2020/12/20} \ProvidesPackage{newtxmath}[\filedate\space v\fileversion ] \@ifundefined{newtxmathLoaded}{}{\endinput} @@ -491,8 +491,6 @@ amssymbols,uprightGreek,nosubscriptcorrection} \fi \fi -%\show\tx@subs - \iftx@isenh \iftx@digits \DeclareMathSymbol{0}{\mathord}{letters}{132} @@ -507,15 +505,24 @@ amssymbols,uprightGreek,nosubscriptcorrection} \DeclareMathSymbol{9}{\mathord}{letters}{141} \fi \iftx@upscr - \DeclareRobustCommand{\mathscr}[1]{\ntx@alfa{#1}{196}{222}{248}{249}{}{letters}} + \let\mathscr=\mathuscr \DeclareMathSymbol{\imathscr}{\mathord}{letters}{248} \DeclareMathSymbol{\jmathscr}{\mathord}{letters}{249} \else - \DeclareRobustCommand{\mathscr}[1]{\ntx@alfa{#1}{142}{168}{194}{195}{}{letters}} + \let\mathscr=\mathslscr \DeclareMathSymbol{\imathscr}{\mathord}{letters}{194} \DeclareMathSymbol{\jmathscr}{\mathord}{letters}{195} \fi \fi +%\iftx@upscr +% \DeclareRobustCommand{\mathscr}[1]{\ntx@alfa{#1}{196}{222}{248}{249}{}{letters}} +% \DeclareMathSymbol{\imathscr}{\mathord}{letters}{248} +% \DeclareMathSymbol{\jmathscr}{\mathord}{letters}{249} +%\else +% \DeclareRobustCommand{\mathscr}[1]{\ntx@alfa{#1}{142}{168}{194}{195}{}{letters}} +% \DeclareMathSymbol{\imathscr}{\mathord}{letters}{194} +% \DeclareMathSymbol{\jmathscr}{\mathord}{letters}{195} +%\fi \iftx@coch \DeclareMathSymbol{\fAlt}{\mathord}{letters}{250} \DeclareMathSymbol{\rhoAlt}{\mathord}{letters}{251} @@ -2345,141 +2352,402 @@ $\hfil\displaystyle{#1}\hfil$\crcr% \DeclareMathSymbol{\m@thbbch@rX}{\mathord}{lettersA}{155} \DeclareMathSymbol{\m@thbbch@rY}{\mathord}{lettersA}{156} \DeclareMathSymbol{\m@thbbch@rZ}{\mathord}{lettersA}{157} - \DeclareMathSymbol{\m@thbbch@rk}{\mathord}{lettersA}{168} -% Original \varmathbb macro, slightly polished -\def\DoFutureLet{% - \def\@FutureLetDecide{% - \ifx\@nil\@FutureLetToken - \def\@FutureLetNext{\@EachCharacterDone} - \else - \def\@FutureLetNext{\@PickUpTheCharacter} - \fi - \@FutureLetNext - }% -\futurelet\@FutureLetToken\@FutureLetDecide}% end DoFutureLet - -\def\F@ntPrefix{m@thbbch@r} -%\def\m@keCharacter#1{% -% \@tempcnta=`#1\relax \advance\@tempcnta "40\relax -% \edef\ntx@char{\ntx@lettersA\nhex{2}{\the\@tempcnta}} -% \expandafter\mathchar\ntx@char} -%\def\@PickUpTheCharacter#1{\m@keCharacter{#1}\DoFutureLet} -\def\@EachCharacterDone \@nil{}% cleanup---get rid of \@nil -%\newif\ifntx@notnil -%\def\@EachCharacter{% -% \DoFutureLet{\@EachCharacterDone}{\@PickUpTheCharacter}} +\DeclareMathSymbol{\m@thbbch@rzero}{\mathord}{lettersA}{43} +\DeclareMathSymbol{\m@thbbch@rone}{\mathord}{lettersA}{44} +\DeclareMathSymbol{\m@thbbch@rtwo}{\mathord}{lettersA}{45} +\DeclareMathSymbol{\m@thbbch@rthree}{\mathord}{lettersA}{46} +\DeclareMathSymbol{\m@thbbch@rfour}{\mathord}{lettersA}{47} +\DeclareMathSymbol{\m@thbbch@rfive}{\mathord}{lettersA}{48} +\DeclareMathSymbol{\m@thbbch@rsix}{\mathord}{lettersA}{49} +\DeclareMathSymbol{\m@thbbch@rseven}{\mathord}{lettersA}{50} +\DeclareMathSymbol{\m@thbbch@reight}{\mathord}{lettersA}{51} +\DeclareMathSymbol{\m@thbbch@rnine}{\mathord}{lettersA}{52} +\DeclareMathSymbol{\m@thbbch@rimath}{\mathord}{lettersA}{125} +\DeclareMathSymbol{\m@thbbch@rjmath}{\mathord}{lettersA}{126} +\DeclareMathSymbol{\m@thbbch@rGamma}{\mathord}{lettersA}{219} +\DeclareMathSymbol{\m@thbbch@rPi}{\mathord}{lettersA}{220} +\DeclareMathSymbol{\m@thbbch@rgamma}{\mathord}{lettersA}{221} +\DeclareMathSymbol{\m@thbbch@rpi}{\mathord}{lettersA}{222} +%\@nameuse{m@thbbch@r 0} +\@xp\let\csname m@thbbch@r0\endcsname=\m@thbbch@rzero +\@xp\let\csname m@thbbch@r1\endcsname=\m@thbbch@rone +\@xp\let\csname m@thbbch@r2\endcsname=\m@thbbch@rtwo +\@xp\let\csname m@thbbch@r3\endcsname=\m@thbbch@rthree +\@xp\let\csname m@thbbch@r4\endcsname=\m@thbbch@rfour +\@xp\let\csname m@thbbch@r5\endcsname=\m@thbbch@rfive +\@xp\let\csname m@thbbch@r6\endcsname=\m@thbbch@rsix +\@xp\let\csname m@thbbch@r7\endcsname=\m@thbbch@rseven +\@xp\let\csname m@thbbch@r8\endcsname=\m@thbbch@reight +\@xp\let\csname m@thbbch@r9\endcsname=\m@thbbch@rnine + +\def\ntx@@vbb#1#2\@nil{% + \ifiscseq{#1}{\ifcsdef{m@thbbch@r\@xp\@gobble\string#1}{\csname m@thbbch@r\@xp\@gobble\string#1\endcsname}{#1}}{%not a cs + \csname m@thbbch@r#1\endcsname} + \ifblank{#2}{\relax}{\ntx@@vbb #2\@nil}} + +\DeclareRobustCommand*{\varmathbb}[1]{\ntx@@vbb#1\@nil} +\let\vmathbb=\varmathbb % was once different, but no longer so +%% Original \varmathbb macro, slightly polished +%\def\DoFutureLet{% +% \def\@FutureLetDecide{% +% \ifx\@nil\@FutureLetToken +% \def\@FutureLetNext{\@EachCharacterDone} +% \else +% \def\@FutureLetNext{\@PickUpTheCharacter} +% \fi +% \@FutureLetNext +% }% +%\futurelet\@FutureLetToken\@FutureLetDecide}% end DoFutureLet % -\def\m@keCharacter#1{\csname\F@ntPrefix#1\endcsname} -\def\@PickUpTheCharacter#1{\m@keCharacter{#1}\DoFutureLet} -\def\@EachCharacterDone \@nil{} +%\def\F@ntPrefix{m@thbbch@r} +%%\def\m@keCharacter#1{% +%% \@tempcnta=`#1\relax \advance\@tempcnta "40\relax +%% \edef\ntx@char{\ntx@lettersA\nhex{2}{\the\@tempcnta}} +%% \expandafter\mathchar\ntx@char} +%%\def\@PickUpTheCharacter#1{\m@keCharacter{#1}\DoFutureLet} +%%\def\@EachCharacterDone \@nil{}% cleanup---get rid of \@nil +%%\newif\ifntx@notnil +%%\def\@EachCharacter{% +%% \DoFutureLet{\@EachCharacterDone}{\@PickUpTheCharacter}} +%% +%\def\m@keCharacter#1{\csname\F@ntPrefix#1\endcsname} +%\def\@PickUpTheCharacter#1{\m@keCharacter{#1}\DoFutureLet} +%\def\@EachCharacterDone \@nil{} % -%\DeclareRobustCommand*{\varmathbb}[1]{\gdef\F@ntPrefix{m@thbbch@r}% -% \@EachCharacter #1\@nil} -\DeclareRobustCommand*{\varmathbb}[1]{%\gdef\F@ntPrefix{m@thbbch@r}% - \DoFutureLet #1\@nil} +%%\DeclareRobustCommand*{\varmathbb}[1]{\gdef\F@ntPrefix{m@thbbch@r}% +%% \@EachCharacter #1\@nil} +%\DeclareRobustCommand*{\varmathbb}[1]{%\gdef\F@ntPrefix{m@thbbch@r}% +% \DoFutureLet #1\@nil} + +\DeclareMathSymbol{\tx@BbbA}{\mathord}{lettersA}{193} +\DeclareMathSymbol{\tx@BbbB}{\mathord}{lettersA}{194} +\DeclareMathSymbol{\tx@BbbC}{\mathord}{lettersA}{195} +\DeclareMathSymbol{\tx@BbbD}{\mathord}{lettersA}{196} +\DeclareMathSymbol{\tx@BbbE}{\mathord}{lettersA}{197} +\DeclareMathSymbol{\tx@BbbF}{\mathord}{lettersA}{198} +\DeclareMathSymbol{\tx@BbbG}{\mathord}{lettersA}{199} +\DeclareMathSymbol{\tx@BbbH}{\mathord}{lettersA}{200} +\DeclareMathSymbol{\tx@BbbI}{\mathord}{lettersA}{201} +\DeclareMathSymbol{\tx@BbbJ}{\mathord}{lettersA}{202} +\DeclareMathSymbol{\tx@BbbK}{\mathord}{lettersA}{203} +\DeclareMathSymbol{\tx@BbbL}{\mathord}{lettersA}{204} +\DeclareMathSymbol{\tx@BbbM}{\mathord}{lettersA}{205} +\DeclareMathSymbol{\tx@BbbN}{\mathord}{lettersA}{206} +\DeclareMathSymbol{\tx@BbbO}{\mathord}{lettersA}{207} +\DeclareMathSymbol{\tx@BbbP}{\mathord}{lettersA}{208} +\DeclareMathSymbol{\tx@BbbQ}{\mathord}{lettersA}{209} +\DeclareMathSymbol{\tx@BbbR}{\mathord}{lettersA}{210} +\DeclareMathSymbol{\tx@BbbS}{\mathord}{lettersA}{211} +\DeclareMathSymbol{\tx@BbbT}{\mathord}{lettersA}{212} +\DeclareMathSymbol{\tx@BbbU}{\mathord}{lettersA}{213} +\DeclareMathSymbol{\tx@BbbV}{\mathord}{lettersA}{214} +\DeclareMathSymbol{\tx@BbbW}{\mathord}{lettersA}{215} +\DeclareMathSymbol{\tx@BbbX}{\mathord}{lettersA}{216} +\DeclareMathSymbol{\tx@BbbY}{\mathord}{lettersA}{217} +\DeclareMathSymbol{\tx@BbbZ}{\mathord}{lettersA}{218} + +\DeclareMathSymbol{\tx@Bbba}{\mathord}{lettersA}{225} +\DeclareMathSymbol{\tx@Bbbb}{\mathord}{lettersA}{226} +\DeclareMathSymbol{\tx@Bbbc}{\mathord}{lettersA}{227} +\DeclareMathSymbol{\tx@Bbbd}{\mathord}{lettersA}{228} +\DeclareMathSymbol{\tx@Bbbe}{\mathord}{lettersA}{229} +\DeclareMathSymbol{\tx@Bbbf}{\mathord}{lettersA}{230} +\DeclareMathSymbol{\tx@Bbbg}{\mathord}{lettersA}{231} +\DeclareMathSymbol{\tx@Bbbh}{\mathord}{lettersA}{232} +\DeclareMathSymbol{\tx@Bbbi}{\mathord}{lettersA}{233} +\DeclareMathSymbol{\tx@Bbbj}{\mathord}{lettersA}{234} +\DeclareMathSymbol{\tx@Bbbk}{\mathord}{lettersA}{235} +\DeclareMathSymbol{\tx@Bbbl}{\mathord}{lettersA}{236} +\DeclareMathSymbol{\tx@Bbbm}{\mathord}{lettersA}{237} +\DeclareMathSymbol{\tx@Bbbn}{\mathord}{lettersA}{238} +\DeclareMathSymbol{\tx@Bbbo}{\mathord}{lettersA}{239} +\DeclareMathSymbol{\tx@Bbbp}{\mathord}{lettersA}{240} +\DeclareMathSymbol{\tx@Bbbq}{\mathord}{lettersA}{241} +\DeclareMathSymbol{\tx@Bbbr}{\mathord}{lettersA}{242} +\DeclareMathSymbol{\tx@Bbbs}{\mathord}{lettersA}{243} +\DeclareMathSymbol{\tx@Bbbt}{\mathord}{lettersA}{244} +\DeclareMathSymbol{\tx@Bbbu}{\mathord}{lettersA}{245} +\DeclareMathSymbol{\tx@Bbbv}{\mathord}{lettersA}{246} +\DeclareMathSymbol{\tx@Bbbw}{\mathord}{lettersA}{247} +\DeclareMathSymbol{\tx@Bbbx}{\mathord}{lettersA}{248} +\DeclareMathSymbol{\tx@Bbby}{\mathord}{lettersA}{249} +\DeclareMathSymbol{\tx@Bbbz}{\mathord}{lettersA}{250} + +\@xp\let\csname tx@Bbb0\endcsname=\m@thbbch@rzero +\@xp\let\csname tx@Bbb1\endcsname=\m@thbbch@rone +\@xp\let\csname tx@Bbb2\endcsname=\m@thbbch@rtwo +\@xp\let\csname tx@Bbb3\endcsname=\m@thbbch@rthree +\@xp\let\csname tx@Bbb4\endcsname=\m@thbbch@rfour +\@xp\let\csname tx@Bbb5\endcsname=\m@thbbch@rfive +\@xp\let\csname tx@Bbb6\endcsname=\m@thbbch@rsix +\@xp\let\csname tx@Bbb7\endcsname=\m@thbbch@rseven +\@xp\let\csname tx@Bbb8\endcsname=\m@thbbch@reight +\@xp\let\csname tx@Bbb9\endcsname=\m@thbbch@rnine +\@xp\let\csname tx@BbbGamma\endcsname=\m@thbbch@rGamma +\@xp\let\csname tx@BbbPi\endcsname=\m@thbbch@rPi +\@xp\let\csname tx@Bbbgamma\endcsname=\m@thbbch@rgamma +\@xp\let\csname tx@Bbbpi\endcsname=\m@thbbch@rpi +\@xp\let\csname tx@Bbbimath\endcsname=\m@thbbch@rimath +\@xp\let\csname tx@Bbbjmath\endcsname=\m@thbbch@rjmath % Changed macros which are not limited to a single character, and can include digits, \imath, \jmath -%%%%%% -% Experimental code May 8, 2018 -\newcount\ntx@numstart -\newcount\ntx@UCstart -\newcount\ntx@lcstart -\newcount\ntx@tmpc -\newcount\ntx@imath -\newcount\ntx@jmath -\newif\ifntx@notempty -\def\ntx@fam{} -\def\ntx@char{} -\def\ntx@alfa#1#2#3#4#5#6#7{%#1=string, #2=UC,#3=lc,#4=imath,#5=jmath,#6=numstart,#7=fam - \ntx@UCstart=#2 - %\gdef\xx{x#3x} - \@xp\ifblank\@xp{#3}{\ntx@lcstart=512 }{\ntx@lcstart=#3} - \@xp\ifblank\@xp{#4}{\ntx@imath=512 }{\ntx@imath=#4} - \@xp\ifblank\@xp{#5}{\ntx@jmath=512 }{\ntx@jmath=#5} - \@xp\ifblank\@xp{#6}{\ntx@numstart=512 }{\ntx@numstart=#6} - \def\ntx@fam{#7} - \@xp\ifblank\@xp{#1}{\relax}{\@xp\ntx@@alfa #1\@nil}} - -\def\ntx@@alfa#1#2\@nil{% - \ntx@out{#1} - \ifblank{#2}{\relax}{\ntx@@alfa #2\@nil}} - -\def\ntx@out#1{% #1 is always a single token---use values from \ntx@alfa - %\showthe\ntx@numstart - \ntx@tmpc=\z@ - \ifx#1\imath\ntx@tmpc=128\relax - \ifnum\ntx@imath>255\relax #1\ntx@tmpc=256 \message{^^JNo imath in this alphabet^^J}\fi - \else % not \imath - \ifx#1\jmath\ntx@tmpc=129\relax - \ifnum\ntx@jmath>255\relax #1\ntx@tmpc=256 \message{^^JNo jmath in this alphabet^^J}\fi - \else % neither \imath nor \jmath - \ifiscseq{#1}{#1\ntx@tmpc=256 }{% not a cs - \ntx@tmpc=\number\@xp`#1} - \fi - \fi - %\message{^^JCharacter index = \the\ntx@tmpc^^J} - \ifnum\ntx@tmpc<128\relax % neither \imath nor \jmath nor cs - \tx@isAlNum{#1} - %\message{^^JIsAlNum = \the\tx@IsAlNum^^J} - \ifnum\tx@IsAlNum=\@ne % it's a digit - \ifnum\ntx@numstart>255\relax #1\ntx@tmpc=256 \message{^^JNo digits in this alphabet^^J} - \else - \advance\ntx@tmpc -48 % 0..9 - \advance\ntx@tmpc \ntx@numstart - \fi - \else - \ifnum\tx@IsAlNum=\tw@ % it's UC - \advance\ntx@tmpc -65 % 0..25 - \advance\ntx@tmpc\ntx@UCstart - \else - \ifnum\tx@IsAlNum>\tw@ % it's lc - \ifnum\ntx@lcstart>255 #1\ntx@tmpc=256 \message{^^JNo lowercase in this alphabet^^J} - \else - %\message{^^JCharacter index = \the\ntx@tmpc^^J - %lcstart = \the\ntx@lcstart^^J} - \advance\ntx@tmpc -97 % 0..25 - \advance\ntx@tmpc\ntx@lcstart - %\message{^^JCharacter index = \the\ntx@tmpc^^J} - \fi - \else % it must be a character outside alphanumerics - #1 - \fi - \fi - \fi - \else % ntx@tmpc>127 - \ifnum\ntx@tmpc=128\relax % imath - \ntx@tmpc=\ntx@imath - \else - \ifnum\ntx@tmpc=129\relax % jmath - \ntx@tmpc=\ntx@jmath - \fi - \fi - \fi - \ifnum\tx@IsAlNum>\z@ - \ifnum\ntx@tmpc<256\relax - \edef\ntx@char{"\@xp\hexnumber@\csname sym\ntx@fam\endcsname\nhex{2}{\the\ntx@tmpc}} - %\message{^^Joutput char = \ntx@char^^J} - \@xp\mathchar\ntx@char%\traceoff - \fi %end of ifnum <256 - \fi %end of ifnum >0 -} -% This really needs to be reorganized -\iftx@stxtwo - \DeclareRobustCommand{\vvmathbb}[1]{\ntx@alfa{#1}{132}{158}{125}{126}{43}{lettersA}} - \DeclareRobustCommand{\vmathbb}[1]{\ntx@alfa{#1}{193}{225}{184}{185}{43}{lettersA}} -\else - \iftx@isenh - \DeclareRobustCommand{\vmathbb}[1]{\ntx@alfa{#1}{132}{158}{125}{126}{43}{lettersA}} - \DeclareRobustCommand{\vvmathbb}[1]{\ntx@alfa{#1}{193}{225}{125}{126}{43}{lettersA}} - \else % the old mia layout - \DeclareRobustCommand{\vmathbb}[1]{\ntx@alfa{#1}{129}{159}{}{}{176}{lettersA}} - \DeclareRobustCommand{\vvmathbb}[1]{\ntx@alfa{#1}{193}{225}{}{}{176}{lettersA}} - \fi +\def\ntx@@vvbb#1#2\@nil{% + \ifiscseq{#1}{\ifcsdef{tx@Bbb\@xp\@gobble\string#1}{\csname tx@Bbb\@xp\@gobble\string#1\endcsname}{#1}}{%not a cs + \csname tx@Bbb#1\endcsname} + \ifblank{#2}{\relax}{\ntx@@vvbb #2\@nil}} + +\DeclareRobustCommand*{\vvmathbb}[1]{\ntx@@vvbb#1\@nil} + +\iftx@isenh +% script and upright script +\DeclareMathSymbol{\tx@ScrA}{\mathord}{letters}{142} +\DeclareMathSymbol{\tx@ScrB}{\mathord}{letters}{143} +\DeclareMathSymbol{\tx@ScrC}{\mathord}{letters}{144} +\DeclareMathSymbol{\tx@ScrD}{\mathord}{letters}{145} +\DeclareMathSymbol{\tx@ScrE}{\mathord}{letters}{146} +\DeclareMathSymbol{\tx@ScrF}{\mathord}{letters}{147} +\DeclareMathSymbol{\tx@ScrG}{\mathord}{letters}{148} +\DeclareMathSymbol{\tx@ScrH}{\mathord}{letters}{149} +\DeclareMathSymbol{\tx@ScrI}{\mathord}{letters}{150} +\DeclareMathSymbol{\tx@ScrJ}{\mathord}{letters}{151} +\DeclareMathSymbol{\tx@ScrK}{\mathord}{letters}{152} +\DeclareMathSymbol{\tx@ScrL}{\mathord}{letters}{153} +\DeclareMathSymbol{\tx@ScrM}{\mathord}{letters}{154} +\DeclareMathSymbol{\tx@ScrN}{\mathord}{letters}{155} +\DeclareMathSymbol{\tx@ScrO}{\mathord}{letters}{156} +\DeclareMathSymbol{\tx@ScrP}{\mathord}{letters}{157} +\DeclareMathSymbol{\tx@ScrQ}{\mathord}{letters}{158} +\DeclareMathSymbol{\tx@ScrR}{\mathord}{letters}{159} +\DeclareMathSymbol{\tx@ScrS}{\mathord}{letters}{160} +\DeclareMathSymbol{\tx@ScrT}{\mathord}{letters}{161} +\DeclareMathSymbol{\tx@ScrU}{\mathord}{letters}{162} +\DeclareMathSymbol{\tx@ScrV}{\mathord}{letters}{163} +\DeclareMathSymbol{\tx@ScrW}{\mathord}{letters}{164} +\DeclareMathSymbol{\tx@ScrX}{\mathord}{letters}{165} +\DeclareMathSymbol{\tx@ScrY}{\mathord}{letters}{166} +\DeclareMathSymbol{\tx@ScrZ}{\mathord}{letters}{167} + +\DeclareMathSymbol{\tx@Scra}{\mathord}{letters}{168} +\DeclareMathSymbol{\tx@Scrb}{\mathord}{letters}{169} +\DeclareMathSymbol{\tx@Scrc}{\mathord}{letters}{170} +\DeclareMathSymbol{\tx@Scrd}{\mathord}{letters}{171} +\DeclareMathSymbol{\tx@Scre}{\mathord}{letters}{172} +\DeclareMathSymbol{\tx@Scrf}{\mathord}{letters}{173} +\DeclareMathSymbol{\tx@Scrg}{\mathord}{letters}{174} +\DeclareMathSymbol{\tx@Scrh}{\mathord}{letters}{175} +\DeclareMathSymbol{\tx@Scri}{\mathord}{letters}{176} +\DeclareMathSymbol{\tx@Scrj}{\mathord}{letters}{177} +\DeclareMathSymbol{\tx@Scrk}{\mathord}{letters}{178} +\DeclareMathSymbol{\tx@Scrl}{\mathord}{letters}{179} +\DeclareMathSymbol{\tx@Scrm}{\mathord}{letters}{180} +\DeclareMathSymbol{\tx@Scrn}{\mathord}{letters}{181} +\DeclareMathSymbol{\tx@Scro}{\mathord}{letters}{182} +\DeclareMathSymbol{\tx@Scrp}{\mathord}{letters}{183} +\DeclareMathSymbol{\tx@Scrq}{\mathord}{letters}{184} +\DeclareMathSymbol{\tx@Scrr}{\mathord}{letters}{185} +\DeclareMathSymbol{\tx@Scrs}{\mathord}{letters}{186} +\DeclareMathSymbol{\tx@Scrt}{\mathord}{letters}{187} +\DeclareMathSymbol{\tx@Scru}{\mathord}{letters}{188} +\DeclareMathSymbol{\tx@Scrv}{\mathord}{letters}{189} +\DeclareMathSymbol{\tx@Scrw}{\mathord}{letters}{190} +\DeclareMathSymbol{\tx@Scrx}{\mathord}{letters}{191} +\DeclareMathSymbol{\tx@Scry}{\mathord}{letters}{192} +\DeclareMathSymbol{\tx@Scrz}{\mathord}{letters}{193} +\DeclareMathSymbol{\tx@Scrimath}{\mathord}{letters}{194} +\DeclareMathSymbol{\tx@Scrjmath}{\mathord}{letters}{195} + +\DeclareMathSymbol{\tx@UScrA}{\mathord}{letters}{196} +\DeclareMathSymbol{\tx@UScrB}{\mathord}{letters}{197} +\DeclareMathSymbol{\tx@UScrC}{\mathord}{letters}{198} +\DeclareMathSymbol{\tx@UScrD}{\mathord}{letters}{199} +\DeclareMathSymbol{\tx@UScrE}{\mathord}{letters}{200} +\DeclareMathSymbol{\tx@UScrF}{\mathord}{letters}{201} +\DeclareMathSymbol{\tx@UScrG}{\mathord}{letters}{202} +\DeclareMathSymbol{\tx@UScrH}{\mathord}{letters}{203} +\DeclareMathSymbol{\tx@UScrI}{\mathord}{letters}{204} +\DeclareMathSymbol{\tx@UScrJ}{\mathord}{letters}{205} +\DeclareMathSymbol{\tx@UScrK}{\mathord}{letters}{206} +\DeclareMathSymbol{\tx@UScrL}{\mathord}{letters}{207} +\DeclareMathSymbol{\tx@UScrM}{\mathord}{letters}{208} +\DeclareMathSymbol{\tx@UScrN}{\mathord}{letters}{209} +\DeclareMathSymbol{\tx@UScrO}{\mathord}{letters}{210} +\DeclareMathSymbol{\tx@UScrP}{\mathord}{letters}{211} +\DeclareMathSymbol{\tx@UScrQ}{\mathord}{letters}{212} +\DeclareMathSymbol{\tx@UScrR}{\mathord}{letters}{213} +\DeclareMathSymbol{\tx@UScrS}{\mathord}{letters}{214} +\DeclareMathSymbol{\tx@UScrT}{\mathord}{letters}{215} +\DeclareMathSymbol{\tx@UScrU}{\mathord}{letters}{216} +\DeclareMathSymbol{\tx@UScrV}{\mathord}{letters}{217} +\DeclareMathSymbol{\tx@UScrW}{\mathord}{letters}{218} +\DeclareMathSymbol{\tx@UScrX}{\mathord}{letters}{219} +\DeclareMathSymbol{\tx@UScrY}{\mathord}{letters}{220} +\DeclareMathSymbol{\tx@UScrZ}{\mathord}{letters}{221} + +\DeclareMathSymbol{\tx@UScra}{\mathord}{letters}{222} +\DeclareMathSymbol{\tx@UScrb}{\mathord}{letters}{223} +\DeclareMathSymbol{\tx@UScrc}{\mathord}{letters}{224} +\DeclareMathSymbol{\tx@UScrd}{\mathord}{letters}{225} +\DeclareMathSymbol{\tx@UScre}{\mathord}{letters}{226} +\DeclareMathSymbol{\tx@UScrf}{\mathord}{letters}{227} +\DeclareMathSymbol{\tx@UScrg}{\mathord}{letters}{228} +\DeclareMathSymbol{\tx@UScrh}{\mathord}{letters}{229} +\DeclareMathSymbol{\tx@UScri}{\mathord}{letters}{230} +\DeclareMathSymbol{\tx@UScrj}{\mathord}{letters}{231} +\DeclareMathSymbol{\tx@UScrk}{\mathord}{letters}{232} +\DeclareMathSymbol{\tx@UScrl}{\mathord}{letters}{233} +\DeclareMathSymbol{\tx@UScrm}{\mathord}{letters}{234} +\DeclareMathSymbol{\tx@UScrn}{\mathord}{letters}{235} +\DeclareMathSymbol{\tx@UScro}{\mathord}{letters}{236} +\DeclareMathSymbol{\tx@UScrp}{\mathord}{letters}{237} +\DeclareMathSymbol{\tx@UScrq}{\mathord}{letters}{238} +\DeclareMathSymbol{\tx@UScrr}{\mathord}{letters}{239} +\DeclareMathSymbol{\tx@UScrs}{\mathord}{letters}{240} +\DeclareMathSymbol{\tx@UScrt}{\mathord}{letters}{241} +\DeclareMathSymbol{\tx@UScru}{\mathord}{letters}{242} +\DeclareMathSymbol{\tx@UScrv}{\mathord}{letters}{243} +\DeclareMathSymbol{\tx@UScrw}{\mathord}{letters}{244} +\DeclareMathSymbol{\tx@UScrx}{\mathord}{letters}{245} +\DeclareMathSymbol{\tx@UScry}{\mathord}{letters}{246} +\DeclareMathSymbol{\tx@UScrz}{\mathord}{letters}{247} +\DeclareMathSymbol{\tx@UScrimath}{\mathord}{letters}{248} +\DeclareMathSymbol{\tx@UScrjmath}{\mathord}{letters}{249} + +\def\ntx@@scr#1#2\@nil{% + \ifiscseq{#1}{\ifcsdef{tx@Scr\@xp\@gobble\string#1}{\csname tx@Scr\@xp\@gobble\string#1\endcsname}{#1}}{%not a cs + \csname tx@Scr#1\endcsname} + \ifblank{#2}{\relax}{\ntx@@scr #2\@nil}} +\DeclareRobustCommand*{\mathslscr}[1]{\ntx@@scr #1\@nil} + +\def\ntx@@uscr#1#2\@nil{% + \ifiscseq{#1}{\ifcsdef{tx@UScr\@xp\@gobble\string#1}{\csname tx@UScr\@xp\@gobble\string#1\endcsname}{#1}}{%not a cs + \csname tx@UScr#1\endcsname} + \ifblank{#2}{\relax}{\ntx@@uscr #2\@nil}} +\DeclareRobustCommand*{\mathuscr}[1]{\ntx@@uscr #1\@nil} + +\iftx@digits + \DeclareMathSymbol{0}{\mathord}{letters}{132} + \DeclareMathSymbol{1}{\mathord}{letters}{133} + \DeclareMathSymbol{2}{\mathord}{letters}{134} + \DeclareMathSymbol{3}{\mathord}{letters}{135} + \DeclareMathSymbol{4}{\mathord}{letters}{136} + \DeclareMathSymbol{5}{\mathord}{letters}{137} + \DeclareMathSymbol{6}{\mathord}{letters}{138} + \DeclareMathSymbol{7}{\mathord}{letters}{139} + \DeclareMathSymbol{8}{\mathord}{letters}{140} + \DeclareMathSymbol{9}{\mathord}{letters}{141} \fi -%%%%%%%%%%% -%End experimental code -%%%%%%%%%%% +\iftx@upscr + \let\mathscr=\mathuscr + \DeclareMathSymbol{\imathscr}{\mathord}{letters}{248} + \DeclareMathSymbol{\jmathscr}{\mathord}{letters}{249} +\else + \let\mathscr=\mathslscr + \DeclareMathSymbol{\imathscr}{\mathord}{letters}{194} + \DeclareMathSymbol{\jmathscr}{\mathord}{letters}{195} +\fi % upscr +\fi % isenh + +%%%%%% +%% Experimental code May 8, 2018 +%\newcount\ntx@numstart +%\newcount\ntx@UCstart +%\newcount\ntx@lcstart +%\newcount\ntx@tmpc +%\newcount\ntx@imath +%\newcount\ntx@jmath +%\newif\ifntx@notempty +%\def\ntx@fam{} +%\def\ntx@char{} +%\def\ntx@alfa#1#2#3#4#5#6#7{%#1=string, #2=UC,#3=lc,#4=imath,#5=jmath,#6=numstart,#7=fam +% \ntx@UCstart=#2 +% %\gdef\xx{x#3x} +% \@xp\ifblank\@xp{#3}{\ntx@lcstart=512 }{\ntx@lcstart=#3} +% \@xp\ifblank\@xp{#4}{\ntx@imath=512 }{\ntx@imath=#4} +% \@xp\ifblank\@xp{#5}{\ntx@jmath=512 }{\ntx@jmath=#5} +% \@xp\ifblank\@xp{#6}{\ntx@numstart=512 }{\ntx@numstart=#6} +% \def\ntx@fam{#7} +% \@xp\ifblank\@xp{#1}{\relax}{\@xp\ntx@@alfa #1\@nil}} +% +%\def\ntx@@alfa#1#2\@nil{% +% \ntx@out{#1} +% \ifblank{#2}{\relax}{\ntx@@alfa #2\@nil}} +% +%\def\ntx@out#1{% #1 is always a single token---use values from \ntx@alfa +% %\showthe\ntx@numstart +% \ntx@tmpc=\z@ +% \ifx#1\imath\ntx@tmpc=128\relax +% \ifnum\ntx@imath>255\relax #1\ntx@tmpc=256 \message{^^JNo imath in this alphabet^^J}\fi +% \else % not \imath +% \ifx#1\jmath\ntx@tmpc=129\relax +% \ifnum\ntx@jmath>255\relax #1\ntx@tmpc=256 \message{^^JNo jmath in this alphabet^^J}\fi +% \else % neither \imath nor \jmath +% \ifiscseq{#1}{#1\ntx@tmpc=256 }{% not a cs +% \ntx@tmpc=\number\@xp`#1} +% \fi +% \fi +% %\message{^^JCharacter index = \the\ntx@tmpc^^J} +% \ifnum\ntx@tmpc<128\relax % neither \imath nor \jmath nor cs +% \tx@isAlNum{#1} +% %\message{^^JIsAlNum = \the\tx@IsAlNum^^J} +% \ifnum\tx@IsAlNum=\@ne % it's a digit +% \ifnum\ntx@numstart>255\relax #1\ntx@tmpc=256 \message{^^JNo digits in this alphabet^^J} +% \else +% \advance\ntx@tmpc -48 % 0..9 +% \advance\ntx@tmpc \ntx@numstart +% \fi +% \else +% \ifnum\tx@IsAlNum=\tw@ % it's UC +% \advance\ntx@tmpc -65 % 0..25 +% \advance\ntx@tmpc\ntx@UCstart +% \else +% \ifnum\tx@IsAlNum>\tw@ % it's lc +% \ifnum\ntx@lcstart>255 #1\ntx@tmpc=256 \message{^^JNo lowercase in this alphabet^^J} +% \else +% %\message{^^JCharacter index = \the\ntx@tmpc^^J +% %lcstart = \the\ntx@lcstart^^J} +% \advance\ntx@tmpc -97 % 0..25 +% \advance\ntx@tmpc\ntx@lcstart +% %\message{^^JCharacter index = \the\ntx@tmpc^^J} +% \fi +% \else % it must be a character outside alphanumerics +% #1 +% \fi +% \fi +% \fi +% \else % ntx@tmpc>127 +% \ifnum\ntx@tmpc=128\relax % imath +% \ntx@tmpc=\ntx@imath +% \else +% \ifnum\ntx@tmpc=129\relax % jmath +% \ntx@tmpc=\ntx@jmath +% \fi +% \fi +% \fi +% \ifnum\tx@IsAlNum>\z@ +% \ifnum\ntx@tmpc<256\relax +% \edef\ntx@char{"\@xp\hexnumber@\csname sym\ntx@fam\endcsname\nhex{2}{\the\ntx@tmpc}} +% %\message{^^Joutput char = \ntx@char^^J} +% \@xp\mathchar\ntx@char%\traceoff +% \fi %end of ifnum <256 +% \fi %end of ifnum >0 +%} +%% This really needs to be reorganized +%\iftx@stxtwo +% \DeclareRobustCommand{\vvmathbb}[1]{\ntx@alfa{#1}{132}{158}{125}{126}{43}{lettersA}} +% \DeclareRobustCommand{\vmathbb}[1]{\ntx@alfa{#1}{193}{225}{184}{185}{43}{lettersA}} +%\else +% \iftx@isenh +% \DeclareRobustCommand{\vmathbb}[1]{\ntx@alfa{#1}{132}{158}{125}{126}{43}{lettersA}} +% \DeclareRobustCommand{\vvmathbb}[1]{\ntx@alfa{#1}{193}{225}{125}{126}{43}{lettersA}} +% \else % the old mia layout +% \DeclareRobustCommand{\vmathbb}[1]{\ntx@alfa{#1}{129}{159}{}{}{176}{lettersA}} +% \DeclareRobustCommand{\vvmathbb}[1]{\ntx@alfa{#1}{193}{225}{}{}{176}{lettersA}} +% \fi +%\fi +%%%%%%%%%%%% +%%End experimental code +%%%%%%%%%%%% % Additional macros to access process a single character only, work with \bm %\def\ntx@char{} %\DeclareRobustCommand*{\vmathbb}[1]{% for original variant bb @@ -2498,6 +2766,8 @@ $\hfil\displaystyle{#1}\hfil$\crcr% % \expandafter\mathchar\ntx@char %} +%\let\varmathbb\vmathbb + \iftx@vvarbb \let\mathbb\vvmathbb %\DeclareRobustCommand*{\mathbb}{\vvmathbb} \else @@ -2752,7 +3022,7 @@ $\hfil\displaystyle{#1}\hfil$\crcr% \DeclareRobustCommand{\BIz}{\BI@{z}} \fi% end \iftx@BI -% Special constructions for Minion, where we cannot make real compund symbols +% Special constructions for Minion, where we cannot make real compound symbols \iftx@minion % minion does not have hslash, lambdabar, lambdaslash,Zbar \let\hslash\@empty \let\lambdaslash\@empty \let\lambdabar\@empty \let\Zbar\@empty |