(संपूर्ण) ग्रंथ सूची को कैसे देखें?
एक साधारण सवाल है, लेकिन मैं इसे यहां या कहीं और स्टैकएक्सचेंज पर खोजने में असमर्थ था।
मैं द्वारा निर्मित हेडर को क्रॉस-रेफरेंस करना चाहता हूं \printbibliography
, यानी एक विशिष्ट प्रविष्टि नहीं बल्कि सिर्फ शीर्षक / शुरुआती पेज।
मैं उसे कैसे कर सकता हूँ?
मैं इसे इस तरह से उपयोग करता हूं:
\printbibliography[title={Quellenverzeichnis}, heading=subbibnumbered]
समस्या यह है कि पैकेज अपने हेडिंग को स्वचालित रूप से उत्पन्न करता है, इसलिए मैं बस \label
वहां नहीं जा सकता और इसे संदर्भित कर सकता हूं ।
असल में, मैं तो बस इसलिए मैं हमेशा की तरह उपयोग कर सकते हैं क्या आवश्यक है क्या करना चाहते हैं \ref
, \hyperref
, \autoref
, \fullrefआदि
और मुझे biblatex डॉक्स (पृष्ठ 88 एफएफ उर्फ सेकंड) में कुछ भी नहीं मिला है । 3.7.2 यह \printbibliography
कमांड के बारे में बात करना शुरू करता है ।)
जवाब
अजीब तरह से, मुझे यह करने का एक स्पष्ट तरीका नहीं मिल रहा है।
यहां एक विकल्प है जो शीर्ष को प्रिंट करता है, फिर लेबल सम्मिलित करता है, फिर शेष ग्रंथ सूची को प्रिंट करता है। मेरे लिए किसी अज्ञात कारण से, \@currentlabel
अपडेट नहीं किया गया है \printbibheading
, इसलिए मुझे उप-काउंटर काउंटर को डिक्रिप्ट करने के लिए हैक की आवश्यकता है, फिर इसका उपयोग करके इंक्रीमेंट करें \refstepcounter
।
मैं सोच रहा हूँ कि वहाँ एक बेहतर विकल्प होना चाहिए।
\documentclass{article}
\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage[colorlinks]{hyperref}
\begin{document}
\section{Here}
\subsection{There}
Page \pageref{bib}. Section \ref{bib}.
\nocite{westfahl:space,aksin}
\printbibheading[title=Quellenverzeichnis, heading=subbibnumbered]
\addtocounter{subsection}{-1}
\refstepcounter{subsection}
\label{bib}
\printbibliography[heading=none]
\end{document}
चूंकि आप पहले से ही अपनी ग्रंथ सूची का शीर्षक स्पष्ट रूप से दे चुके हैं, इसलिए आप \label
वहां प्रवेश कर सकते हैं ।
डेविड पर्टन के MWE और स्पष्ट परिवर्तनों के साथ
\documentclass{article}
\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage[colorlinks]{hyperref}
\begin{document}
\section{Here}
\subsection{There}
Page \pageref{bib}. Section \ref{bib}.
\nocite{sigfridsson,worman}
\printbibliography[title={Quellenverzeichnis\label{bib}}, heading=subbibnumbered]
\end{document}
यदि आप ऐसा समाधान चाहते हैं जो स्वचालित रूप से 'संदर्भ' या 'ग्रंथ सूची' का चयन करता है, तो आप कक्षा के आधार पर कोशिश कर सकते हैं
\documentclass{article}
\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage[colorlinks]{hyperref}
\makeatletter
\newcommand*{\reforbibname}{%
\ifodd\abx@classtype\relax
\bibname
\else
\refname
\fi
}
\makeatother
\begin{document}
\section{Here}
\subsection{There}
Page \pageref{bib}. Section \ref{bib}.
\nocite{sigfridsson,worman}
\printbibliography[title={\reforbibname\label{bib}}, heading=subbibnumbered]
\end{document}
आंतरिक कमांड \abx@classtype
का उपयोग biblatex
कुछ वर्गों का पता लगाने के लिए किया जाता है । आसानी से, 'सम-वर्ग' समान article
और उपयोग हैं \refname
, 'विषम वर्ग' report
/ book
-उपयोग और उपयोग हैं \bibname
।
ध्यान दें कि यह ग्रंथ सूची शीर्षक परिभाषाओं में डिफ़ॉल्ट शीर्षक के संभावित परिवर्तनों को ध्यान में नहीं रखता है।
एक विकल्प यह होगा कि आप \label
सीधे ग्रंथ सूची के शीर्षक की परिभाषा में शामिल हों। इस मामले में जो होगा
\documentclass{article}
\usepackage{biblatex}
\addbibresource{biblatex-examples.bib}
\usepackage[colorlinks]{hyperref}
\defbibheading{subbibnumbered:link}[\refname]{%
\subsection{#1}%
\label{bib}}
\begin{document}
\section{Here}
\subsection{There}
Page \pageref{bib}. Section \ref{bib}.
\nocite{sigfridsson,worman}
\printbibliography[heading=subbibnumbered:link]
\end{document}
(बेशक आप चाहें subbibnumbered
तो उस उभयलिंगी को अधिलेखित कर सकते हैं, लेकिन चूंकि शीर्षक में लेबल कठिन-कोडित है, इसलिए इसे दो बार उपयोग करने से बचने के लिए एक अद्वितीय नाम चुनना बेहतर हो सकता है।) किसी भी मामले में, आपको यह जानने की आवश्यकता है / आपके दस्तावेज़ में प्रयुक्त ग्रंथ सूची के शीर्षक की मूल परिभाषा की प्रतिलिपि बनाएँ।
V3.16 biblatex के बाद से अब आप उपयोग कर सकते हैं label
।
उदाहरण और इसलिए समस्या / सुविधा अनुरोध से कॉपी की गई , इसलिए सभी क्रेडिट @moewew को जाते हैं , जिन्होंने इसे लागू भी किया।
यहाँ एक उदाहरण है:
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=authoryear, backend=biber]{biblatex}
\usepackage{cleveref}
\addbibresource{biblatex-examples.bib}
\begin{document}
\autocite{sigfridsson}
\Cref{biblabel}
\printbibliography[heading=bibnumbered, label=biblabel]
\end{document}