\citet을 사용하여 작은 대문자로 저자를 인용하는 방법은 무엇입니까?

\citet을 사용하여 작은 대문자로 저자를 인용하는 방법은 무엇입니까?

나는 팔로우했다낫비브 참조 시트\citet예상대로 작동합니다 . 저자 이름을 소문자로 표시하고 싶은데 어떻게 해야 하나요?

나는해야 할 것 같아요 :

또는 [...] \citenumfont과 같은 글꼴 선언이나 명령으로 정의합니다 .\itshape\textit

그러나 나는 그것이 무엇을 의미하는지 전혀 모른다.

lockstep의 답변을 찬성하기 전에: 작동하지 않습니다. 작성자 이름이 작은 대문자로 표시되지 않으며 renew 명령이 효과가 없습니다. 그의 예제 코드는 지금처럼 컴파일되지 않습니다.

업데이트:다음은 최소한의 작업 예입니다.

smallcap.tex

\documentclass[fleqn]{article}
\usepackage[numbers]{natbib}
\makeatletter
%\renewcommand*{\NAT@nmfmt}[1]{\textsc{#1}}
\def\NAT@nmfmt#1{\textsc{#1}}
\makeatother
\begin{document}
As mentioned in \citet{Biegler97}~\dots
\bibliographystyle{plainnat}
\bibliography{dummy}
\end{document}

더미.턱받이

@BOOK{biegler97,
  AUTHOR = {Lorenz T. Biegler and Ignacio E. Grossmann and Arthur W. Westerberg},
  TITLE = {Systematic Methods of Chemical Process Design},
  YEAR = {1997},
  PUBLISHER = {Prentice Hall PTR, Upper Saddle River, NJ}
}

답변1

옵션 을 사용하면 numbers패치가 약간 더 복잡해집니다.

\usepackage{etoolbox}
\makeatletter
\patchcmd{\NAT@test}{\else\NAT@nm}{\else\NAT@nmfmt{\NAT@nm}}{}{}
\let\NAT@up\scshape
\makeatother

보기에낫비브작성자가 \NAT@nmfmt해당 장소에 신청하는 것을 잊어버렸습니다.\NAT@test

et al.로마자를 입력 하려면 ,

\usepackage{etoolbox,xstring}
\makeatletter
\patchcmd{\NAT@test}{\else\NAT@nm}{\else\NAT@nmfmt{\NAT@nm}}{}{}
\renewcommand{\NAT@nmfmt}{\expandafter\aliNAT@nmfmt\expandafter}
\newcommand\aliNAT@nmfmt[1]{{%
  \noexpandarg
  \def~{}%
  \edef\temp#1\edef\temp{\detokenize\expandafter{\temp}}%
  \begingroup\edef\x{\endgroup
    \noexpand\StrSubstitute{\temp}{\detokenize{etal}}}\x
    {\textnormal{et\nobreakspace al}}[\tempa]%
  \textsc{\tempa}}}
\makeatother

답변2

저자를 작은 대문자로 인용하면 다음과 같습니다.~ 아니다새 파일을 만드는 데 필요합니다 .bst. 대신 \NAT@nmfmt작성자 이름 형식을 담당하는 매크로를 다시 정의하세요. (보다이것에 대한 다른 응용 분야에 대한 답변입니다 \NAT@nmfmt.)

\documentclass{article}

\usepackage{natbib}

\makeatletter
\renewcommand*{\NAT@nmfmt}[1]{\textsc{#1}}
\makeatother

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@article{Bli74,
  author = {Blinder, Alan S.},
  year = {1974},
  title = {The economics of brushing teeth},
  journal = {Journal of Political Economy},
  volume = {82},
  number = {4},
  pages = {887--891},
}
\end{filecontents}

\begin{document}

As mentioned in \citet[99]{Bli74}~\dots

\bibliographystyle{plainnat}
\bibliography{\jobname}

\end{document}

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

답변3

p에서. 매뉴얼 15 natbib:

숫자 인용은 다른 글꼴로 인쇄될 수 있습니다. [The command] 와 같은 인수를 사용하는 명령이나 \citenumfont글꼴 선언으로 정의하는 것이 자동으로 기울임꼴 교정을 추가하는 것 보다 낫습니다 .\itshape\textit.\renewcommand{\citenumfont}[1]{\textit{#1}}\itshape

따라서 변경해도 \citenumfont인용이나 참고문헌에서 저자 이름을 조판하기 위해 LaTeX에서 사용하는 글꼴에는 영향을 미치지 않습니다. 이를 위해서는 .bst아마도 처음부터 참고 문헌 스타일 파일(확장자)을 만들어야 합니다 . 파일을 살펴보세요makebst.texnatbib( 그런데 패키지 작성자가 생성했습니다 ). TeX 또는 LaTeX에서 실행될 수 있습니다. 실행하면 원하는 참고 문헌 스타일(저자 이름의 특수 글꼴에 대한 일부 포함)에 대해 많은 질문(답변에 대해 미리 정의된 옵션 포함)을 묻고 이 정보를 사용하여 .bst 파일을 만듭니다.

부록: @lockstep이 그의 답변과 내 답변에 대한 의견에 언급한 것처럼, 저자/편집자 이름에 작은 대문자만 사용하려는 경우인용, 반드시 새 파일을 생성할 필요는 없습니다 .bst. 대신 \NAT@nmfmt매크로를 재정의할 수 있습니다. 그러나 작성자 및 편집자의 이름을 소문자로 조판하려면 새 .bst 파일을 생성해야 합니다.참고문헌 섹션또한 --...을 더한다음과 같은 지침을 삽입해야 합니다.

\makeatletter
\def\NAT@nmfmt#1{\textsc{#1}}
\makeatother

이제부터 이 인용 형식을 사용하는 모든 문서의 서문에 추가하세요. 단순히 makebst.tex프로그램에 이 기본 설정을 알려주고 단번에 끝내는 편이 낫습니다. 그렇죠?

관련 정보