
В настоящее время я использую numeric
стиль в biblatex. Это дает мне очевидный результат, [22]
когда я вызываю \cite{Someone}
. Я хотел бы придерживаться стиля numeric
, но также включить фамилию в цитату, например, что-то вроде: [(Someone)22]
или (Someone)[22]
. Мой вопрос состоит из двух частей:
- Является ли этот стиль цитирования каким-либо общепринятым? Я бы, пожалуй, дистанцировался от него, если он слишком далек от современных стандартов.
- Как бы мне это реализовать? Я предполагаю, что трюк кроется где-то в
\DeclareCiteCommand
, но я не знаю, с чего начать.
решение1
Мы можем определить новую команду цитирования (аналогичноСтиль цитирования BibLaTeX)
\DeclareCiteCommand{\morecite}[\mkbibbrackets]
{\usebibmacro{prenote}}%
{\usebibmacro{citeindex}%
\printnames{labelname}%
\setunit{\addcomma\space}
\usebibmacro{cite}}
{\multicitedelim}%
{\usebibmacro{postnote}}
Если вы настаиваете, вы можете заменить обычный\cite
\DeclareCiteCommand{\cite}[\mkbibbrackets]
{\usebibmacro{prenote}}%
{\usebibmacro{citeindex}%
\printnames{labelname}%
\setunit{\addcomma\space}
\usebibmacro{cite}}
{\multicitedelim}%
{\usebibmacro{postnote}}
МВЭ
\documentclass[a4paper,american]{article}
\usepackage{babel}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{csquotes}
\usepackage[style=numeric,backend=biber]{biblatex}
\usepackage{hyperref}
\DeclareCiteCommand{\morecite}[\mkbibbrackets]
{\usebibmacro{prenote}}%
{\usebibmacro{citeindex}%
\printnames{labelname}%
\setunit{\addcomma\space}
\usebibmacro{cite}}
{\multicitedelim}%
{\usebibmacro{postnote}}
\addbibresource{biblatex-examples.bib}
\begin{document}
\morecite{westfahl:space} and \morecite{westfahl:frontier}, \morecite{cicero,wilde}.
\printbibliography
\end{document}