我正在使用 XeLaTeX 和 Minion Pro,但\usepackage[MnSymbol]{mathspec}
我需要包中的 \llbracket 和 \rrbracket 命令\usepackage{stmaryrd}
。不幸的是,我收到了“数学字母太多”错误消息。作为解决方案,我可以使用现有的 [、] 和 | 符号重新定义我自己的 \llbracket 和 \rrbracket,或者尝试从 stmaryrd 中提取 \rrbracket 和 \llbracket 命令的定义,如下所示(取自 stmaryrd.sty):
\DeclareMathDelimiter\llbracket{\mathopen}{stmry}{"4A}{stmry}{"71}
\DeclareMathDelimiter\rrbracket{\mathclose}{stmry}{"4B}{stmry}{"79}
这有用吗?谢谢
答案1
unicode-math 中的这段代码据说可以消除数学字体的 16 系列限制。它可能会有所帮助。
\def\new@mathgroup{\alloc@8\mathgroup\chardef\@cclvi}
\let\newfam\new@mathgroup
答案2
经过调查,我找到了 中的等效命令MnSymbol
,即\lsem
和\rsem
。我仍然对详细说明如何从包中提取单个命令的方法感兴趣。谢谢
答案3
我晚了两年,但你实际上可以写:
\DeclareSymbolFont{stmry}{U}{stmry}{m}{n}
\SetSymbolFont{stmry}{bold}{U}{stmry}{b}{n}
\DeclareMathDelimiter\llbracket{\mathopen}{stmry}{"4A}{stmry}{"71}
\DeclareMathDelimiter\rrbracket{\mathclose}{stmry}{"4B}{stmry}{"79}
有了上述内容,您实际上不需要任何\usepackage
选项,只需要stmaryrd
安装即可。