我发现一个 MWE,当运行 tex4ebook 时,它会用 epubcheck 重现 2 次错误消息(在我的源代码中,错误出现了 20 次,完全相同)Fragmentbezeichner ist nicht angegeben
(翻译:“未指定碎片标签”)。该错误与有关\pageref{somelabel}
。
\documentclass[11pt]{report}
\usepackage[twoside,paperwidth=141mm,paperheight=211mm,top=11mm,includehead,bottom=19mm,outer=23mm,inner=18mm,bindingoffset=3mm]{geometry}
\usepackage[cmintegrals,cmbraces]{newtxmath}
\usepackage{ebgaramond-maths}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[german]{babel}
\usepackage{csquotes}
\usepackage{xpatch}
\usepackage[backend=biber,sortlocale=auto,bibstyle=authoryear,citestyle=authortitle-ticomp,datecirca=true,dateera=secular]{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage[continuous,page]{pagenote}
\makepagenote
\let\footnote=\pagenote
\newcommand*{\addtonotesnewcommand}[1]{%
\ifpnhaschapter%
\ifnum\value{pnotesavechap}=\value{chapter}\else%
\setcounter{pnotesavechap}{\value{chapter}}%
\fi%
\else%
\ifnum\value{pnotesavechap}=\value{section}\else%
\setcounter{pnotesavechap}{\value{section}}%
\fi%
\fi%
\addtonotes{\vspace*{0.7\baselineskip}\protect\noindent\vspace*{0.35\baselineskip}\textsc{\large #1}}%
}% by Michal H.
\renewcommand*{\notesname}{Anmerkungen und Verweise}
\usepackage{tex4ebook}
\providecommand\phantomsection{}
\ifdefined\HCode
\usepackage[xindy,noautomatic]{imakeidx}
\else
\usepackage[]{imakeidx}
\fi
\makeindex
\ifdefined\HCode
\usepackage[tex4ht,hyperindex=true,hyperfootnotes=true,
pdfauthor={Author},
pdftitle={Title},
pdfkeywords={Keywords}]{hyperref}
\else\fi
\urlstyle{same}
\begin{document}
\section{First Section}
Some text\label{text} for the first\label{first} page: \fullcite{sigfridsson}
\clearpage
\section{Second Section}
The error happens with epubcheck: Fragmentbezeichner ist nicht angegeben.
"`sind einige so umsichtig, dass sie, ohne sich eine Blöße zu geben, durch ein hämisches Lächeln, durch ein Kichern, durch eine gewisse harmlose Boshaftigkeit, das, was sie nicht imstande waren, mit Gründen zu beweisen, und was sie nicht einmal sich selbst einreden können, mit solchen kleinen Kunstgriffen höflicher Verachtung die Ignoranz, die in jedem anderen Falle offenbar würde, nicht nur bei sich verdecken, sondern sie dem Gegner anlasten wollen; denn sie kommen nicht zum Disputieren, um die Wahrheit zu finden oder zu suchen, sondern um des Sieges willen, und um gelehrter zu scheinen und als eifrigere Verfechter des Gegenteils."'\footfullcite[Siehe][Seite 19]{sigfridsson}\label{ZitatGiordanoBrunoEins} Dies ein Zitat \index{Bruno@Bruno, Giordano}Giordano Brunos.
\clearpage
So aber gebärden sich grausame Charaktere des Hasses und der Verachtung, wie dies Giordano Bruno\index{Bruno@Bruno, Giordano} in den vorherigen Zitaten auf den Seiten \pageref{ZitatGiordanoBrunoEins} und \pageref{ZitatGiordanoBrunoZwei} beschrieben hatte.
\clearpage
"`Wozu es wahrlich heroischen Sinnes bedurfte, um nicht die Arme sinken zu lassen, zu verzweifeln und überwältigt zu werden von solch reißendem Strom gemeinster Verleumdungen, wie sie über mich ergossen wurden von dem Neid der Unwissenden, der Anmaßung der Sophisten, der Lästersucht der Böswilligen, dem Getuschel der Diener, dem Murren der Lohnarbeiter, den Nörgeleien der Dienstboten, den Unterstellungen der Dummköpfe, den Verdächtigungen der Spitzel, dem Übereifer der Heuchler, der Missgunst der Ungebildeten, der Wut des Pöbels, dem Zorn des Gesindels, den Klagen der Benachteiligten und dem Geschrei der Gezüchtigten; es fehlte nur noch die Empörung von Seiten aufgebrachter, verstiegener und gehässiger Weiber, deren falsche Tränen wirkungsvoller zu sein pflegen als noch so hohe Wogen und Stürme der Anmaßung, Neid, Lästersucht, Murren, Verrat, Zorn, Empörung, Hass und Wut."'\footfullcite[Siehe][Seite 5f]{sigfridsson}\label{ZitatGiordanoBrunoZwei}
\printnotes
\printindex
\printbibliography
\end{document}
有什么办法可以解决这个问题?
如果您无法使用此文件重现错误,我可能需要让您了解文件-c myconfig.cfg
和-e mybuild.lua
。请告诉我。
答案1
尝试将其放入\label
你的命令中\footullcite
,例如:
\footfullcite[Siehe][Seite 19\label{ZitatGiordanoBrunoEins}]{sigfridsson}
您需要在脚注里使用它,否则会\label
在错误的页面上使用。
这是修复后的文档:
\documentclass[11pt]{report}
\usepackage[twoside,paperwidth=141mm,paperheight=211mm,top=11mm,includehead,bottom=19mm,outer=23mm,inner=18mm,bindingoffset=3mm]{geometry}
\usepackage[cmintegrals,cmbraces]{newtxmath}
\usepackage{ebgaramond-maths}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[german]{babel}
\usepackage{csquotes}
\usepackage{xpatch}
\usepackage[backend=biber,sortlocale=auto,bibstyle=authoryear,citestyle=authortitle-ticomp,datecirca=true,dateera=secular]{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage[continuous,page]{pagenote}
\makepagenote
\let\footnote=\pagenote
\newcommand*{\addtonotesnewcommand}[1]{%
\ifpnhaschapter%
\ifnum\value{pnotesavechap}=\value{chapter}\else%
\setcounter{pnotesavechap}{\value{chapter}}%
\fi%
\else%
\ifnum\value{pnotesavechap}=\value{section}\else%
\setcounter{pnotesavechap}{\value{section}}%
\fi%
\fi%
\addtonotes{\vspace*{0.7\baselineskip}\protect\noindent\vspace*{0.35\baselineskip}\textsc{\large #1}}%
}% by Michal H.
\renewcommand*{\notesname}{Anmerkungen und Verweise}
\usepackage{tex4ebook}
\providecommand\phantomsection{}
\ifdefined\HCode
\usepackage[xindy,noautomatic]{imakeidx}
\else
\usepackage[]{imakeidx}
\fi
\makeindex
\ifdefined\HCode
\usepackage[tex4ht,hyperindex=true,hyperfootnotes=true,
pdfauthor={Author},
pdftitle={Title},
pdfkeywords={Keywords}]{hyperref}
\else\fi
\urlstyle{same}
\begin{document}
\section{First Section}
Some text\label{text} for the first\label{first} page: \fullcite{sigfridsson}
\clearpage
\section{Second Section}
The error happens with epubcheck: Fragmentbezeichner ist nicht angegeben.
"`sind einige so umsichtig, dass sie, ohne sich eine Blöße zu geben, durch ein hämisches Lächeln, durch ein Kichern, durch eine gewisse harmlose Boshaftigkeit, das, was sie nicht imstande waren, mit Gründen zu beweisen, und was sie nicht einmal sich selbst einreden können, mit solchen kleinen Kunstgriffen höflicher Verachtung die Ignoranz, die in jedem anderen Falle offenbar würde, nicht nur bei sich verdecken, sondern sie dem Gegner anlasten wollen; denn sie kommen nicht zum Disputieren, um die Wahrheit zu finden oder zu suchen, sondern um des Sieges willen, und um gelehrter zu scheinen und als eifrigere Verfechter des Gegenteils."'\footfullcite[Siehe][Seite 19\label{ZitatGiordanoBrunoEins}]{sigfridsson} Dies ein Zitat \index{Bruno@Bruno, Giordano}Giordano Brunos.
\clearpage
So aber gebärden sich grausame Charaktere des Hasses und der Verachtung, wie dies Giordano Bruno\index{Bruno@Bruno, Giordano} in den vorherigen Zitaten auf den Seiten \pageref{ZitatGiordanoBrunoEins} und \pageref{ZitatGiordanoBrunoZwei} beschrieben hatte.
\clearpage
"`Wozu es wahrlich heroischen Sinnes bedurfte, um nicht die Arme sinken zu lassen, zu verzweifeln und überwältigt zu werden von solch reißendem Strom gemeinster Verleumdungen, wie sie über mich ergossen wurden von dem Neid der Unwissenden, der Anmaßung der Sophisten, der Lästersucht der Böswilligen, dem Getuschel der Diener, dem Murren der Lohnarbeiter, den Nörgeleien der Dienstboten, den Unterstellungen der Dummköpfe, den Verdächtigungen der Spitzel, dem Übereifer der Heuchler, der Missgunst der Ungebildeten, der Wut des Pöbels, dem Zorn des Gesindels, den Klagen der Benachteiligten und dem Geschrei der Gezüchtigten; es fehlte nur noch die Empörung von Seiten aufgebrachter, verstiegener und gehässiger Weiber, deren falsche Tränen wirkungsvoller zu sein pflegen als noch so hohe Wogen und Stürme der Anmaßung, Neid, Lästersucht, Murren, Verrat, Zorn, Empörung, Hass und Wut."'\footfullcite[Siehe][Seite 5f\label{ZitatGiordanoBrunoZwei}]{sigfridsson}
\printnotes
\printindex
\printbibliography
\end{document}
答案2
由于我的需求,我找到了另一个解决方案:
\newcounter{cnttextlabels}% in the preamble of sourcename.tex
\refstepcounter{cnttextlabels}\label{Somelabel}
% Always at the position in the text body where the reference should point at.
\pageref{Somelabel}
% Used in text for page-references to refer to the appropriate label in a text position where no other counter need to be refered to.
这将 epubcheck 中的错误从 20 减少到 0(零),并使其有效。我偶尔测试了页面引用,发现它们工作正常(在此答案之前并非如此,因为 epubcheck 中的 20 个错误产生了 20 个不起作用的页面引用超链接)
问题是,我既不需要标记,\footfullcite[][]{}
也不需要标记其他任何 \section{}
似乎都有计数器的东西。
因此我为我的 定义了一个新的计数器labeling within arbitrary text passages
,例如可能有良好参考的引号或特殊内容的定义(并且没有新的 cnttextlabels 的计数器)。