Не печатать количество страниц для книг/коллекций

Не печатать количество страниц для книг/коллекций

Я пытаюсь настроить свой файл конфигурации так, чтобы он biblatexне печатался pagetotalдаже для книг. Я бы предпочел сохранить информацию в своем bib-файле, поэтому вместо того, чтобы удалять pagetotalинформацию оттуда, я задался вопросом, можно ли отключить ее печать.

Я попытался использовать " pagetotal=false", как здесь:документ

Но я получаю сообщение об ошибке, что команда неизвестна:Package xkeyval Error: pagetotal undefined in families blx@opt@pre.

МВЭ


%----------------------------------------------------------------------------
%   LAYOUT
%----------------------------------------------------------------------------
\documentclass[
  12pt,
  a4paper,
  %parskip,
  headings=standardclasses,
  listof=totoc,
  numbers=noenddot
]{scrartcl}

\usepackage[hmargin=2.5cm, top=2.5cm, bottom=2cm, footskip=1cm]{geometry}
\usepackage[onehalfspacing]{setspace}
\usepackage[main=ngerman, english]{babel}
\usepackage[babel, german=quotes]{csquotes}
\usepackage[ngerman]{isodate}
\usepackage[ngerman]{datetime}
\usepackage{hyphenat}% create hypen without overfull box

%----------------------------------------------------------------------------
%   TOC
%----------------------------------------------------------------------------
\KOMAoptions{toc=sectionentrydotfill}
\KOMAoption{captions}{tableheading}% correct TOC count for tables
\renewcaptionname{ngerman}{\contentsname}{TOC}
\BeforeTOCHead[toc]{{\pdfbookmark[1]{\contentsname}{toc}}}% TOC in bookmarks
\AddtoDoHook{heading/preinit/part}{\clearpage\vspace*{\stretch{1}}}
\AddtoDoHook{heading/endgroup/part}{\vspace*{\stretch{2}}\clearpage}
\setkomafont{partprefix}{\usekomafont{part}}
%----------------------------------------------------------------------------
%   BIB
%----------------------------------------------------------------------------
\usepackage[
  backend=biber,
  style=ext-authoryear,
  sorting=nyvt,
  datamodel=customstyles,
  maxnames=25,
  innamebeforetitle=true,
  usetranslator=true,
  alldates=terse,
  labeldate=year,
  dashed=false,
  doi=false,
  isbn=false,
  url=false,
  pagetotal=false
]{biblatex}
\AtEveryBibitem{\clearlist{language}}
\addbibresource{library.bib}
\usepackage[hidelinks, pdfencoding=auto]{hyperref}
\usepackage{microtype}% avoid bib formatting issues



%----------------------------------------------------------------------------
%   MAIN
%----------------------------------------------------------------------------

\begin{document}

\nocite{*} 
\clearpage
\printbibliography

\end{document}

Мой файл library.bib:

@book{Lakoff.1987-WomenFireDangerous,
  title = {Women, Fire, and Dangerous Things. What Categories Reveal about the Mind},
  author = {Lakoff, George},
  date = {1987},
  publisher = {The University of Chicago Press},
  location = {Chicago},
  isbn = {978-0-226-46804-4},
  pagetotal = {614},
}

решение1

Связанная документация предназначена для стилей пакета biblatex-iso690. biblatex-extИ стандартные стили не поддерживают pagetotalопцию.

Вы можете удалить поля с помощью приема \AtEveryBibitem- \clearfield// \clearlist, \clearnameкоторый вы уже используете дляlanguage

\AtEveryBibitem{%
  \clearlist{language}%
  \clearfield{pagetotal}%
}

Или вы можете использовать sourcemap, чтобы избавиться от данных, пока они считываются из файла .bib. Обычно это мой предпочтительный вариант, потому что тогда содержимое поля фактически не будет видно biblatexни Biber, ни вам, а это значит, что оно также не будет учитываться в «менее заметных вещах», таких как сортировка. (Другое преимущество sourcemap в том, что вам не нужно беспокоиться о «типе» поля [поле/список/имя], вы можете использовать одну и ту же идиому для всех типов.)

MWE с исходной картой

\documentclass[12pt, a4paper,]{scrartcl}

\usepackage[main=ngerman, english]{babel}
\usepackage[babel, german=quotes]{csquotes}
\usepackage[
  backend=biber,
  style=ext-authoryear,
  sorting=nyvt,
  maxnames=25,
  innamebeforetitle=true,
  usetranslator=true,
  alldates=terse,
  labeldate=year,
  dashed=false,
  doi=false,
  isbn=false,
  url=false,
]{biblatex}

\DeclareSourcemap{
  \maps[datatype=bibtex, overwrite]{
    \map{
      \step[fieldset=language, null]
      \step[fieldset=pagetotal, null]
    }
  }
}

\usepackage[hidelinks, pdfencoding=auto]{hyperref}
\usepackage{microtype}

\begin{filecontents}{\jobname.bib}
@book{Lakoff.1987-WomenFireDangerous,
  title     = {Women, Fire, and Dangerous Things. What Categories Reveal about the Mind},
  author    = {Lakoff, George},
  date      = {1987},
  publisher = {The University of Chicago Press},
  location  = {Chicago},
  isbn      = {978-0-226-46804-4},
  pagetotal = {614},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
\nocite{*} 
\printbibliography
\end{document}

Лакофф, Джордж (1987). Женщины, огонь и опасные вещи. Что категории говорят о разуме. Чикаго: Издательство Чикагского университета.

Связанный контент