저는 biblatex
Biber 백엔드를 사용하여 imakeidx
논문을 색인화합니다. 본문에서는 \citetitle
책이나 기사의 이름을 언급하는데 사용합니다. 이는 자동으로 색인에 추가됩니다. 나는 그것을 피하고 싶습니다. 이러한 항목을 색인에 유지하거나 추가하지 않는 biblatex
방법 이 있습니까 ?imakeidx
MWE는 다음과 같습니다.
\begin{filecontents*}{\jobname.bib}
@article{lewis1979a,
Author = {David Lewis},
Journal = {Philosophical Review},
Number = {4},
Pages = {513--543},
Title = {Attitudes \emph{De Dicto} and \emph{De Se}},
Volume = {88},
Year = {1979},
}
\end{filecontents*}
\documentclass{article}
\usepackage[backend=biber,style=philosophy-classic]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{imakeidx}
\makeindex[options=-s latex.ist]
\begin{document}
As described by in Lewis's \citetitle{lewis1979a}, blabla.\index{Some Entry}
\printbibliography
\printindex
\end{document}
인덱스의 출력은 다음과 같습니다.
답변1
어떤 이유로 biblatex-philsophy
의 \citetitle
명령은 을 확인하지 않지만 \ifciteindex
항상 제목을 색인화합니다. 수표를 다시 추가한 다음 정의를 사용하세요.
\DeclareCiteCommand{\citetitle}
{\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\usebibmacro{prenote}}
{\ifciteindex{\indexfield{indextitle}}{}%<--- the check is new
\printtext[bibhyperref]{\printfield[citetitle]{labeltitle}}}
{\multicitedelim}
{\usebibmacro{postnote}}
\DeclareCiteCommand*{\citetitle}
{\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\usebibmacro{prenote}}
{\ifciteindex{\indexfield{indextitle}}{}%<--- the check is new
\printtext[bibhyperref]{\printfield[citetitle]{title}}}
{\multicitedelim}
{\usebibmacro{postnote}}