Atıf ve LaTeX rehberi · Hızlı yanıt
Overleaf ve LaTeX'te Sık Karşılaşılan BibTeX Atıf Hataları Nasıl Çözülür?
Overleaf veya yerel LaTeX ortamında derleme yaparken metin içinde soru işareti [?] çıkması, "Citation undefined" uyarısı, Biber motor çakışmaları ve özel karakter kırılmalarını adım adım giderin.
Doğrudan yanıt
LaTeX ve Overleaf'te atıfların soru işareti [?] olarak kalmasının temel nedeni çok geçişli derleme (pdflatex → bibtex → pdflatex) zincirinin kopması, harf duyarlılığı veya .bib sözdizimi hatalarıdır.
Karmaşık hata arayışına girmeden önce: (1) Overleaf önbelleğini temizleyin, (2) \bibliography komutundan .bib uzantısını kaldırın, (3) citekey harf duyarlılığını eşitleyin ve (4) süslü parantez kapanışlarını denetleyin.
Hızlı kontrol listesi
Temel teşhis adımları
- 01
Overleaf'te Recompile yanındaki çöp kutusundan 'Clear cached files' yapın
- 02
\cite{key} ile .bib içindeki @article{key, harflerinin birebir eşleştiğini teyit edin
- 03
Klasik BibTeX'te \bibliography{ref} komutuna asla .bib uzantısı eklemeyin
- 04
BibLaTeX kullanıyorsanız Overleaf menüsünden derleyici motorunu 'biber' seçin
- 05
Dergi ve başlık alanlarındaki &, %, _ işaretlerinin önüne ters eğik çizgi (\) koyun
- 06
Kurumsal yazarları {{Kurum Adı}}, başlıktaki kısaltmaları {COVID-19} ile koruyun
Citation undefined uyarısını ve metindeki [?] soru işaretlerini giderin
LaTeX ve Overleaf derleyicileri, kaynakçayı tek bir çalıştırmada oluşturmaz. Klasik derleme döngüsü çok geçişlidir (multi-pass): İlk geçişte (pdflatex) metin içindeki \cite{anahtar} komutları taranıp .aux kütüğüne yazılır; ikinci aşamada BibTeX veya Biber bu kütüğü okuyarak biçimlendirilmiş .bbl dosyasını üretir; üçüncü geçişte ise LaTeX .bbl kütüğünü okuyup [?] yerine doğru atıf etiketini basar.
Overleaf'te metinde soru işareti kalmasının en yaygın nedeni, derleme önbelleğinin bozulması veya .bib dosyası tanımlamasındaki sözdizimi hatalarıdır. Klasik BibTeX kullanımında \bibliography{referanslar} komutunda dosya uzantısının (.bib) kesinlikle yazılmaması gerekir; uzantı eklendiğinde derleyici dosyayı bulamaz.
Adım 01 doğrulama noktaları
- Overleaf Recompile butonu yanındaki çöp kutusu simgesinden 'Clear Cached Files' yapıldı
- \bibliography{dosya-adi} komutunda .bib uzantısının yazılmadığı teyit edildi
- Metin içi \cite{key} ile .bib dosyasındaki @article{key, anahtarının büyük/küçük harf duyarlılığı (case-sensitivity) eşitlendi
Overleaf otomatik derleme bazen ara kütüklerde takılabilir; derleme hatası sürerse önbelleği temizleyip doğrudan 'Recompile from scratch' yapın.
Motor uyuşmazlığını çözün: Klasik BibTeX vs. Modern Biber (backend=biber)
Modern akademik yazımda iki farklı bibliyografya ekosistemi bulunur: Geleneksel natbib paketi klasik 8-bit BibTeX motorunu kullanırken; modern biblatex paketi varsayılan olarak Unicode/UTF-8 destekli Biber motorunu şart koşar. Araştırmacı \usepackage[backend=biber]{biblatex} tanımlayıp Overleaf ayarlarında derleyiciyi BibTeX bıraktığında bibliyografya tamamen boş basılır.
Hangi paketi kullandığınızı belge başlığınızda (preamble) belirleyin: Natbib kullanıyorsanız \bibliographystyle{} ve \bibliography{} ikilisini; BibLaTeX kullanıyorsanız \addbibresource{dosya.bib} (bu komutta .bib uzantısı zorunludur) ve \printbibliography komutlarını eşleştirin.
Adım 02 doğrulama noktaları
- BibLaTeX kullanılıyorsa Overleaf Menu -> Settings -> LaTeX Engine/Default Compiler uyumu kontrol edildi
- Natbib için \bibliography{dosya} (uzantısız), BibLaTeX için \addbibresource{dosya.bib} (uzantılı) ayrımı doğrulandı
- Aynı belgede hem natbib hem de biblatex paketlerinin aynı anda çağrılmadığı teyit edildi
BibTeX sözdizimi (Syntax) ve eksik virgül/parantez hatalarını ayıklayın
BibTeX ayrıştırıcısı (parser) son derece katı bir dil yapısına sahiptir. Bir kaynak girdisinde citekey'den hemen sonra virgül unutulduğunda veya alan değerini kapatan süslü parantez '}' eksik kaldığında derleyici 'I was expecting a comma or a right brace' hatası verir ve sonraki tüm kaynakları yok sayar.
Overleaf hata logunda kırmızı ünlem belirdiğinde doğrudan hata satırına değil, bir önceki kaynak girdisinin sonuna bakın. Çoğu zaman hata, önceki girdinin kapanış süslü parantezinin unutulmasından kaynaklanır.
Adım 03 doğrulama noktaları
- Her @article, @book veya @inproceedings girdisinde citekey'den sonra virgül konuldu
- Tüm açılan süslü parantezlerin ({}) ve çift tırnakların (") eksiksiz kapandığı sayıldı
- Alan adları arasında (title, author, year, journal) virgül ayrımı teyit edildi
Özel karakter patlamalarını (&, %, _, # ve Türkçe harfler) nötralize edin
Google Scholar veya yayıncı sayfalarından kopyalanan hazır BibTeX kayıtlarında sıkça rastlanan '&' (ve işareti), '%' (yüzde), '_' (alt çizgi) veya '#' işaretleri LaTeX tarafından rezerve edilmiş özel komutlardır. Örneğin 'IEEE Transactions on Antennas & Propagation' başlığındaki '&' karakteri kaçırılmadığında derleyici bunu tablo sütun ayıracı sanarak 'Misplaced alignment tab character &' hatası fırlatır.
Bu karakterlerin önüne mutlaka ters eğik çizgi eklenmelidir: '\&', '\%', '\_'. Klasik BibTeX motorunda Türkçe karakterler (ı, ş, ğ, İ) derleme kütüğünü bozabilir; bu durumda ya UTF-8 yerel destekli BibLaTeX/Biber motoruna geçilmeli ya da korumalı LaTeX makroları ({\c{c}}, {\u{g}}, {\.{I}}) kullanılmalıdır.
Adım 04 doğrulama noktaları
- Başlık ve dergi adlarındaki '&' karakterleri '\&' ile değiştirildi
- DOI ve URL alanlarındaki alt çizgiler ('_') için hyperref/url paketi yüklendi veya '\_' yapıldı
- Özet (abstract) alanlarındaki '%' işaretlerinin yorum satırına yol açması engellendi
URL ve DOI içeren kaynaklarda preamble kısmına \usepackage{url} veya \usepackage{hyperref} eklemek kırılmaları engeller.
Başlıklardaki kısaltma ve özel isimlerin otomatik küçültülmesini engelleyin
Pek çok standart BibTeX atıf stili (plain, abbrv, unsrt, IEEEtran), bibliyografyadaki makale başlıklarını otomatik olarak küçük harfe (sentence case) çevirir. Bu durum 'COVID-19', 'DNA', 'fMRI', 'Turkey' veya 'Markov Chain' gibi kısaltma ve özel adların 'covid-19', 'dna', 'turkey' haline gelerek biçimsel hata üretmesine neden olur.
BibTeX'in büyük harfleri korumasını sağlamak için korunacak kelimeler veya harfler süslü parantez içine alınmalıdır: 'title = {{COVID-19} Outbreak in {Turkey}}'. Tüm başlığı baştan sona çift süslü paranteze almak bazı dergi stillerinde istenmeyen büyük harf zorlamalarına yol açabileceğinden, yalnızca korunması gereken özel terimleri paranteze almak en doğru akademik uygulamadır.
Adım 05 doğrulama noktaları
- Başlıktaki kısaltmalar ({DNA}, {AI}, {fMRI}) süslü parantezle korundu
- Ülke, şehir ve özel isimler ({Turkey}, {Ankara}, {Markov}) korumaya alındı
- Tüm başlık yerine yalnızca büyük kalması gereken terimler izole edildi
Kurumsal yazarları koruyun ve çoklu yazar bağlaçlarını düzeltin
BibTeX, 'author' alanındaki metinleri otomatik olarak 'Soyadı, Adı' mantığıyla ayrıştırır. Eğer kurumsal bir yazar 'author = {World Health Organization}' şeklinde girilirse, BibTeX 'Organization' kelimesini soyadı, 'World Health' kelimelerini ilk adlar kabul ederek kaynakçada 'Organization, W. H.' şeklinde bozuk bir çıktı üretir.
Kurum adının tek bir bütün olarak algılanması için çift süslü parantez kullanılmalıdır: 'author = {{World Health Organization}}'. Ayrıca çoklu yazarlar arasına asla virgül konulmamalı; yazarlar yalnızca 'and' bağlacıyla birbirinden ayrılmalıdır: 'author = {Yilmaz, Ahmet and Kaya, Zeynep and Smith, John}'.
Adım 06 doğrulama noktaları
- Bakanlık, enstitü ve kurum adları {{Dünya Sağlık Örgütü}} şeklinde çift parantezle yazıldı
- Yazar listesinde virgül yerine yalnızca 'and' bağlacı kullanıldı
- İki kelimeden oluşan yabancı soyadları (van Gogh, de Silva) doğru gruplandı
Sıkça sorulan sorular
Overleaf ve BibTeX hakkında yetkili yanıtlar
Overleaf'te kaynakça neden aniden tamamen kaybolur veya boş çıkar?
En sık karşılaşılan neden, .bib dosyasında unutulan tek bir virgül veya kapanmayan bir süslü parantezdir. BibTeX tek bir sözdizimi hatasında tüm ayrıştırmayı durdurur. İkinci yaygın neden ise \bibliography{dosya} komutuna '.bib' uzantısı eklenmesi veya BibLaTeX paketinde motorun Biber yerine yanlışlıkla BibTeX seçilmesidir.
Türkçe karakterler (ı, ş, ğ, İ) BibTeX'te neden bozuk görünür veya hata verir?
Geleneksel BibTeX motoru 8-bit ASCII mimarisine sahiptir ve UTF-8 karakterleri doğrudan işleyemez. Çözüm için ya modern UTF-8 tabanlı BibLaTeX + Biber ikilisine geçilmeli ya da Türkçe karakterler LaTeX korumalı komutlarıyla ({\c{s}}, {\u{g}}, {\.{I}}) kodlanmalıdır.
Zotero veya Mendeley'den dışa aktarılan .bib dosyalarında nelere dikkat edilmelidir?
Referans yöneticileri bazen URL alanlarına doğrudan '_' karakteri basar veya özet alanlarında kaçırılmamış '%' bırakır. Ayrıca otomatik üretilen citekey'lerde Türkçe karakter ve boşluk bulunmamalıdır. Dışa aktarılan dosya Overleaf'e yüklendikten sonra özel karakter taraması yapılmalıdır.
Tez veya makalemde Natbib mi yoksa BibLaTeX (Biber) mi kullanmalıyım?
Eğer üniversitenizin tez şablonu veya hedef dergi doğrudan bir paket dayatmıyorsa, çok dilli destek ve modern UTF-8 yetenekleri nedeniyle BibLaTeX (biber) tercih edilmelidir. Ancak IEEE, Elsevier veya Springer gibi köklü dergiler genellikle geleneksel Natbib + BibTeX motorunu şart koşar; dergi yazım kurallarına öncelik verilmelidir.
Birincil kaynaklar
Resmî kılavuzlar ve teknik dokümanlar
Bu rehberdeki teknik teşhis adımları Overleaf, CTAN ve TeX Users Group (TUG) resmî dokümantasyonuna dayanmaktadır.
- 01Overleaf Documentation — Bibliography Management in LaTeX ↗
Overleaf resmî bilgi bankası: BibTeX, Natbib ve BibLaTeX paket yapılandırmaları ve derleme adımları.
- 02Overleaf Troubleshooting — Clearing the Cache ↗
Overleaf önbellek temizleme, çok geçişli derleme kütüklerinin sıfırlanması ve ara dosya onarımı.
- 03CTAN: BibTeXing by Oren Patashnik ↗
Orijinal BibTeX sözdizimi kuralları, citekey biçimlendirme standartları ve author alanı kuralları.
- 04CTAN: The BibLaTeX Package & Biber Backend Documentation ↗
Modern Biber motoru, Unicode/UTF-8 desteği ve gelişmiş atıf stilleri resmî kılavuzu.
- 05TeX Users Group (TUG) FAQ — Bibliography Questions ↗
Atıflarda soru işareti [?] çıkması ve başlık büyük/küçük harf dönüşüm hatalarının resmî çözümleri.
