MWE:

MWE:

을 사용하면 동일한 책을 가리키는 항목이 여러 개 있을 때 in 에 the 와 편집자의 성을 사용하는 것과 유사하게 동작하고 biblatex-chicago싶습니다 .@bookinbook@incollectionshorttitle@bookcrossref

MWE:

\documentclass{article}

\usepackage[notes]{biblatex-chicago}

\begin{filecontents*}{\jobname.bib}
@book{kotter:schriften.jdam,
    Address = {Berlin},
    Author = {{John of Damascus}},
    Date = {1969/2013},
    Editor = {Kotter, Bonifaz},
    Publisher = {de Gruyter},
    Shorttitle = {Schriften},
    Title = {Die Schriften des Johannes von Damaskos},
    Volumes = {7}}

@bookinbook{jdam:expositio.fidei:kotter1973,
    Crossref = {kotter:schriften.jdam},
    Entrysubtype = {primary},
    Title = {Expositio fidei},
    Volume = {2},
    Year = {1973}}

@bookinbook{jdam:instit.element:dialectica:kotter1969,
    Crossref = {kotter:schriften.jdam},
    Entrysubtype = {primary},
    Title = {Institutio elementaris. Capita philosophica (Dialectica)},
    Volume = {1},
    Year = {1969}}
\end{filecontents*}
\addbibresource{\jobname.bib}


\begin{document}
\nocite{kotter:schriften.jdam,jdam:instit.element:dialectica:kotter1969,jdam:expositio.fidei:kotter1973}
\printbibliography
\end{document}

현재 출력:

여기에 이미지 설명을 입력하세요

원하는 출력:

다메섹의 요한.Die Schriften des Johannes von Damaskos. 보니파즈 코터(Bonifaz Kotter)가 수정함. 7 권. 베를린: 드 그뤼터(de Gruyter), 1969-2013.

——.신앙의 증거. 코터에서는슈리프텐, 권. 2. 베를린: 드 그뤼터(de Gruyter), 1973.

——.연구소 Elementaris. Capita philosophica(변증법). 코터에서는슈리프텐, 권. 1. 베를린: 드 그뤼터(de Gruyter), 1969년.

답변1

biblatex-chicagobooklongxref여기에 참고문헌 항목을 줄이는 데 도움이 되는 옵션이 있습니다 .

\documentclass{article}

\usepackage[notes,booklongxref=false]{biblatex-chicago}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{kotter:schriften.jdam,
    Address = {Berlin},
    Author = {{John of Damascus}},
    Date = {1969/2013},
    Editor = {Kotter, Bonifaz},
    Publisher = {de Gruyter},
    Shorttitle = {Schriften},
    Title = {Die Schriften des Johannes von Damaskos},
    Volumes = {7}}

@bookinbook{jdam:expositio.fidei:kotter1973,
    Crossref = {kotter:schriften.jdam},
    Entrysubtype = {primary},
    Title = {Expositio fidei},
    Volume = {2},
    Year = {1973}}

@bookinbook{jdam:instit.element:dialectica:kotter1969,
    Crossref = {kotter:schriften.jdam},
    Entrysubtype = {primary},
    Title = {Institutio elementaris. Capita philosophica (Dialectica)},
    Volume = {1},
    Year = {1969}}
\end{filecontents*}
\addbibresource{\jobname.bib}


\begin{document}
\nocite{kotter:schriften.jdam,jdam:instit.element:dialectica:kotter1969,jdam:expositio.fidei:kotter1973}
\printbibliography
\end{document}

다메섹의 요한. Die Schriften des Johannes von Damaskos. 보니파즈 코터(Bonifaz Kotter)가 수정함. 7 권. 베를린: 드 그뤼터(de Gruyter), 1969-2013.//---. Expositio Fidei. Schriften, vol. 2.//---. 연구소 Elementaris. Capita philosophica(변증법). Schriften, vol. 1.


출력은 여러분이 염두에 두었던 것과 정확히 일치하지는 않지만 충분히 가깝기를 바랍니다.

