对于下面显示的 MWE(我使用的是 Lualatex + Biblatex),编译会因错误而退出(TeX 容量超出,抱歉 [输入堆栈大小=5000])。但是,编译仅在以下两种情况之一中运行:
- 将每个表单独编译在单独的文件中。
- 从第二张表的标题中删除“FOOTCITE”并将其放置在外面。
我想知道这是否是序言设置中的问题或者我遗漏了什么。
\documentclass[a4paper,12pt,twoside]{book}
\usepackage[a4paper,top=2.5cm,bottom=2.5cm,margin=2.5cm,bindingoffset=0.5cm]{geometry}
%=================================================================================================
%Graphics - pictures - symbols
%=================================================================================================
\usepackage[breakable,skins]{tcolorbox}
\usepackage{caption}
\usepackage{subcaption}
%==================================================================================================
%CROSS-Referencing
%==================================================================================================
\usepackage{tocbibind}
\usepackage[multiple]{footmisc}
\usepackage{footnoterange}
\usepackage[%
hidelinks,
hyperindex,
colorlinks=true,
breaklinks,
allcolors=blue]{hyperref}
\usepackage{bookmark}
%===================================================================================================
%Tabular Environment
%===================================================================================================
\usepackage{tabu}
\usepackage{array}
\newcolumntype{?}[1]{!{\vrule width #1}}
\usepackage{booktabs}
%======================================================================================================
%Babel Package Settings%
%======================================================================================================
\usepackage{filecontents}
\begin{filecontents}{babel-cop.ini}
[identification]
charset = utf8
version = 0.1
date = 2019-08-25
name.local = ϯⲙⲉⲧⲣⲉⲙⲛ̀ⲭⲏⲙⲓ
name.english = Coptic
name.babel = coptic
tag.bcp47 = cop
tag.opentype = COP
script.name = Coptic
script.tag.bcp47 = Copt
script.tag.opentype = copt
level = 1
encodings =
derivate = no
[captions]
[date.gregorian]
[date.islamic]
[time.gregorian]
[typography]
[characters]
[numbers]
[counters]
\end{filecontents}
\usepackage[bidi=basic,layout=lists.tabular]{babel}
\babelprovide[import=ar,mapdigits,main]{arabic}
\babelprovide[import=cop]{coptic}
\babelfont{rm}{Latin Modern Roman}
\babelfont[arabic]{rm}{Simplified Arabic}
\babelfont[english]{rm}{Times New Roman}
\babelfont[coptic]{rm}[Language=Default]{FreeSerifAvvaShenouda}
\babelcharproperty{980000}[990000]{direction}{al}
%=============================================================
%BIBLIOGRAPHY SETTINGS%
%=============================================================
\begin{filecontents}{arabic.lbx}
\ProvidesFile{arabic.lbx}
\InheritBibliographyExtras{english}
\DeclareBibliographyStrings{%
inherit = {english},
and = {{و}{و}},
page = {{صفحة}{صفحة}},
pages = {{صفحات}{صفحة}},
references = {{مراجع}{مراجع}},
seenote = {{انظر الملاحظة}{انظر الملاحظة}},
bibliography = {{المصادر}{المصادر}},
}
\end{filecontents}
\usepackage{csquotes}
\DeclareQuoteStyle{arabic}
{\guillemotleft}
{\guillemotright}
{\textquotedblright}
{\textquotedblleft}
\usepackage[%
language=auto,
autolang=other,
citestyle=verbose-note,
bibstyle=authortitle,
doi=false,
isbn=false]{biblatex}
\usepackage{footnote}
\makesavenoteenv{figure}
\makesavenoteenv{table}
%So as to have commas between consecutive \footcite command, declare after bibaltex package so as to see the command
\usepackage{fnpct}
\AdaptNoteOpt\footcite\multfootcite
\setfnpct{punct-after=true,mult-fn-sep =،} % you can use the
\begin{document}
\chapter{العلامات باللغة القبطية}
\subsection{العلامات القبطية الاصلية}
\begin{table}[htbp]
\setlength\arrayrulewidth{1pt}
\begin{center}
\caption
[
أمثلة لكلمات تبدأ تبدأ بحروف ساكنة وتم إضافة حرف متحرك III ببدايتها أو علامة الچنكم XXII ببدايتها
لتسهيل النطق]
{
أمثلة لكلمات تبدأ تبدأ بحروف ساكنة III وتم إضافة حرف متحرك III ببدايتها أو علامة الچنكم XXII ببدايتها
لتسهيل النطق
\begin{footnoterange}
\footcite{Baramosy1888}
\footcite{Tattam2013}
\footcite{Pachomius1966}
\footcite{Pachomius1969}
\footcite{Pachomius1970}
\footcite{Pachomius1971}
\end{footnoterange}
}
\label{tab:أمثلةالچنكم حروف ساكنة}
\begin{tabular}{?{1mm}c|>{\centering\arraybackslash}m{4cm}|>{\centering\arraybackslash}m{4cm}|c?{1mm}}
\toprule[1mm]
\textbf{
الكلمة
}
&
\textbf{
الكلمة بعد أضافة علامة الچنكم XXII في بدايتها
}
&
\textbf{
الكلمة بعد أضافة حرف متحرك III في بدايتها
}
&
\textbf{
المعنى
}
\\
\midrule[1.25pt]
\foreignlanguage{coptic}{ϩⲕⲟ} &\foreignlanguage{coptic}{ϩ̀ⲕⲟ} &\foreignlanguage{coptic}{ⲉϩⲕⲟ} &يجوع
\\
\midrule[1.25pt]
\foreignlanguage{coptic}{ⲛⲕⲟⲧ} &\foreignlanguage{coptic}{ⲛ̀ⲕⲟⲧ} &\foreignlanguage{coptic}{ⲉ̅ⲛⲕⲟⲧ} & ينام
\\
\bottomrule[1mm]
\end{tabular}
\end{center}
\end{table}
\begin{table}[htbp]
\setlength\arrayrulewidth{1pt}
\begin{center}
\caption
[
أمثلة لكلمات تبدأ بالحرف
\foreignlanguage{coptic}{("ⲉ"}
وتبعه أحد الحروف
\foreignlanguage{coptic}{(ⲛ - ⲙ)}
في اللهجة الصعيدية والبحيرية
]
{
أمثلة لكلمات تبدأ بالحرف
\foreignlanguage{coptic}{(" ⲉ ")}
وتبعه أحد الحروف
\foreignlanguage{coptic}{(ⲛ - ⲙ)}
في اللهجة الصعيدية والبحيرية
\footcite{Youseff1992}
}
\label{tab:أمثلةالچنكم حروف متحركة}
\rowcolors{2}{white}{gray!25}
\begin{tabular}{?{1mm}c|>{\centering\arraybackslash}m{4cm}|>{\centering\arraybackslash}m{4cm}|c?{1mm}}
\toprule[1mm]
\rowcolor{white}
\textbf{
الكلمة
}
&
\textbf{
الكلمة البحيرى II
بالچنكم
}
&
\textbf{
الكلمة الصعيدى II
بالچنكم
}
&
\textbf{
المعنى
}
\\
\midrule[1.25pt]
\foreignlanguage{coptic}{ⲉⲙⲕⲁϩ} &\foreignlanguage{coptic}{ⲙ̀ⲕⲁϩ} &\foreignlanguage{coptic}{ⲙ̅ⲕⲁϩ} &ألَم
\\
\midrule[1.25pt]
\foreignlanguage{coptic}{ⲉⲛⲕⲟⲧ} &\foreignlanguage{coptic}{ⲛ̀ⲕⲟⲧ} &\foreignlanguage{coptic}{ⲉ̅ⲛⲕⲟⲧ} & ينام
\\
\midrule[1.25pt]
\foreignlanguage{coptic}{ⲉⲛϩⲟⲧ} &\foreignlanguage{coptic}{ⲛ̀ϩⲟⲧ} &\foreignlanguage{coptic}{ⲛ̅ϩⲟⲧ} & أمين . مخلص
\\
\bottomrule[1mm]
\end{tabular}
\end{center}
\end{table}
\end{document}
答案1
就在你收到堆栈溢出消息之前
LaTeX3 Warning: The command '\rmfamily' was undefined but not the associated
(LaTeX3) commands '\rmfamily code' and/or '\rmfamily defaults'. Maybe
(LaTeX3) you tried using \let. This may lead to an infinite loop.
所以我怀疑你的
\babelfont{rm}{Latin Modern Roman}
命令导致循环,这不是真正的答案,我会将其标记为 cw,只是将指针放到目前为止......
(我用我已有的字体替换了您的字体,实际的字体不会产生错误)
实际上,该错误与字体无关,可以使用 luatex 或 pdftex 中的这个示例重现该错误
\documentclass{book}
\usepackage{caption}
\usepackage{footnoterange}
\usepackage[]{biblatex}
\begin{document}
\begin{table}[htbp]
\caption
[a]{\begin{footnoterange}
\footcite{Baramosy1888}
\end{footnoterange}
}
\end{table}
\begin{table}[htbp]
\caption
[a]
{a\footcite{Youseff1992}}
\end{table}
\end{document}