# [XeTeX] Missing left brace has been substituted

maxwell maxwell at umiacs.umd.edu
Mon Feb 6 21:10:58 CET 2012

I'm getting a msg "Missing left brace has been substituted" in what Adobe
Acrobat calls "bookmarks" (the section headings that you can optionally
show on the left-hand side of a document in Adobe Reader and other PDF

The xelatex input looks like this:
----------------
\subsection{Auxiliary \emph{to be} and verbalizers
\pusArabicScript{کېدل} /kedə́l/ and
\pusArabicScript{کول} /kawə́l/}
\label{sxn_aux}\hyperlabel{sxn_aux}%
----------------

The part that triggers the error msg is apparently the
\pusArabicScript{کېدل}.  This is a macro we've defined as
----------------
\newcommand{\pusArabicScript}[1]{{\RL{\pashtofont #1}}}
----------------

The error msg itself is contained in the file bidi.dtx, as follows:
----------------
\let\n at xt=\
\def\LRE{\protect\pLRE}%
\def\pLRE{\protect\afterassignment\moreLRE \let\n at xt= }
\def\RLE{\protect\pRLE}
\def\pRLE{\protect\afterassignment\moreRLE \let\n at xt= }
\def\bracetext{\ifcat\n at xt{\else\ifcat\n at xt}\fi
\errmessage{Missing left brace has been substituted}\fi \bgroup}
----------------

I don't know enough about TeX to know what this is doing (or is supposed
to be doing), or even if I've copied enough of the bidi.dtx file to make
any sense.

I've googled the error msg, but didn't come up with anything useful.  I
can create a minimal file if need be, but before I do that I was hoping
someone else had run into this (and come up with a work-around).

Mike Maxwell