مشکل شما به این خاطر هست که استایلی که ازش استفاده میکنید بصورت خیلی بدی نوشته شده. گذشته از این یکی از فایلهای بسته bidi
یعنی فایل book-xetex-bidi.def
بصورت ناشیانهای تغییر داده شده. همچنین تغییراتی در فایل book.cls
داده شده که چندان مهم نیست. این روش تغییر در خود فایل دو مشکل داره: (۱) مشکل مجوز (۲) مشکل تعریف
در مورد (۱) بهتره نام فایل عوض بشه یا بهتر اینه که یک بسته جدید نوشته بشه. شما رفتار پیشفرض بسته bidi را نمیگیرید به خاطر تغییر در فایل book-xetex-bidi.def
در صورتی که هدف کلی و مهم اینه که همه کاربران یک رفتار مشخص رو از بسته bidi
داشته باشند.
بسته bidi
و xepersian
به سرعت در حال توسعه است و شما اگر فایل book-xetex-bidi.def
یا هر فایل بسته bidi
یا xepersian
را تغییر بدهید ممکنه که فایلتون در نسخه بعدی این بستهها کار نکنه پس بهتره که از تغییر دادن در فایلهای اصلی دو بسته پرهیز کنید.
اگر به دیگر فایلها نگاه کنید، متوجه میشید که بیشتر این تعریفها بد هستند. به عنوان مثال اگر به فایل tempfix.sty
نگاه کنید متوجه میؤوید که دستور \setdigitfont
باز تعریف شده در صورتی که من نمیدونم هدف این بازتعریف چیه و این تعریف یک تعریف قدیمی هستش که خیلی در حال حاضر تعریف اصلی متحول شده.
بهتون پیشنهاد میکنم تحت هیچ عنوانی از این استایل استفاده نکنید.