पैकेज जो एक दूसरे से लड़ते हैं

हाइपररेफ लास्ट, क्लेरेफ आफ्टर, अप्रचलित जोड़े, न्यूनतम उदाहरण।

पैकेज जो एक दूसरे से लड़ते हैं

LaTeX पैकेज एक-दूसरे के आदेशों को फिर से परिभाषित करने के लिए स्वतंत्र हैं, और कई लोग जानबूझकर ऐसा करते हैं। इस प्रकार हाइपररेफ प्रत्येक क्रॉस-रेफरेंस को एक लिंक में बदल देता है। इसका मतलब यह भी है कि दो पैकेज प्रत्येक एक ही कमांड को असंगत मान्यताओं के साथ पैच कर सकते हैं, और परिणाम एक पूर्ण त्रुटि से लेकर कमांड \ फ़ुटनोट पहले से ही परिभाषित या पैकेज xcolor के लिए विकल्प क्लैश जैसे आउटपुट तक होता है जो चुपचाप गलत होता है। पहले से काम कर रहे प्रस्तावना में पैकेज जोड़ने के तुरंत बाद टकराव लगभग हमेशा सामने आता है, जो सबसे बड़ा सुराग भी है।

लोडिंग ऑर्डर आधी लड़ाई है

कई विवादों को पूरी तरह से आदेश द्वारा हल किया जाता है, क्योंकि बाद में लोड किए गए पैकेज को अंतिम शब्द मिलता है। सबसे महत्वपूर्ण नियम: प्रस्तावना के अंत के पास hyperref लोड करें। यह LaTeX की क्रॉस-रेफ़रेंसिंग मशीनरी के बड़े हिस्से को फिर से लिखता है, और इसके बाद लोड किए गए पैकेज उन पैच को पूर्ववत कर सकते हैं। अपवादों की एक छोटी सूची बाद में भी आनी चाहिए, और जो आपको वास्तव में मिलेगी वह क्लेवरेफ है, जिसे हाइपररेफ के शीर्ष पर बैठने के लिए डिज़ाइन किया गया है और इसे इसके बाद लोड किया जाना चाहिए:

\usepackage{graphicx}
\usepackage{amsmath}
% ... everything else ...
\usepackage{hyperref}
\usepackage{cleveref} % after hyperref, by design

जब एक पैकेज का दस्तावेज़ीकरण दूसरे पैकेज के सापेक्ष स्थिति निर्दिष्ट करता है, तो उस पर विश्वास करें। वे नोट मौजूद हैं क्योंकि कोई पहले से ही आपके साथ होने वाले संघर्ष से टकरा चुका है।

अप्रचलित पैकेज और उनके प्रतिस्थापन

कुछ टकराव एक मृत पैकेज को उसके उत्तराधिकारी के बगल में लोड करने से उत्पन्न होते हैं। epsfig को graphicx के साथ, subfigure को subcaption के साथ, या पुराने times और mathptmx shims को newtxtext जैसे आधुनिक फ़ॉन्ट पैकेज के साथ संयोजित न करें। पुराने टेम्प्लेट सामान्य स्रोत हैं: वे टेम्प्लेट लिखे जाने के समय जो कुछ भी वर्तमान था उसे लोड करते हैं, और आप शीर्ष पर आधुनिक समकक्ष जोड़ते हैं। अप्रचलित को हटा दें और प्रतिस्थापन रखें। नाग पैकेज संकलन समय पर आपके लिए पुराने उपयोग को चिह्नित कर सकता है।

विकल्प टकराव

पैकेज एक्स के लिए विकल्प टकराव का मतलब है कि पैकेज को अलग-अलग विकल्पों के साथ दो बार लोड किया गया था, अक्सर एक बार आपकी पीठ के पीछे आपके दस्तावेज़ वर्ग द्वारा। आप इसे नए विकल्पों के साथ दोबारा लोड नहीं कर सकते हैं, लेकिन किसी के भी इसे लोड करने से पहले आप विकल्पों को इंजेक्ट कर सकते हैं: \Documentclass से पहले \PassOptionsToPackage{table}{xcolor} डालें, और जो भी लोड पहले आता है उसमें विकल्प मर्ज हो जाते हैं।

न्यूनतम उदाहरण के साथ अलग करें

जब कारण स्पष्ट न हो, तो एक न्यूनतम कामकाजी उदाहरण बनाएं: एक दस्तावेज़ जिसमें केवल \documentclass, दो संदिग्ध पैकेज, और एक \begin{document}...\end{document} हो जिसमें पाठ की एक पंक्ति हो। यदि त्रुटि पुन: उत्पन्न होती है, तो लोडिंग ऑर्डर और विकल्पों को तब तक टॉगल करें जब तक ऐसा न हो। यदि यह पुनरुत्पादित नहीं होता है, तो अपने अन्य पैकेजों को तब तक आधा-आधा करके जोड़ें जब तक यह वापस न आ जाए। यह बाइनरी खोज कुछ संकलनों में एकत्रित होती है और आपको खोजने के लिए एक स्पष्ट जोड़ी देती है। वही तकनीक विरासत में मिली प्रस्तावनाओं को बचाती है, जैसा कि विश्वविद्यालय वर्ग की फ़ाइलें जो संकलित नहीं होंगी में वर्णित हैं।

{ट्रैक} पर वापस जाएँ