# XeLaTeX and stmaryrd

I'm using XeLaTeX and Minion Pro together with the \usepackage[MnSymbol]{mathspec} but I need the \llbracket and \rrbracket command from \usepackage{stmaryrd} package. Unfortunately, as such, I get a "Too many math alphabets" error message. As a solution, I can redefine my own \llbracket and \rrbracket with existing [, ] and | symbols or try to extract the definition of the \rrbracket and \llbracket commands from stmaryrd as follows (taken from stmaryrd.sty):

\DeclareMathDelimiter\llbracket{\mathopen}{stmry}{"4A}{stmry}{"71}
\DeclareMathDelimiter\rrbracket{\mathclose}{stmry}{"4B}{stmry}{"79}


would this work? thank you

-

This code from unicode-math supposedly removes the 16-family limit for maths fonts. It might help here.

\def\new@mathgroup{\alloc@8\mathgroup\chardef\@cclvi}
\let\newfam\new@mathgroup

-
I'll try this for another problem that I met with the \mathfrak command still yielding the "Too many math alphabets" error message. Thank you – pluton Nov 14 '10 at 5:24
I'm not sure I use your code correctly but I still get the "too many math alphabets" error message. If I use \usepackage{stmaryrd}, the \mathcal command yield the error message, I'm not quite sure why. This limitation is very annoying. – pluton Nov 14 '10 at 15:46
@pluton The limitation should have been raised with TeX Live 2012. Can you try? – egreg Oct 23 '12 at 16:27
@egreg ok, I'll try to remember the problem but it may take some time. – pluton Oct 24 '12 at 16:50

After investigating, I could find the equivalent commands from MnSymbol, namely \lsem and \rsem. I'm still interested in a method detailing how to extract a single command from a package. Thank you

-

I am two years late, but you can actually write:

\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}


With the above, you don't actually need any \usepackage options, just required that stmaryrd is installed.

-
What's the difference with respect to what the OP was already been doing? It's obvious from the \DeclareMathDelimiter lines that pluton was already specifying \DeclareSymbolFont{stmry}{U}{stmry}{m}{n} or they wouldn't have worked. The problem was quite different, and due to the limitation to 16 math families. Since the release of TeX Live 2012 the limitation does not exist any more for XeLaTeX and Will Robertson's answer should work. – egreg Oct 23 '12 at 16:26
Missing that crucial statement will result in a file that will not compile. Perhaps I did not word my answer more carefully to point that out. It may be clear to TeX experts but not average users like me. I certainly did not know I need the line \DeclareSymbolFont{stmry}{U}{stmry}{m}{n}, I had to hunt for the source code and just by luck, saw that line. I hope this will help someone else. – Mobius Pizza Oct 23 '12 at 16:58
One can argue from the question that the standards of this site have evolved: the same question asked now would have one or more comments pledging for a MWE. :) – egreg Oct 23 '12 at 17:18
If one uses egreg's tactic using Pisymbol, then it's not necessary to include \DeclareSymbolFont. – dubiousjim Aug 9 '14 at 12:31