.bib 파일은 자신이 끝내 어떤 모습으로 인쇄될지 전혀 알지 못합니다. 그리고 그 “모름”이야말로 설계의 핵심입니다. .bib는 @article{shannon1948, author = {Shannon, Claude E.}, …} 같은 순수 텍스트 데이터베이스로, 문헌이 무엇인지만 기록할 뿐 어떻게 보여야 하는지는 적지 않습니다. 그래서 .bib 하나가 여러분이 쓰는 모든 LaTeX 논문과 그 논문을 보내는 모든 학술지보다 오래 살아남습니다. 까다로운 점은 데이터베이스에도 문법이 있고, 그 문법에 뜻밖의 규칙이 몇 가지 섞여 있다는 것입니다. .bib 안에서 %는 주석의 시작이 아니고, 이름 속의 쉼표에는 매우 구체적인 의미가 있으며, 스타일이 제목을 고쳐 쓰기로 했을 때 여러분에게 남은 방패는 중괄호 한 쌍뿐입니다. 이 페이지는 파일 자체를 다룹니다. 엔트리 종류, 필드, 인용 키 고르는 법, 이름의 문법, 악센트 문자, @string과 crossref까지입니다.
이 분업 자체가 1980년대 중반에 내려진 설계 판단입니다. 데이터(.bib)와 겉모습(.bst 스타일)을 떼어 두면, 제출처가 바뀌어도 스타일 한 줄만 고치면 되고 데이터는 손댈 필요가 없습니다. 뒤집어 말하면, .bib에 체재를 적어 넣고 싶어지는 순간 대개 이미 진 것입니다. 도구를 돌리는 방법——latex → bibtex → latex → latex 순서와 .bst 고르는 법——은 BibTeX 페이지가, 본문에서 \cite를 쓰는 방법은 인용 페이지가 다룹니다. 여기서는 오직 파일 안쪽만 봅니다.
엔트리 하나의 구조: @종류{키, 필드 = {값}}
엔트리는 세 부품으로 이루어집니다. @ 뒤의 종류, 여는 중괄호 바로 안의 인용 키, 그리고 쉼표로 구분되어 이어지는 필드입니다. 그 밖에 배울 네 번째 요소는 없습니다. 아래는 정보이론을 연 섀넌의 1948년 논문 한 건입니다.
@article{shannon1948,
author = {Shannon, Claude E.},
title = {A Mathematical Theory of Communication},
journal = {Bell System Technical Journal},
volume = {27},
number = {3},
pages = {379--423},
year = {1948}
}세부 사항은 관대합니다. 값은 중괄호 { }로도, 큰따옴표 " "로도 감쌀 수 있고, year = 1948처럼 숫자만인 값은 감싸지 않아도 됩니다. 마지막 필드 뒤의 쉼표는 있어도 없어도 됩니다. 종류 이름과 필드 이름은 대소문자를 구분하지 않으므로 @Article과 @article, Title과 title은 같은 것입니다. 실무에서는 중괄호로 통일하는 편이 무난합니다. 따옴표는 값 안에 "가 들어가는 순간 무너지고, @string 매크로와의 궁합도 중괄호가 낫기 때문입니다. pages = {379--423}의 이중 하이픈은 조판되면 en 대시 “–”가 됩니다. 하이픈 하나만 쓰면 짧은 하이픈 그대로 나와 범위 표기로는 어색합니다.
인용 키 고르는 법과 쓸 수 없는 문자
인용 키는 온전히 여러분의 것이며, .bib 안에서 고유하기만 하면 무엇이든 좋습니다. 다만 본문의 \cite{shannon1948}와 한 글자도 틀리지 않게 일치해야 하고 대소문자도 구분됩니다. 흔한 관례는 성 + 연도(shannon1948)이고, 충돌하면 shannon1948a, shannon1948b처럼 글자를 덧붙입니다. 기계가 만든 키보다 사람이 기억해 낼 수 있는 키가 결국 더 쓸모 있습니다. 쓸 수 없는 문자는 정해져 있습니다. 중괄호, 쉼표, 공백, 역슬래시, #, %, ~는 어디서나 금지이고, biber는 여기에 소괄호와 따옴표, =까지 거부합니다. 같은 키를 두 번 정의하면 BibTeX는 Repeated entry---line 15 of file refs.bib라고 말하며 나중 엔트리를 통째로 버립니다. 문헌 관리 프로그램에서 같은 기록을 두 번 가져왔을 때 벌어지는 전형적인 사고이므로 이 메시지는 기억해 둘 만합니다.
어떤 엔트리 종류를 쓸까: @article, @book, @inproceedings, @misc
종류는 “이 문헌이 무엇인지”를 선언합니다. 그리고 종류를 정하는 순간, 어떤 필드가 어떤 순서로 나올지도 스타일 쪽에서 결정됩니다. 고전적인 BibTeX의 표준 종류는 다음 14가지입니다. 종류마다 필수 필드(빠지면 경고)와 선택 필드가 정해져 있는데, 그 배정표를 가진 것은 여러분이 아니라 스타일(.bst)입니다.
| 종류 | 용도 | 주요 필수 필드 |
|---|---|---|
@article | 학술지나 정기간행물의 논문 | author, title, journal, year |
@book | 출판사가 명시된 책 | author 또는 editor, title, publisher, year |
@booklet | 출판사가 없는 소책자·자비 출판물 | title(최소한) |
@inproceedings | 회의록에 실린 논문 | author, title, booktitle, year |
@conference | @inproceedings의 별칭(Scribe 호환) | (@inproceedings와 같음) |
@proceedings | 회의록 자체. crossref의 부모로 사용 | title, year |
@incollection | 편저 안의 제목이 있는 독립 장 | author, title, booktitle, publisher, year |
@inbook | 책의 일부(장 또는 쪽 범위) | author/editor, title, chapter 또는 pages, publisher, year |
@phdthesis | 박사 학위논문 | author, title, school, year |
@mastersthesis | 석사 학위논문 | author, title, school, year |
@techreport | 기관에서 발행한 기술 보고서 | author, title, institution, year |
@manual | 기술 또는 소프트웨어 설명서 | title(최소한) |
@unpublished | 미출판 원고 또는 초안 | author, title, note |
@misc | 위 어디에도 맞지 않는 기타 자료 | 필수 없음(howpublished, note로 보완) |
망설이게 되는 조합은 둘입니다. @inbook와 @incollection에서 앞은 한 권의 책의 일부(예컨대 자기 책의 3장)이고, 뒤는 편자가 엮은 논문집 안의 다른 저자가 쓴 독립된 글입니다. @inproceedings와 @conference는 기능상 완전히 같습니다. @conference는 BibTeX의 조상인 조판 시스템 Scribe와의 호환을 위해 남아 있는 별칭일 뿐이므로, 새로 쓴다면 @inproceedings를 고르십시오. 학위논문은 학위에 따라 @phdthesis와 @mastersthesis로 갈리고, 어디에도 맞지 않는 것은 @misc로 떨어뜨린 뒤 howpublished나 note로 받쳐 줍니다.
현대적인 biblatex는 이 목록을 거의 모두 아우르면서 몇 가지를 더합니다. 웹 자료용 @online(별칭 @electronic), type 필드로 종류를 적어 구분하는 범용 @report, 학위를 가리지 않는 @thesis, 그리고 인용되지도 문헌 목록에 실리지도 않는 순수 데이터 보관소 @xdata입니다. @online은 arXiv와 프리프린트 기록에 알맞으며 아래에서 설명하는 eprint 계열 필드와 함께 씁니다. 이 새 종류들은 biber/biblatex를 전제로 하므로, 고전적인 bibtex와 .bst 조합에서는 해석되지 않을 수 있습니다.
필수 필드와 선택 필드, 그리고 DOI와 URL을 적는 자리
필드는 name = {value} 쌍입니다. 무엇이 필수이고 무엇이 선택인지는 종류마다 다르며, 그 선을 긋는 것은 스타일입니다. 필수 필드가 빠지면 BibTeX가 경고하고, 알지 못하는 필드는 (대부분의 스타일에서) 조용히 무시됩니다. 그래서 외부에서 가져온 메타데이터에 여분의 필드가 딸려 와도 해가 되지 않습니다. 종류를 가리지 않고 자주 만나는 필드는 다음과 같습니다.
author/editor— 저자 또는 편자. 여러 명을 쓰는 문법은 다음 절에서 다룹니다.title— 제목: 논문 제목, 책 제목, 장 제목.journal/booktitle— 학술지명(@article) 또는 수록된 책·회의록의 제목(@inproceedings,@incollection).year/month/date— 고전 BibTeX는year와month를, biblatex는date = {2026-05-01}같은 ISO 형식을 권합니다(연도만 있는date = {2026}도 됩니다).volume/number/pages— 권, 호, 쪽. 범위는pages = {379--423}처럼 이중 하이픈으로 씁니다.publisher/institution/school— 출판사 / (보고서의) 발행 기관 / (학위논문의) 학위 수여 대학.doi/url/urldate— DOI(10.…본문만,https://doi.org/는 붙이지 않음), URL, 그리고 biblatex의 열람 날짜.eprint/eprinttype/eprintclass— biblatex의 프리프린트 필드. arXiv라면eprint = {2405.00001},eprinttype = {arxiv}(예전 이름archivePrefix), 분야는eprintclass(예전 이름primaryClass)에 적습니다.note/howpublished— 자유 형식 보충 설명 / “어떻게 공개되었는가”.@misc엔트리의 URL이 흔히 놓이는 자리입니다.
여기에 거의 모두가 한 번은 빠지는 함정이 있습니다. 고전적인 표준 스타일은 doi도 url도 알지 못합니다. plain.bst 안에는 url이라는 문자열이 단 한 번도 나오지 않고, 정성껏 채워 넣은 필드는 경고 한 마디 없이 사라집니다. 빠져나갈 길은 셋입니다. \usepackage{url}을 불러와 주소를 howpublished = {\url{https://…}}에 밀어 넣거나, plainnat(natbib)이나 IEEEtran처럼 이 필드를 이해하는 스타일로 갈아타거나, biblatex로 옮기는 것입니다. biblatex에서는 doi, url, urldate가 모두 정식 필드이고, \usepackage[doi=false]{biblatex} 같은 옵션으로 출력을 끌 수도 있습니다. 데이터에는 언제나 둘 다 적어 두고, 찍을지 말지는 스타일이 정하게 하는 것이 올바른 습관입니다.
% classic BibTeX: standard .bst styles drop doi/url, so use howpublished
@misc{tug2024,
author = {{TeX Users Group}},
title = {TeX Live 2024},
howpublished = {\url{https://tug.org/texlive/}},
note = {Accessed 7 August 2026},
year = {2024}
}
% biblatex: doi, url and urldate are proper fields
@online{arxiv2405,
author = {Doe, Jane},
title = {A Preprint with a {DOI}},
date = {2024-05-01},
eprint = {2405.00001},
eprinttype = {arxiv},
doi = {10.1000/example},
url = {https://arxiv.org/abs/2405.00001},
urldate = {2026-08-07}
}저자명 쓰는 법: and, von, Jr와 네 부분 문법
여러 저자는 and로 구분합니다. 쉼표는 절대 안 됩니다. 쉼표에는 다른 일이 맡겨져 있기 때문입니다. BibTeX는 이름 하나를 First·von·Last·Jr 네 부분으로 읽고, 쓰는 방식은 딱 세 가지만 인정합니다. First von Last, von Last, First, von Last, Jr, First이며, 쉼표는 부분의 경계를 알리는 기호입니다. 그래서 author = {Shannon, Claude E.}는 성 Shannon, 이름 Claude E.를 뜻합니다. 보통은 첫 번째 자연 어순으로 충분하지만 두 경우에는 통하지 않습니다. Jr가 있을 때, 그리고 성이 여러 단어인데 von이 없을 때입니다. Per Brinch Hansen이라고 쓰면 BibTeX는 “Brinch”를 이름의 일부로 잘못 읽습니다. Brinch Hansen, Per라고 쓰면 오독의 여지가 없습니다.
@book{names2026,
author = {de la Vall{\'e}e Poussin, Charles Louis Xavier Joseph
and Brinch Hansen, Per
and Ford, Jr., Henry
and {The TeX Users Group}
and others},
title = {Four Ways to Write One Name},
publisher = {William Reid {and} Company},
year = {2026}
}그렇다면 BibTeX는 de la가 von 부분이라는 것을 어떻게 알까요. 규칙은 놀랄 만큼 단순합니다. 중괄호 바깥에서 첫 글자가 소문자이면 그 토큰은 von으로 간주됩니다. de la Vall{\'e}e Poussin에서 de와 la는 소문자로 시작하므로 von 부분이 되고, 뒤따르는 두 단어가 Last 부분입니다. 이 규칙은 역이용할 수도 있어서, 대문자로 시작하는 가짜 제어 시퀀스를 앞에 붙이면 소문자로 시작하는 성도 Last 부분으로 밀어 넣을 수 있습니다. 여기서 실무적인 결론 셋이 나옵니다. 저자가 너무 많으면 목록 끝을 and others로 맺으면 스타일이 “et al.”로 바꿔 줍니다. 단체명은 {The TeX Users Group}처럼 전체를 중괄호로 감싸야 안의 and가 구분자로 읽히지 않습니다. biblatex에서는 이 규칙이 publisher, institution, organization, location 같은 “리터럴 리스트”에도 미쳐서, 회사 이름의 일부인 and는 publisher = {William Reid {and} Company}처럼 감싸 주어야 합니다.
악센트와 비 ASCII 이름: G{\"o}del과 Gödel은 같지 않습니다
고전적인 bibtex에게 악센트 붙은 문자는 “특수 문자”입니다. 최상위 여는 중괄호 바로 뒤에 역슬래시가 오고, 짝이 되는 닫는 중괄호까지가 한 덩어리입니다. {\"o}나 {\'e}가 그런 것으로, BibTeX는 이 덩어리 전체를 글자 하나로 셉니다. 그 효과는 레이블에서 뚜렷하게 드러납니다. alpha 스타일에서 G{\"o}del은 G{\"o}d31이라는 레이블을 만들지만, 같은 이름을 날것의 UTF-8로 Gödel이라 쓰면 Gö31이 나옵니다. ö가 2바이트를 차지하고, 바이트 단위로 세는 bibtex 0.99d가 거기서 세 글자를 다 써 버리기 때문입니다. 정렬에서도 같은 일이 벌어지며, 일본어·중국어·한국어 이름이라면 사정이 더 나쁩니다. 실무적인 결론은 하나입니다. 비 ASCII 이름을 다룬다면 biber를 쓰십시오. biber는 UTF-8을 전제로 설계되었고 로캘에 맞는 대조 규칙으로 정렬합니다. 굳이 고전 BibTeX에 남아야 한다면 이름을 {\"o} 형식으로 쓰거나 8비트를 지원하는 bibtex8 / bibtexu로 바꾸십시오.
% classic bibtex + alpha.bst -> label [G{\"o}d31]
@article{godel1931a,
author = {G{\"o}del, Kurt},
title = {On Formally Undecidable Propositions},
journal = {Monatshefte},
year = {1931}
}
% same name in raw UTF-8 -> label [Gö31] under bibtex 0.99d; fine under biber
@article{godel1931b,
author = {Gödel, Kurt},
title = {Same Name, Raw UTF-8},
journal = {Monatshefte},
year = {1931}
}{DNA}에 왜 중괄호가 필요한가, 그리고 필요 없을 때
plain, abbrv, unsrt, alpha 같은 고전적인 스타일은 논문 제목을 첫 글자만 남기고 소문자로 바꿉니다. 그래서 title = {A Theory of DNA and Galois Theory}는 “A theory of dna and galois theory”로 출력됩니다. 고유명사도 약어도 봐주지 않습니다. 막을 도구는 하나뿐입니다. 지키고 싶은 범위를 중괄호 한 겹으로 더 감싸는 것입니다. {DNA}라고 쓰면 그 범위는 변환 바깥에 놓입니다. 이 한 수를 모르는 것이 망가진 참고문헌 목록의 가장 큰 원인입니다. 처리기가 왜 이렇게 동작하는지는 BibTeX 페이지의 몫입니다.
그런데 biblatex + biber에서는 이야기가 달라집니다. numeric, authoryear 같은 표준 스타일은 제목의 대소문자를 아예 건드리지 않습니다. 쓴 그대로 나옵니다. 문두 대문자화는 \DeclareFieldFormat{titlecase}{\MakeSentenceCase*{#1}}처럼 명시적으로 요청했을 때만 일어나고, 그때조차 기본 옵션 bibtexcaseprotection=true가 BibTeX와 같은 중괄호 규칙을 재현하므로 {DNA}는 여전히 보호됩니다. 반대로 bibtexcaseprotection=false를 지정하면 중괄호는 보호를 그만두고, 대신 \NoCaseChange{DNA}로 뜻을 밝히게 됩니다. 즉 “중괄호로 지킨다”는 작법은 biblatex에서도 통하지만, 필요해지는 상황은 예전보다 훨씬 드뭅니다.
여기 알아 두면 이득인 세부가 하나 있습니다. 오래된 .bib 파일에서는 대문자 한 글자만 감싸는 title = {An Introduction to {L}a{T}e{X}} 같은 표기를 자주 보게 되는데, biblatex 매뉴얼은 이를 권하지 않습니다. 중괄호가 감싼 글자 양쪽의 커닝을 없애 버려서 단어 사이가 미묘하게 성겨지기 때문입니다. 단어 전체를 {LaTeX}로 감싸면 보호 효과는 같으면서 자간은 망가지지 않습니다. 또 하나, 보호되는 것은 중괄호 안이지 제어 시퀀스 안이 아닙니다. 매크로는 글자와 함께 {\TeX book}처럼 감싸야 하며, 맨 \TeX는 보호되지 않습니다.
% unprotected: plain.bst prints "A theory of dna and galois theory"
% protected: prints "A theory of DNA and Galois theory"
@article{protect2026,
author = {Doe, Jane},
title = {A Theory of {DNA} and {Galois} Theory},
journal = {J. Test},
year = {2026}
}
% brace the whole word, not single letters: {LaTeX}, not {L}a{T}e{X}
% wrap a macro together with its text: {\TeX book}@string 약칭, @preamble, 그리고 .bib의 주석
같은 값이 자꾸 반복된다면 @string으로 매크로를 정의할 수 있습니다. 정의한 이름은 값 자리에 중괄호 없이 놓고, #로 다른 문자열과 이어 붙입니다. 학술지 약칭과 정식 명칭을 바꿔 가며 쓸 때의 정석이며, @string 정의만 모은 .bib을 따로 두고 \bibliography{strings,refs}처럼 먼저 읽히는 운용이 흔합니다. 사실 이 구조는 이미 쓰고 계십니다. 표준 스타일은 jan부터 dec까지의 달 이름을 미리 @string 매크로로 가지고 있고, 그래서 month = jan은 중괄호 없이 쓰는 것이 맞습니다. month = {jan}이라고 쓰면 매크로가 아니라 문자열 “jan”이 됩니다.
@string{bstj = {Bell System Technical Journal}}
@preamble{ "\newcommand{\noopsort}[1]{} " }
@article{shannon1948,
author = {Shannon, Claude E.},
title = {A Mathematical Theory of Communication},
journal = bstj # { (Supplement)},
month = jan,
year = {1948}
}
@comment{ everything in here is skipped, portably }@preamble은 성격이 조금 다릅니다. 그 안의 내용, 대개는 LaTeX 매크로 정의를 .bbl의 맨 앞으로 그대로 보냅니다. 정렬용 \noopsort 같은 작은 도구를 데이터와 함께 다니게 하고 싶을 때 씁니다. 주석에 대해서는 유명한 오해를 풀어야 합니다. .bib에서 %는 주석 문자가 아닙니다. 고전적인 bibtex는 엔트리(@…{}) 바깥의 모든 문자를 무시하므로, %로 시작하는 줄은 그저 무시되는 텍스트로 지나가며 주석처럼 보일 뿐입니다. 위험은 안쪽에 있습니다. 필드 값에 맨 %를 쓰면 그것이 .bbl로 흘러 들어가 이번에는 진짜 LaTeX 주석 문자가 되어 그 줄의 나머지를 먹어 버립니다. 값 안에서는 반드시 \%라고 쓰십시오.
이식성이 높은 형식은 @comment{ … }입니다. 안의 내용은 완전히 건너뛰며 biber에서도 안전합니다. 이것이 중요한 이유는 biber가 고전 bibtex보다 엄격해서, 엔트리 바깥에 놓인 맨 텍스트에 warning: 30 characters of junk seen at toplevel이라는 경고를 내기 때문입니다. 그리고 엔트리를 잠시 꺼 두고 싶을 뿐이라면 가장 짧은 길은 글자 하나를 지우는 것입니다. @article{…}을 article{…}로 바꾸면 그것은 더 이상 엔트리가 아니라 그저 무시되는 문자열입니다.
회의록 정보를 한 번만 쓰기: crossref 필드
crossref 필드는 어떤 엔트리가 부족한 필드를 다른 엔트리로부터 물려받게 합니다. 같은 회의록에서 논문 다섯 편을 인용할 때 회의명, 편자, 발행 연도를 다섯 번 쓸 필요는 없습니다. 부모로 @proceedings 한 건을 두고 자식 @inproceedings마다 crossref = {gg1988}이라고 쓰면 booktitle도 editor도 year도 위에서 내려옵니다. 데이터 중복이 사라지고, 같은 회의명이 조금씩 다르게 적히는 골치 아픈 사고도 함께 사라집니다.
@inproceedings{gneisser1988,
crossref = {gg1988},
author = {Gneisser, Rocky},
title = {No Gnats Are Taken for Granite},
pages = {133--139}
}
% the parent must appear LATER in the file than every entry citing it
@proceedings{gg1988,
editor = {Ford, Gerald and Carter, Jimmy},
title = {The Gnats and Gnus 1988 Proceedings},
booktitle = {The Gnats and Gnus 1988 Proceedings},
year = {1988}
}여기에는 규칙이 셋 따라붙습니다. 첫째, 부모는 자신을 참조하는 모든 엔트리보다 파일에서 뒤에 놓여야 합니다. 그래서 crossref 부모를 파일 끝에 모아 두는 관례가 자리 잡았습니다. 둘째, 부모를 명시적으로 \cite하지 않아도 자식이 둘 이상 가리키면 부모 자신이 문헌 목록에 나타납니다. 자식이 하나뿐이면 부모는 나타나지 않고, 대신 부모의 필드가 그 자식 안에 박혀 인쇄됩니다. 이 문턱값은 bibtex --min-crossrefs=N으로 바꿀 수 있습니다. 셋째, crossref의 중첩은 믿을 것이 못 되므로 부모에게 다시 부모를 두지 마십시오. biblatex에는 이와 별개로 xdata가 있어, 부모–자식 관계를 만들지 않고 데이터만 물려줍니다. 출판사와 소재지 조합처럼 그 자체로는 문헌이 아닌 묶음을 공유할 때 이쪽이 자연스럽습니다.
참고문헌 목록의 순서는 누가 정하는가
여러분이 아닙니다. 그리고 이것은 좋은 소식입니다. 목록에 나오는 순서는 .bib에 적은 순서와 아무 상관이 없고, 정하는 쪽은 처리 도구입니다. 고전적인 BibTeX에서는 순서를 스타일(.bst)이 고정합니다. 사용자가 지정할 여지는 거의 없어서, 스타일을 고르는 일이 곧 순서를 고르는 일입니다. plain과 alpha는 저자명 알파벳순, unsrt는 본문에서 처음 인용한 순서, ieeetr 같은 공학계 스타일도 인용 순서입니다. 데이터는 그대로 두고 \bibliographystyle{plain}을 \bibliographystyle{unsrt}로 바꾸기만 해도 목록 전체가 다시 늘어섭니다. 일본어 문헌의 정렬은 pbibtex / upbibtex가 맡습니다(BibTeX 페이지 참조).
biblatex는 그 결정권을 사용자에게 돌려줍니다. 스타일과 무관하게 \usepackage[sorting=nyt]{biblatex}라고 쓰기만 하면 순서가 정해집니다. 정렬 키는 문자 조합으로 나타내며 n은 name(이름), y는 year(연도), t는 title(제목)입니다.
| 옵션 | 키 순서 | 의미 |
|---|---|---|
nty | name → title → year | 이름, 제목, 연도(biblatex 기본값) |
nyt | name → year → title | 이름, 연도, 제목(저자-연도 방식에서 선호) |
ynt | year → name → title | 연도, 이름, 제목(시간순) |
ydnt | year(내림차순) → name → title | 최신 연도부터 오래된 연도 순 |
none | (정렬 없음) | 본문에서 인용한 순서(unsrt 상당) |
정리하면, 인용 순서를 유지하려면 BibTeX에서는 unsrt 스타일을, biblatex에서는 sorting=none을 고릅니다. 알파벳순이라면 BibTeX에서는 plain, biblatex에서는 기본값 nty(저자-연도 방식이면 nyt)입니다. 어느 쪽이든 .bib의 엔트리를 손으로 재정렬할 필요는 전혀 없습니다. 그것은 도구의 일이고, 여러분의 일은 오직 데이터를 정확하게 적는 것입니다. 올바른 종류를 고르고, 이름을 네 부분 문법에 맞춰 쓰고, 살아남아야 할 대문자를 중괄호로 감싸는 것. 이 셋을 지킨 .bib는 지금 쓰고 있는 논문보다 훨씬 오래 살아남습니다.