
Я использую biblatex
дополнительную функцию добавления всех цитируемых ссылок в их собственную категорию:
\DeclareBibliographyCategory{cited}
\AtEveryCitekey{\addtocategory{cited}{\thefield{entrykey}}}
как показаноздесь. Теперь рассмотрим этот MWE:
\documentclass{scrreprt}
\usepackage[refsegment=chapter]{biblatex}
\DeclareBibliographyCategory{cited}%so we can access all non-cited as own category
\AtEveryCitekey{\addtocategory{cited}{\thefield{entrykey}}}
\begin{filecontents}{thebib.bib}
@misc{mathworks_constant_2018,
type = {Documentation},
title = {Constant volume pneumatic chamber based on ideal gas law},
url = {https://uk.mathworks.com/help/physmod/simscape/ref/constantvolumepneumaticchamber.html},
urldate = {2022-01-01},
journal = {Mathworks Simulink Documentation},
author = {{Mathworks}},
year = {2018},
}
@online{WinNT,
author = {MultiMedia LLC},
title = {{MS Windows NT} Kernel Description},
year = 1999,
url = {http://web.archive.org/web/20080207010024/http://www.808multimedia.com/winnt/kernel.htm},
urldate = {2010-09-30}
}
\end{filecontents}
\addbibresource{thebib.bib}
\usepackage{cleveref}
\begin{document}
\chapter{This is a chapter}
\autocite{mathworks_constant_2018}
\endrefsegment%anything after not in any segment -> not printed by bibbysegment
\nocite{*}%
\printbibheading%print big heading once
\defbibheading{subbibliography}{\vspace*{1.5\baselineskip}\section*{\Cref{refsegment:\therefsection\therefsegment}}}%
\bibbysegment[heading=subbibliography]%cycle through all segments and print
\defbibheading{notcited}{\section*{Further Reading}}
\printbibliography[notcategory=cited, heading=notcited]
\end{document}
с примером, вдохновленным отчастиэтот вопрос.
With \defbibheading
— cleveref
это переопределение, позволяющее активировать кликабельные ссылки. Это не часть примера, но я оставил его, чтобы ничего не ломалось. Я оставил, hyperref
чтобы они не отображались. Результат:
Есть ли способ удалить ключи цитирования – в этом случае[1]
– изДальнейшее чтениераздел?
Поскольку записи там нигде не цитируются, нам не нужны там ключи цитирования. Это просто список для тех, кому это интересно.
решение1
Вы можете определить новую библиографическую среду длядальнейшее чтениераздел. Я просто скопировал определение из, authoryear.bbx
так как это дает достаточно приятный результат. Вы также захотите использовать опцию, defernumbers
чтобы убедиться, что нумерация получается как и ожидалось (вы также можете добавить опцию omitnumbers
в\printbibliography
командедальнейшее чтениераздел, хотя это не изменит вывод здесь; разница будет только еслидальнейшее чтениеза ним следует другой номер \printbibliography
с записями, которые ранее не появлялись).
\documentclass{report}
\usepackage[refsegment=chapter, defernumbers=true]{biblatex}
\usepackage{cleveref}
\DeclareBibliographyCategory{cited}
\AtEveryCitekey{\addtocategory{cited}{\thefield{entrykey}}}
\defbibheading{subbibliography}{%
\section*{\Cref{refsegment:\therefsection\therefsegment}}}
\defbibheading{notcited}{\section*{Further Reading}}
\defbibenvironment{bibnonum}
{\list
{}
{\setlength{\leftmargin}{\bibhang}%
\setlength{\itemindent}{-\leftmargin}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}}
{\endlist}
{\item}
\begin{filecontents}{\jobname.bib}
@misc{mathworks_constant_2018,
type = {Documentation},
title = {Constant volume pneumatic chamber based on ideal gas law},
url = {https://uk.mathworks.com/help/physmod/simscape/ref/constantvolumepneumaticchamber.html},
urldate = {2022-01-01},
journal = {Mathworks Simulink Documentation},
author = {{Mathworks}},
year = {2018},
}
@online{WinNT,
author = {MultiMedia LLC},
title = {{MS Windows NT} Kernel Description},
year = 1999,
url = {http://web.archive.org/web/20080207010024/http://www.808multimedia.com/winnt/kernel.htm},
urldate = {2010-09-30}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\chapter{This is a chapter}
\autocite{mathworks_constant_2018}
\endrefsegment
\nocite{*}
\printbibheading
\bibbysegment[heading=subbibliography]
\printbibliography[notcategory=cited, env=bibnonum, heading=notcited]
\end{document}
Мне пришлось использовать report
вместоscrreprt
из-заhttps://github.com/plk/biblatex/issues/857чтобы MWE работал на меня. Я также удалил \vspace*{1.5\baselineskip}%
для MWE, так как хотел избежать избыточного пространства, которое он вносит со стандартным классом.