가 주로 와 연관되어 있는 경우 작품 의 를 @bookinbook참조하기 위해 항목 에서 짧은 참조를 얻는 것이 나에게는 특히 어려운 것 같습니다 .editor@book@bookauthor

다른 문제는 필드 값을 저장하고 복원하여 해결할 수 있습니다. 내부적으로 단편은 crossref인용 명령에 의해 생성됩니다. 매크로에 필드를 저장하고 나중에 매크로를 복원하여 해당 인용 명령에 추가 정보를 전달할 수 있습니다.

\documentclass{article}

\usepackage[notes,booklongxref=false]{biblatex-chicago}

\usepackage{xpatch}
\xapptobibmacro{crossref:volume+postnote}{%
  \newunit\newblock
  \usebibmacro{saved:publ+loc+year}%
}{}{}

\makeatletter
\xapptobibmacro{xrefprenote}{%
  \iflistundef{publisher}
    {\undef\cbx@incollpublisher}
    {\savelist{publisher}{\cbx@incollpublisher}}%
  \iflistundef{location}
    {\undef\cbx@incolllocation}
    {\savelist{location}{\cbx@incolllocation}}%
  \iffieldundef{year}
    {\undef\cbx@incollyear}
    {\savefield{year}{\cbx@incollyear}}%
  \iffieldundef{endyear}
    {\undef\cbx@incollendyear}
    {\savefield{endyear}{\cbx@incollendyear}}%
}{}{}


\newbibmacro*{saved:publ+loc+year}{%
  \ifboolexpr{
    not test {\iflistequals{publisher}{\cbx@incollpublisher}}
    or
    not test {\iflistequals{location}{\cbx@incolllocation}}
    or
    not test {\iffieldequals{year}{\cbx@incollyear}}
    or
    not test {\iffieldequals{endyear}{\cbx@incollendyear}}
  }
    {\restorelist{publisher}{\cbx@incollpublisher}%
     \restorelist{location}{\cbx@incolllocation}%
     \restorefield{year}{\cbx@incollyear}%
     \restorefield{endyear}{\cbx@incollendyear}%
     \printlist{location}%
     \iflistundef{publisher}%
       {\setunit*{\addcomma\addspace}}%
       {\setunit*{\addcolon\addspace}}%
     \printlist{publisher}%
     \setunit*{\addcomma\addspace}%
     \usebibmacro{date}}
    {}}%
\makeatother

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@book{kotter:schriften.jdam,
    Address = {Berlin},
    Author = {{John of Damascus}},
    Date = {1969/2013},
    Editor = {Kotter, Bonifaz},
    Publisher = {de Gruyter},
    Shorttitle = {Schriften},
    Title = {Die Schriften des Johannes von Damaskos},
    Volumes = {7}}

@bookinbook{jdam:expositio.fidei:kotter1973,
    Crossref = {kotter:schriften.jdam},
    Entrysubtype = {primary},
    Title = {Expositio fidei},
    Volume = {2},
    pages = {2-200},
    Year = {1973}}

@bookinbook{jdam:instit.element:dialectica:kotter1969,
    Crossref = {kotter:schriften.jdam},
    Entrysubtype = {primary},
    Title = {Institutio elementaris. Capita philosophica (Dialectica)},
    Volume = {1},
    pages = {1-100},
    Year = {1969}}
\end{filecontents*}
\addbibresource{\jobname.bib}


\begin{document}
\nocite{kotter:schriften.jdam,jdam:instit.element:dialectica:kotter1969,jdam:expositio.fidei:kotter1973}
\printbibliography
\end{document}

다메섹의 요한. Die Schriften des Johannes von Damaskos. 보니파즈 코터(Bonifaz Kotter)가 수정함. 7 권. 베를린: 드 그뤼터(de Gruyter), 1969-2013.//. Expositio Fidei. Schriften, 2:2~200. 베를린: 드 그뤼터(de Gruyter), 1973.//. 연구소 Elementaris. Capita philosophica(변증법). Schriften, 1:1–100. 베를린: 드 그뤼터, 1969.

관련 정보