खाली ग्रंथ सूची
पथ, बैकएंड, लुप्त उद्धरण, प्रिंटग्रंथ सूची बनाम ग्रंथ सूची।
खाली ग्रंथ सूची
लक्षण
आपका दस्तावेज़ बिना किसी गंभीर त्रुटि के संकलित होता है, लेकिन संदर्भ अनुभाग पूरी तरह से गायब है, या शीर्षक इसके नीचे कुछ भी नहीं दिखता है। अक्सर पाठ में प्रत्येक \उद्धरण एक ही समय में एक बोल्ड प्रश्न चिह्न के रूप में दिखाई देता है। कुछ भी दुर्घटनाग्रस्त नहीं हुआ, इसलिए पीछा करने के लिए कोई स्पष्ट त्रुटि नहीं है, जो इसे निराशाजनक बनाती है।
ऐसा क्यों होता है
ग्रंथ सूची अकेले LaTeX द्वारा निर्मित नहीं है। LaTeX सबसे पहले उद्धृत कुंजियों की सूची को एक सहायक फ़ाइल में लिखता है। एक अलग बैकएंड प्रोग्राम (बिबटेक्स या बाइबर) आपके .बिब डेटाबेस को पढ़ता है और मेल खाने वाली प्रविष्टियों को प्रारूपित करता है। अंततः LaTeX उस स्वरूपित परिणाम को अगले पास पर वापस पढ़ता है। एक खाली ग्रंथ सूची का मतलब है कि यह पाइपलाइन कहीं टूट गई है: बैकएंड कभी नहीं चला, यह चला लेकिन डेटाबेस नहीं मिला, इसे डेटाबेस मिला लेकिन कोई कुंजी का अनुरोध नहीं किया गया, या दस्तावेज़ गलत कमांड के साथ परिणाम मांग रहा है।
कारणों पर क्रम से काम करें
सबसे पहले, पुष्टि करें कि डेटाबेस फ़ाइल वहीं मौजूद है जहाँ दस्तावेज़ कहता है। \bibliography{refs} और \addbibresource{refs.bib} दोनों मुख्य फ़ाइल के सापेक्ष refs.bib की तलाश करते हैं, इसलिए bib/ सबफ़ोल्डर में रहने वाली फ़ाइल को bib/refs या bib/refs.bib के रूप में संदर्भित किया जाना चाहिए। एक गलत रास्ता चुपचाप विफल हो जाता है।
दूसरा, सुनिश्चित करें कि बैकएंड वास्तव में चलता है। एक एकल संकलन कभी भी पर्याप्त नहीं होता; पूरा चक्र LaTeX है, फिर bibtex या biber, फिर LaTeX दो बार और। ओलेफ़ली इस चक्र को स्वचालित रूप से चलाता है, लेकिन एक हाथ से संचालित बिल्ड या एक गलत कॉन्फ़िगर संपादक टूलचेन मध्य चरण को छोड़ सकता है, और परिणाम बिल्कुल एक खाली संदर्भ सूची है।
तीसरा, जांचें कि कम से कम एक \cite कमांड मौजूद है। बैकएंड केवल उन प्रविष्टियों को प्रारूपित करता है जो दस्तावेज़ अनुरोध करता है, इसलिए बिना किसी उद्धरण वाले ड्राफ्ट को डिज़ाइन के अनुसार एक खाली सूची मिलती है। आरंभिक प्रारूपण के दौरान आप \nocite{*} के साथ सब कुछ बाध्य कर सकते हैं, जो पाठ में कुछ भी प्रिंट किए बिना डेटाबेस में प्रत्येक प्रविष्टि का अनुरोध करता है।
चौथा, कमांड को सिस्टम से मिलाएं। क्लासिक BibTeX दस्तावेज़ \bibliographystyle{...} और \bibliography{refs} के साथ समाप्त होते हैं। biblatex दस्तावेज़ प्रस्तावना में डेटाबेस को \addbibresource{refs.bib} के साथ लोड करते हैं और इसे \printbibliography के साथ प्रिंट करते हैं। दोनों को मिलाने से, उदाहरण के लिए biblatex लोड करना लेकिन फिर भी \bibliography को कॉल करना, वास्तव में यही विफलता उत्पन्न करता है। गलत बैकएंड चलाने के लिए भी यही बात लागू होती है: biblatex को biber की आवश्यकता होती है, और इसे क्लासिक bibtex खिलाने से कुछ नहीं मिलता है।
बैकएंड का अपना लॉग पढ़ें
बैकएंड अपनी शिकायतें आपके दस्तावेज़ के बगल में एक .blg फ़ाइल में लिखता है, और यहीं पर विकृत प्रविष्टियाँ, डुप्लिकेट कुंजियाँ और “मैं डेटाबेस फ़ाइल नहीं खोल सका” संदेश दिखाई देते हैं। यदि ऊपर दिए गए चरण सही दिखते हैं लेकिन सूची अभी भी खाली है, तो .blg लॉग लगभग हमेशा वास्तविक अपराधी का नाम बताता है। ग्रंथ सूची के प्रकट होने के बाद भी बने रहने वाले प्रश्न चिह्नों के लिए, [रहस्य उद्धरण चिह्नों को साफ़ करना] (/ सीखें/उद्धरण-प्रश्न-चिह्न/) देखें।