خطأ فادحالأوامر والحزم
تجاوز سعة TeX
! TeX capacity exceeded, sorry [main memory size=N].
ماذا يعني هذا الخطأ
نفدت ذاكرة LaTeX الداخلية أثناء معالجة المستند. قد يحدث ذلك مع المستندات الكبيرة جدًا، أو البنى المتداخلة بعمق، أو الحلقات اللانهائية الناتجة عن تعريفات ماكرو تستدعي نفسها.
الأسباب الشائعة
- تعريف \newcommand تكراري يستدعي نفسه
- مستند ضخم يضم الكثير من مخططات TikZ أو الجداول المعقدة
- خلل في إحدى الحزم يسبب توسعًا لانهائيًا
- عدد كبير جدًا من البيئات أو المجموعات المتداخلة
كيفية الإصلاح
إذا كان لديك ماكرو تكراري، فصحّح تعريفه ليتوقف في النهاية. وللمستندات الكبيرة، قسّمها باستخدام \include{} وجمّع الفصول بشكل منفصل. وإذا كان السبب حزمة، فحاول تحديثها أو أبلغ عن الخلل.
أمثلة على الشيفرة
يسبب الخطأ
\documentclass{article}
\newcommand{\myloop}{\myloop} % Infinite recursion!
\begin{document}
\myloop
\end{document}تم الإصلاح
\documentclass{article}
% Define commands that terminate
\newcommand{\mytext}{This is finite text.}
\begin{document}
\mytext
\end{document}أخطاء ذات صلة
جرّب الحل مباشرة
الصق شيفرة LaTeX في الـ playground وجمّعها فورًا.

