biblatex
여기서 패키지를 사용하는 데 문제가 있습니다 !
스타일 에 있어서 authortitle
, 동일한 저자가 쓴 여러 작품을 인쇄할 때 참고문헌에서 저자 이름은 자동으로 대시로 대체됩니다.
그러나 스타 일상 apa
(APA 6.25 적용 시) 이러한 대시는 표시되지 않으며 각 작업 앞에 작성자 이름이 반복됩니다.
인용 및 참고문헌에 대해 APA 스타일을 유지하고 싶지만 반복되는 저자 이름 대신 대시를 사용하고 싶습니다. 파일 에서 답변을 검색해 보았지만 apa.bbx
LaTeX를 처음 접하고 어디서부터 시작해야 할지 모르겠습니다.
언급할 가치가 있는 경우 프랑스어로 apa 스타일을 사용하고 있다는 사실을 언급하는 것을 잊어버렸습니다.
그래서 지금 제가 얻은 것은 다음과 같습니다.
\documentclass{article}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{polyglossia}
\usepackage[style=apa, dashed=true, doi=false, isbn=false, url=false, backend=biber, sorting=nyt]{biblatex}
\DeclareLanguageMapping{french}{french-apa}
\setmainlanguage{french}
\bibliography{/example.bib}
\begin{document}
\part{Sources}
\printbibliography
\nocite{*}
\end{document}
그리고 내 example.bib 파일의 경우 :
@Misc{breen_yasukuni_2005,
author = {Breen, John},
title = {Yasukuni {Shrine}: {Ritual} and {Memory} {\textbar} {The} {Asia}-{Pacific} {Journal}: {Japan} {Focus}},
date = {2005-06},
journaltitle = {The Asia-Pacific Journal: Japan Focus},
url = {http://apjjf.org/-John-Breen/2060/article.html},
urldate = {2016-10-26},
}
@Book{breen_yasukuni_2007,
title = {Yasukuni, the war dead and the struggle for {Japan}'s past},
publisher = {C. HURST \& CO. PUBLISHERS},
author = {Breen, John},
date = {2007},
}
@Article{breen_resurrecting_2010,
author = {Breen, John},
title = {Resurrecting the {Sacred} {Land} of {Japan}},
volume = {37},
number = {2},
pages = {295--315},
date = {2010},
journaltitle = {Japanese Journal of Religious Studies},
}
@Book{breen_shinto_2000,
title = {Shinto in history: ways of the kami},
publisher = {University of Hawaiʻi Press},
author = {Breen, John and Teeuwen, Mark},
note = {OCLC: 43487317},
date = {2000},
location = {Honolulu},
}
@Book{breen_new_2010,
title = {A new history of {Shinto}},
publisher = {Wiley-Blackwell},
author = {Breen, John and Teeuwen, Mark},
date = {2010},
}
@Book{casanova_public_2011,
title = {Public religions in the modern world},
publisher = {University of Chicago Press},
author = {Casanova, José},
date = {2011},
}
답변1
참고문헌에 대시를 사용하면 (아마도) 문서가 더 이상 APA 스타일을 준수하지 않게 되므로 주의하세요. 귀하의 biblatex-apa
패키지가 상당히 오래된 것 같습니다.
다행스럽게도 우리에게 필요한 것 중 일부는 이미 에 구현되어 있지만 apa.bbx
그 위에 조금 더 추가해야 합니다.
\documentclass[french]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=apa, backend=biber, dashed=true]{biblatex}
\DeclareLanguageMapping{french}{french-apa}
\addbibresource{biblatex-examples.bib}
\makeatletter
\renewbibmacro*{begrelated}{%
\booltrue{bbx@inset}}
\renewbibmacro*{endrelated}{%
\usebibmacro*{bbx:savehash}}
\newbibmacro*{bbx:dashcheck}[2]{%
\ifboolexpr{
test {\iffieldequals{fullhash}{\bbx@lasthash}}
and
not test \iffirstonpage
and
(
not bool {bbx@inset}
or
test {\iffieldequalstr{entrysetcount}{1}}
)
}
{#1}
{#2}}
\renewbibmacro*{author}{%
\ifnameundef{author}
{\usebibmacro{labeltitle}%
\global\undef\bbx@lasthash}
{\usebibmacro{bbx:dashcheck}
{\bibnamedash}
{\printnames[apaauthor][-\value{listtotal}]{author}%
\usebibmacro{bbx:savehash}}%
\setunit*{\addspace}%
\printfield{nameaddon}%
\ifnameundef{with}
{}
{\setunit{}\addspace\mkbibparens{\printtext{\bibstring{with}\addspace}%
\printnames[apaauthor][-\value{listtotal}]{with}}
\setunit*{\addspace}}}%
\newunit\newblock%
\usebibmacro{labelyear+extrayear}}
\renewbibmacro*{editorinauthpos}{%
\global\booltrue{bbx:editorinauthpos}%
\usebibmacro{bbx:dashcheck}
{\bibnamedash}
{\printnames[apaauthor][-\value{listtotal}]{editor}}%
\setunit{\addspace}%
\ifnameundef{editor}
{\global\undef\bbx@lasthash}
{\usebibmacro{bbx:savehash}%
\printtext[parens]{\usebibmacro{apaeditorstrg}{editor}}%
% need to clear editor so we don't get an "In" clause later
% But we also need to set a flag to say we did this so we
% don't lose sight of the fact we once had an editor for
% various year placement tests
\clearname{editor}%
\setunit{\adddot\addspace}%
\usebibmacro{labelyear+extrayear}%
\setunit{\adddot\addspace}}}
\makeatother
\begin{document}
\cite{sigfridsson,knuth:ct:d,knuth:ct:c,knuth:ct:a}
\printbibliography
\end{document}