کتابنامه در LaTeX با BibTeX، natbib و biblatex
منابعتان را در یک فایل .bib در پروژه بگذارید، با \cite{key} (یا \citep، \citet، \parencite، \textcite) به آنها استناد کنید و \bibliography{...} یا \printbibliography را جایی بنویسید که فهرست منابع باید بیاید.
فایل .bib
یک فایل .bib برای هر منبع یک مدخل دارد. هر مدخل یک نوع (@article، @book، @inproceedings، @misc ...)، یک کلید که با آن به منبع استناد میکنید، و فیلدهایی مثل نویسنده، عنوان و سال دارد. مثالهای این صفحه از این فایل، refs.bib، استفاده میکنند:
@article{doe2024,
author = {John Doe and Erika Mustermann},
title = {Measuring Things Carefully},
journal = {Journal of Examples},
year = {2024},
volume = {44},
pages = {1--12}
}
@book{mustermann2021,
author = {Erika Mustermann},
title = {A Short Book on Long Tables},
publisher = {Example Press},
address = {Berlin},
year = {2021}
}فایل را مثل هر فایل دیگری به پروژهتان اضافه کنید. Scissor LaTeX همهٔ فایلهای .bib پروژه را میخواند و آنها را با هم ادغام میکند، پس لازم نیست نام فایل در \bibliography{refs} یا \addbibresource{refs.bib} با آن یکی باشد. برای اینکه یک فایل .bib را پیش از استفاده مرتب و یکدست کنید و مدخلهای تکراریاش را حذف کنید، از قالببند BibTeX استفاده کنید؛ پاککنندهٔ کلید ارجاع کلیدها را یکدست میکند.
BibTeX ساده: \cite و \bibliography
روش کلاسیک این است: \cite{key} در متن، سپس \bibliographystyle{...} و \bibliography{...} در جایی که فهرست میآید.
\cite با یک سبک عددی
Careful measuring is discussed by \cite{doe2024}, and long tables
in \cite[p.~44]{mustermann2021}.
\bibliographystyle{plain}
\bibliography{refs}فقط منابعی که به آنها استناد میکنید فهرست میشوند. برای فهرست کردن منبعی که به آن استناد نمیکنید، \nocite{key} بنویسید؛ \nocite{*} همهٔ مدخلهای فایلهای .bib را فهرست میکند، درست مثل یک نصب TeX.
natbib: استناد نویسنده-سال
با natbib و یک سبک نویسنده-سال مثل plainnat، فرمان \citet یک استناد درونمتنی («Doe and Mustermann (2024)») و \citep یک استناد پرانتزی میدهد.
\citet و \citep با plainnat
\citet{doe2024} measured carefully. Tables can be long
\citep{mustermann2021}, and plots can explain themselves
\citep[p.~44]{mustermann2023}.
\bibliographystyle{plainnat}
\bibliography{refs}biblatex: \parencite و \textcite
کاربران biblatex بسته را بارگذاری میکنند، فایل .bib را با \addbibresource معرفی میکنند و فهرست را با \printbibliography چاپ میکنند.
biblatex با \parencite و \textcite
\documentclass{article}
\usepackage{biblatex}
\addbibresource{refs.bib}
\begin{document}
\textcite{doe2025} keeps notes on typesetting.
Plots can explain themselves \parencite{mustermann2023}.
\printbibliography
\end{document}فرمانهای استناد
| فرمان | در Scissor LaTeX | توضیح |
|---|---|---|
\cite{key}، \cite{a,b} | کار میکند | چند کلید، هر کدام یک استناد جداگانه کنار هم چاپ میکنند. |
\cite[p.~44]{key} | کار میکند | یادداشت پس از کلید («p. 44») درون استناد میآید. |
\citep، \parencite، \autocite | کار میکند | پرانتزی؛ سبکهای عددی یک عدد چاپ میکنند. |
\citep[see][p.~44]{key} | تا حدی | یادداشت پیشین («see») جلوی پرانتزها چاپ میشود، نه درون آنها. |
\citet، \textcite | کار میکند | درونمتنی: نویسنده، سپس سال یا شماره. |
\citeauthor{key} | تا حدی | همان چیزی را چاپ میکند که \citet چاپ میکند، نه فقط نامها را. |
\citeyear{key} | کار میکند | فقط سال. |
\citealt، \citealp، \citenum | تا حدی | مثل یک \cite ساده چاپ میشوند. |
\footcite{key} | تا حدی | به صورت یک استناد سادهٔ درون خط چاپ میشود، نه در پانویس. |
\nocite{key} | کار میکند | بدون استناد در متن فهرست میشود. |
\nocite{*} | کار میکند | همهٔ مدخلهای فایلهای .bib را فهرست میکند. |
سبکهای ارجاع
نامی که در \bibliographystyle{...} میآید سبک را انتخاب میکند. Scissor LaTeX نامهای رایج سبکهای BibTeX را به سبکهای مشابه نگاشت میکند:
| \bibliographystyle{…} | نتیجه در Scissor LaTeX |
|---|---|
apalike, apa, apacite, authoryear | APA: author and year |
natbib, plainnat, abbrvnat, acl_natbib | Author and year, as natbib (plainnat) |
unsrtnat | Numbers in citation order, as unsrtnat |
ieeenat_fullname, ieee_fullname | IEEE: numbers in citation order |
splncs04, splncs03, splncs | Springer LNCS: numbers |
ACM-Reference-Format | ACM: numbers |
chicago, chicago-author-date | Chicago: author and date |
mla | MLA: author and page |
ieeetr, IEEEtran, ieee, plain, abbrv, unsrt, plainurl, abbrvurl, unsrturl, siam, acm | IEEE: numbers in citation order |
nature | Nature: superscript numbers |
vancouver | Vancouver: numbers |
harvard, agsm, dcu | Harvard: author and year |
apsrev4-2, apsrev4-1, apsrev, apsrmp4-2, apsrmp4-1, sn-aps | american-physics-society |
aipnum4-2, aipnum4-1, aipnum | american-institute-of-physics |
aipauth4-2, aipauth4-1 | Author and year, as natbib (plainnat) |
elsarticle-num, elsarticle-num-names, model1-num-names | elsevier-with-titles |
elsarticle-harv, model2-names | elsevier-harvard |
sn-mathphys-num, sn-mathphys | springer-mathphys |
sn-mathphys-ay, sn-basic, sn-vancouver-ay | springer-basic-author-date |
sn-vancouver-num, sn-vancouver | springer-vancouver |
sn-nature | Nature: superscript numbers |
sn-apacite, sn-apa | APA: author and year |
sn-chicago | Chicago: author and date |
amsplain, amsplainurl | AMS |
aa, aa-note, aa_url, aasjournalv7, aasjournal, aasjournal7, apj | APJ |
iopart-num, iopart | institute-of-physics-numeric |
mdpi | multidisciplinary-digital-publishing-institute |
plos2025, plos2015, plos2009 | plos |
icml…, iclr… (with a year) | Author and year, as natbib (plainnat) |
journal styles that number references (…-num, apsrev…, JHEP, aip…, achemso, siam…) | IEEE: numbers in citation order |
journal author-year styles (aasjournal…, …-harv, mnras, aa, agu, ametsoc) | Author and year, as natbib (plainnat) |
any other name (alpha, a project .bst …) | IEEE: numbers in citation order, with a note in the Problems tab |
plain، abbrv، unsrt و دیگر سبکهای کلاسیک شمارهدار از سبک IEEE استفاده میکنند: شمارهها در کروشه، به ترتیبی که منابع برای اولین بار استناد میشوند. هر نامی که در جدول نیست، مثل alpha یا amsalpha (که برچسبهایشان شبیه [Knu84] است) یا یک فایل .bst از خودتان، از همان سبک شمارهدار استفاده میکند و زبانهٔ مشکلات این را میگوید: «Bibliography style alpha is not available; using numbered references [1] instead». چیدمانهای کنفرانسی سبک خودشان را انتخاب میکنند.
منابع گمشده و thebibliography
کلیدی که در هیچ فایل .bib نیست به صورت [key?] به رنگ قرمز چاپ میشود و زبانهٔ مشکلات آن را فهرست میکند:
کلیدی که در فایل .bib نیست
This is in the file \cite{doe2024}, this is not \cite{nobody2020}.
\bibliography{refs}زبانهٔ مشکلات: Citations not found in the .bib file: nobody2020
مدخلی از یک فایل .bib که خوانده نمیشود، برای مثال مدخلی که آکولاد بستهاش جا افتاده یا کلیدی که دو بار به کار رفته، بهتنهایی کنار گذاشته میشود: زبانهٔ مشکلات آن را با شمارهٔ خطش نام میبرد، مثل «Skipped .bib entries: doe2023 (line 12, a closing brace is missing)»، و بقیهٔ مدخلها طبق معمول استناد میشوند.
یک فهرست thebibliography دستنویس به صورت فهرست چاپ میشود، اما نمیتوان به کلیدهای \bibitem آن استناد کرد. برای استناد به این مدخلها، آنها را به یک فایل .bib منتقل کنید.
تفاوتها با یک نصب TeX
دربارهٔ بستهها، natbib و biblatex را ببینید. راهنماهای کامل در CTAN هستند: natbib، biblatex.
پرسش و پاسخ
چطور در LaTeX کتابنامه اضافه کنم؟
یک فایل .bib به پروژه اضافه کنید، با \cite{key} به مدخلها استناد کنید و \bibliography{refs} (یا با biblatex، \printbibliography) را جایی بنویسید که فهرست باید ظاهر شود.
چرا استناد من [key?] نشان میدهد؟
کلید در هیچ فایل .bib پروژه نیست. املای آن را بررسی کنید و مطمئن شوید که فایل .bib به پروژه اضافه شده است. زبانهٔ مشکلات همهٔ کلیدهای گمشده را فهرست میکند.
فرق \citet و \citep چیست؟
\citet برای استنادهایی است که بخشی از جملهاند («Doe and Mustermann (2024) show ...»). \citep کل استناد را درون پرانتز میگذارد.
آیا باید BibTeX را اجرا کنم؟
نه. Scissor LaTeX هر بار که حروفچینی میکند خودش فایلهای .bib را میخواند، پس استنادها و فهرست منابع همیشه بهروزند.
هر مثال این صفحه هنگام ساخت سایت با Scissor LaTeX حروفچینی میشود. آخرین بهروزرسانی: 2026-11-07.