각주가 중첩될 경우 Biblatex \autocite

각주가 중첩될 경우 Biblatex \autocite

다음 사용자와 동일한 상황이 있습니다. biblatex: 각주가 중첩될 경우 \autocite 개선

\autocite내에서 사용하고 싶습니다 \footnote. 이로 인해 인용문이 괄호 안에 표시됩니다. 간단한 호출처럼 괄호 없이 인용문을 인쇄하기 위해 \autocite사용된 내부 동작을 변경하고 싶습니다 .\footnote\cite

\autocite내부 의 동작을 어떻게 변경할 수 있습니까 \footnote?

답변1

해결책은 인용 스타일에 따라 다릅니다. 와 같은 스타일과 를 실행하는 해당 변형(및 )의 경우 authortitle각주 에 verbose괄호 를 추가하지 않도록 기본 매크로를 재정의하기만 하면 됩니다 ( 로 대체 ).biblatex-juradissautocite=footnote\smartcite\mkbibparens\textnormal

\documentclass{article}

\usepackage[style=authortitle]{biblatex}

\DeclareCiteCommand{\smartcite}[\iffootnote\textnormal\mkbibfootnote]
  {\usebibmacro{prenote}}
  {\usebibmacro{citeindex}%
   \usebibmacro{cite}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

\DeclareMultiCiteCommand{\smartcites}
    [\iffootnote\textnormal\mkbibfootnote]{\smartcite}{\multicitedelim}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, A.},
  year = {2001},
  title = {Alpha},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

\null\vfill% just for the example

Some text \autocite{A01}.

Some text.\footnote{A footnote \autocite{A01}.}

\printbibliography

\end{document}

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

authoryear기본적으로 실행 autocite=inline(사용 )과 같은 스타일의 경우 원하는 작업을 수행하는 새로운 기본 매크로(예: )를 가리키는 새 옵션 값( 예: )을 \parencite선언해야 합니다 (일반 텍스트에 괄호를 추가하지 말고 각주에 추가하세요.)autociteinlineplainfootnote\mysmartcite

\documentclass{article}

\usepackage[style=authoryear]{biblatex}

\DeclareAutoCiteCommand{inlineplainfootnote}{\mysmartcite}{\mysmartcites}

\DeclareCiteCommand{\mysmartcite}[\iffootnote\textnormal\mkbibparens]
  {\usebibmacro{prenote}}
  {\usebibmacro{citeindex}%
   \usebibmacro{cite}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

\DeclareMultiCiteCommand{\mysmartcites}
    [\iffootnote\textnormal\mkbibparens]{\mysmartcite}{\multicitedelim}

\ExecuteBibliographyOptions{autocite=inlineplainfootnote}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, A.},
  year = {2001},
  title = {Alpha},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

\null\vfill% just for the example

Some text \autocite{A01}.

Some text.\footnote{A footnote \autocite{A01}.}

\printbibliography

\end{document}

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

관련 정보