这解决方案的莫威针对这个问题Biblatex:两种不同风格和排序的书目 II 第 3 部分产生所需的输出。不幸的是,有一种特殊情况,输出与“正常”行为不同。
问题来源\space
:这好像是把with \addthinspace
(\renewcommand*{\multicitedelim}{\addsemicolon\space}
带有)替换掉了\renewcommand*{\multicitedelim}{\addsemicolon\addthinspace}
。
问题:例如,\cite
当使用上述解决方案时,带有 的几行长引用(多位作者均采用 alpha 样式)会溢出文本边距\addthinspace
。
问题:有没有解决方案,用添加短/窄空间来代替普通空间?
输出\renewcommand*{\multicitedelim}{\addsemicolon\space}
输出\renewcommand*{\multicitedelim}{\addsemicolon\addthinspace}
平均能量损失
\documentclass[parskip=full]{scrbook}
\usepackage{microtype}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[backend=biber,
style=numeric-comp,
labelalpha, defernumbers,
locallabelwidth]{biblatex}
\usepackage[colorlinks=true,citecolor=blue,urlcolor=red]{hyperref}
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.25pt}
\renewcommand*\ShowFrameColor{\color{red}}
%Append keywords to identify different bibliography entries.
\DeclareSourcemap{
\maps[datatype=bibtex, overwrite]{
\map{
\perdatasource{biblatextest1.bib}
\step[fieldset=KEYWORDS, fieldvalue=primary]
}
\map{
\perdatasource{biblatextest2.bib}
\step[fieldset=KEYWORDS, fieldvalue=secondary]
}
}
}
%Rewritting of internal commands. Solution of moewe
%https://tex.stackexchange.com/questions/557555/biblatex-two-bibliographies-with-different-styles-and-sortings-ii-part-3
%==========================================================================================%
%\renewcommand*{\multicitedelim}{\addsemicolon\space}
\renewcommand*{\multicitedelim}{\addsemicolon\addthinspace}
\renewcommand*{\ppspace}{\addnbthinspace}
\letbibmacro{cite:num:comp}{cite:comp}
\newbibmacro{cite:alpha}{%
\printtext[bibhyperref]{%
\printfield{labelprefix}%
\printfield{labelalpha}%
\printfield{extraalpha}%
\ifbool{bbx:subentry}
{\printfield{entrysetcount}}
{}}}
\renewbibmacro*{cite:comp}{%
\ifkeyword{primary}
{\usebibmacro{cite:dump}%
\ifnumgreater{\value{cbx@tempcntb}}{-1}
{\multicitedelim}
{\iffirstcitekey
{}
{\multicitedelim}}%
\usebibmacro{cite:alpha}%
\iflastcitekeylocal
{}
{\multicitedelim}%
\setcounter{cbx@tempcnta}{0}%
\setcounter{cbx@tempcntb}{-2}}
{\usebibmacro{cite:num:comp}}}
\makeatletter
\newcommand*\iflastcitekeylocal{%
\ifnumequal\c@citecount\c@citetotal}
\renewbibmacro*{cite:init}{%
\global\boolfalse{cbx:parens}%
\global\undef\cbx@lasthash
\global\undef\cbx@lastnumber
\global\undef\cbx@lastprefix
\global\undef\cbx@secondtolastprefix
\setcounter{cbx@tempcnta}{0}%
\setcounter{cbx@tempcntb}{-2}}
\newcommand*{\ifsamelabelprefix}{%
\iffieldundef{labelprefix}
{\ifundef\cbx@lastprefix}
{\iffieldequals{labelprefix}{\cbx@lastprefix}}}
\renewbibmacro*{cite:comp:comp}{%
\renewcommand*{\multicitedelim}{\addcomma\addthinspace}%
\ifsamelabelprefix
{\ifnumequal{\thefield{labelnumber}}{\value{cbx@tempcntb}}
{\savefield{entrykey}{\cbx@lastkey}%
\savefield{labelnumber}{\cbx@lastnumber}%
\addtocounter{cbx@tempcnta}{1}}
{\ifnumequal{\thefield{labelnumber}}{\value{cbx@tempcntb}-1}
{}
{\usebibmacro{cite:dump}%
\ifnumgreater{\value{cbx@tempcntb}}{-1}
{\multicitedelim}
{}%
\printtext[bibhyperref]{%
\iffieldequals{labelprefix}{\cbx@lastprefix}
{}
{\printfield{labelprefix}}%
\printfield{labelnumber}}}}}
{\usebibmacro{cite:comp:end}}%
\setcounter{cbx@tempcntb}{\thefield{labelnumber}}%
\global\let\cbx@secondtolastprefix\cbx@lastprefix
\savefield{labelprefix}{\cbx@lastprefix}}
\DefineBibliographyExtras{english}{
\renewcommand*{\bibrangedash}{\addnbthinspace\textendash\addhpthinspace}
}
\renewbibmacro*{cite:dump}{%
\ifnumgreater{\value{cbx@tempcnta}}{0}
{\ifnumgreater{\value{cbx@tempcnta}}{1}
{\bibrangedash}
{\multicitedelim}%
\bibhyperref[\cbx@lastkey]{%
\ifdef\cbx@lastprefix
{\ifdefequal\cbx@lastprefix\cbx@secondtolastprefix
{}
{\printtext[labelprefix]{\cbx@lastprefix}}}
{}%
\printtext[labelnumber]{\cbx@lastnumber}}}
{}%
\setcounter{cbx@tempcnta}{0}}
\makeatother
%==========================================================================================%
\DeclareFieldFormat{labelalphawidth}{\mkbibbrackets{#1}}
\defbibenvironment{bibliographyALPHA}
{\list
{\printtext[labelalphawidth]{%
\printfield{labelprefix}%
\printfield{labelalpha}%
\printfield{extraalpha}}}
{\setlength{\labelwidth}{\labelalphawidth}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\labelsep}{\biblabelsep}%
\addtolength{\leftmargin}{\labelsep}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}%
\renewcommand*{\makelabel}[1]{##1\hss}}
{\endlist}
{\item}
\begin{filecontents}{biblatextest1.bib}
@BOOK{BookB07,
author = {Author Ät{\"a}},
title = {Some Title},
publisher = {Some Publisher},
year = 2003,
}
@BOOK{BookB08,
author = {Author Bb\"{a}},
title = {Some Title},
publisher = {Some Publisher},
year = 2004,
}
@BOOK{BookB09,
author = {Author Aaa},
title = {Some Title},
publisher = {Some Publisher},
year = 2005,
}
@BOOK{BookB10,
author = {Author Kkk},
title = {Some Title},
publisher = {Some Publisher},
year = 2006,
}
@BOOK{BookB11,
author = {Author Lll},
title = {Some Title},
publisher = {Some Publisher},
year = 2007,
}
@BOOK{BookB12,
author = {Author Mmm},
title = {Some Title},
publisher = {Some Publisher},
year = 2008,
}
@BOOK{BookB13,
author = {Author Nnn},
title = {Some Title},
publisher = {Some Publisher},
year = 2009,
}
@BOOK{BookB14,
author = {Author Ooo},
title = {Some Title},
publisher = {Some Publisher},
year = 2010,
}
@BOOK{BookB15,
author = {Author Ppp},
title = {Some Title},
publisher = {Some Publisher},
year = 2011,
}
@BOOK{BookB16,
author = {Author Qqq},
title = {Some Title},
publisher = {Some Publisher},
year = 2012,
}
@BOOK{BookB17,
author = {Author Rrr},
title = {Some Title},
publisher = {Some Publisher},
year = 2013,
}
@BOOK{BookB18,
author = {Author Sss},
title = {Some Title},
publisher = {Some Publisher},
year = 2014,
}
@BOOK{BookB19,
author = {Author Ttt},
title = {Some Title},
publisher = {Some Publisher},
year = 2015,
}
@BOOK{BookB20,
author = {Author Uuu},
title = {Some Title},
publisher = {Some Publisher},
year = 2016,
}
@BOOK{BookB21,
author = {Author Vvv},
title = {Some Title},
publisher = {Some Publisher},
year = 2017,
}
@BOOK{BookB22,
author = {Author Xxx},
title = {Some Title},
publisher = {Some Publisher},
year = 2018,
}
@BOOK{BookB23,
author = {Author Yyy},
title = {Some Title},
publisher = {Some Publisher},
year = 2019,
}
@BOOK{BookB24,
author = {Author Zzz},
title = {Some Title},
publisher = {Some Publisher},
year = 2020,
}
@BOOK{BookB25,
author = {Author Ccc},
title = {Some Title},
publisher = {Some Publisher},
year = 2021,
}
@BOOK{BookB26,
author = {Author Ddd},
title = {Some Title},
publisher = {Some Publisher},
year = 2022,
}
@BOOK{BookB27,
author = {Author Eee},
title = {Some Title},
publisher = {Some Publisher},
year = 2023,
}
@BOOK{BookB28,
author = {Author Fff},
title = {Some Title},
publisher = {Some Publisher},
year = 2024,
}
@BOOK{BookB29,
author = {Author Ggg},
title = {Some Title},
publisher = {Some Publisher},
year = 2025,
}
@BOOK{BookB30,
author = {Author Hhh},
title = {Some Title},
publisher = {Some Publisher},
year = 2026,
}
@BOOK{BookB31,
author = {Author Iii},
title = {Some Title},
publisher = {Some Publisher},
year = 2027,
}
@BOOK{BookB32,
author = {Author Jjj},
title = {Some Title},
publisher = {Some Publisher},
year = 2028,
}
@BOOK{BookB33,
author = {Author aaA},
title = {Some Title},
publisher = {Some Publisher},
year = 2029,
}
@BOOK{BookB34,
author = {Author bBB},
title = {Some Title},
publisher = {Some Publisher},
year = 2030,
}
@BOOK{BookB35,
author = {Author cCC},
title = {Some Title},
publisher = {Some Publisher},
year = 2031,
}
@BOOK{BookB36,
author = {Author dDD},
title = {Some Title},
publisher = {Some Publisher},
year = 2032,
}
@BOOK{BookB37,
author = {Author eEE},
title = {Some Title},
publisher = {Some Publisher},
year = 2033,
}
@BOOK{BookB38,
author = {Author ff},
title = {Some Title},
publisher = {Some Publisher},
year = 2034,
}
@BOOK{BookB39,
author = {Author ggG},
title = {Some Title},
publisher = {Some Publisher},
year = 2035,
}
@BOOK{BookB40,
author = {Author hhH},
title = {Some Title},
publisher = {Some Publisher},
year = 2036,
}
@BOOK{BookB41,
author = {Author i},
title = {Some Title},
publisher = {Some Publisher},
year = 2037,
}
@BOOK{BookB42,
author = {Author jjJ},
title = {Some Title},
publisher = {Some Publisher},
year = 2038,
}
@BOOK{BookB43,
author = {Author kkK},
title = {Some Title},
publisher = {Some Publisher},
year = 2039,
}
@BOOK{BookB44,
author = {Author llL},
title = {Some Title},
publisher = {Some Publisher},
year = 2040,
}
@BOOK{BookB45,
author = {Author mMM},
title = {Some Title},
publisher = {Some Publisher},
year = 2041,
}
@BOOK{BookB46,
author = {Author nN},
title = {Some Title},
publisher = {Some Publisher},
year = 2042,
}
@BOOK{BookB47,
author = {Author Oo},
title = {Some Title},
publisher = {Some Publisher},
year = 2043,
}
@BOOK{BookB48,
author = {Author ppP},
title = {Some Title},
publisher = {Some Publisher},
year = 2044,
}
@BOOK{BookB49,
author = {Author qqQ},
title = {Some Title},
publisher = {Some Publisher},
year = 2045,
}
@BOOK{BookB50,
author = {Author rrR},
title = {Some Title},
publisher = {Some Publisher},
year = 2046,
}
@BOOK{BookB51,
author = {Author ssS},
title = {Some Title},
publisher = {Some Publisher},
year = 2047,
}
@BOOK{BookB52,
author = {Author t},
title = {Some Title},
publisher = {Some Publisher},
year = 2048,
}
@BOOK{BookB53,
author = {Author uuU},
title = {Some Title},
publisher = {Some Publisher},
year = 2049,
}
@BOOK{BookB54,
author = {Author vvV},
title = {Some Title},
publisher = {Some Publisher},
year = 2050,
}
@BOOK{BookB55,
author = {Author Www},
title = {Some Title},
publisher = {Some Publisher},
year = 2051,
}
@BOOK{BookB56,
author = {Author xxX},
title = {Some Title},
publisher = {Some Publisher},
year = 2052,
}
@BOOK{BookB57,
author = {Author yyY},
title = {Some Title},
publisher = {Some Publisher},
year = 2053,
}
@BOOK{BookB58,
author = {Author zzZ},
title = {Some Title},
publisher = {Some Publisher},
year = 2054,
}
@BOOK{BookB59,
author = {Author rst},
title = {Some Title},
publisher = {Some Publisher},
year = 2055,
}
\end{filecontents}
\begin{filecontents}{biblatextest2.bib}
@MISC{LinkD03,
author = {Author Ccc},
title = {Some Title},
year = 2004,
url = {www.test1.com/bild.jpg},
}
@MISC{LinkD04,
author = {Author Ddd},
title = {Some Title},
year = 2001,
url = {www.test2.com/bild.jpg},
}
@MISC{LinkD05,
author = {Author Eee},
title = {Some Title},
year = 2004,
url = {www.test3.com/bild.jpg},
}
@MISC{LinkD06,
author = {Author Fff},
title = {Some Title},
year = 2001,
url = {www.test4.com/bild.jpg},
}
@MISC{LinkD07,
author = {Author Ggg},
title = {Some Title},
year = 2004,
url = {www.test5.com/bild.jpg},
}
@MISC{LinkD08,
author = {Author Hhh},
title = {Some Title},
year = 2001,
url = {www.test6.com/bild.jpg},
}
@MISC{LinkD09,
author = {Author Iii},
title = {Some Title},
year = 2001,
url = {www.test6.com/bild.jpg},
}
\end{filecontents}
\addbibresource{biblatextest1.bib}
\addbibresource{biblatextest2.bib}
\begin{document}
The first two citations \autocite{LinkD07,LinkD03}
and \autocite{BookB10,BookB11,BookB09}.
Mixing both primary and secondary \autocite{LinkD08,LinkD04,LinkD05,BookB10,BookB11,BookB09}.
The others are \autocite{LinkD03,LinkD08,LinkD05,LinkD06,LinkD07}
as well as \autocite{LinkD03,LinkD04,LinkD05,LinkD07,LinkD08, LinkD09}
and \autocite{BookB07}.
With page numbers \cites[2--15]{BookB09}[3,5,23]{BookB10}[1--6]{BookB11}
With page numbers \Cites[2--15]{BookB10}[3,5,23]{BookB09}[1--6]{BookB11}\\\\
Example of very long citation with multiple authors all in alpha style \cite{BookB07,BookB08,BookB09,BookB10,BookB11,BookB12,BookB13,BookB14,BookB15,BookB16,BookB17,BookB18,BookB19,BookB20,BookB21,BookB22,BookB23,BookB24,BookB25,BookB26,BookB27,BookB28,BookB29,BookB30,BookB31,BookB32,BookB33,BookB34,BookB35,BookB36,BookB37,BookB38,BookB39,BookB40,BookB41,BookB42,BookB43,BookB44,BookB45,BookB46,BookB47,BookB48,BookB49,BookB50,BookB51,BookB52,BookB53,BookB54,BookB55,BookB56,BookB57,BookB58,BookB59}. The are some problems with the linebreaks inside the citation.
\printbibliography[env=bibliographyALPHA, title=Bibliography, keyword=primary]
\newrefcontext[labelprefix=tech\string\adddot\addnbthinspace]
\printbibliography[title=References, keyword=secondary, resetnumbers]
\end{document}
答案1
作为corvus_192说在评论中,这里的主要问题是\addthinspace
会产生一个既不能收缩也不能伸展的刚性空间。如果您只用(否则无法断开的)字母引文标签填充整行,那么 LaTeX 获得良好换行的唯一机会就是调整引文之间的空间。
确实\addthinspace
定义biblatex.sty
为
\newrobustcmd*{\addthinspace}{%
\unspace\blx@postpunct
\hskip0.16667em\relax
\blx@imc@resetpunctfont}
我将定义一个可拉伸的版本,如下所示
\newrobustcmd*{\stretchablethinspace}{%
\hskip0.16667em plus 0.0555em minus 0.0555em\relax}
\newrobustcmd*{\addstretchablethinspace}{%
\unspace\blx@postpunct
\stretchablethinspace
\blx@imc@resetpunctfont}
然后您可以使用
\renewcommand*{\multicitedelim}{\addsemicolon\stretchablethinspace}
(请注意,您不需要使用版本\add...
,因为之前的版本已经完成了内部工作\addsemicolon
)。
\documentclass[parskip=full]{scrbook}
\usepackage{microtype}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[backend=biber,
style=numeric-comp,
labelalpha, defernumbers,
locallabelwidth]{biblatex}
\usepackage[colorlinks=true,citecolor=blue,urlcolor=red]{hyperref}
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.25pt}
\renewcommand*\ShowFrameColor{\color{red}}
%Append keywords to identify different bibliography entries.
\DeclareSourcemap{
\maps[datatype=bibtex, overwrite]{
\map{
\perdatasource{biblatextest1.bib}
\step[fieldset=KEYWORDS, fieldvalue=primary]
}
\map{
\perdatasource{biblatextest2.bib}
\step[fieldset=KEYWORDS, fieldvalue=secondary]
}
}
}
\makeatletter
\newrobustcmd*{\stretchablethinspace}{%
\hskip0.16667em plus 0.0555em minus 0.0555em\relax}
\newrobustcmd*{\addstretchablethinspace}{%
\unspace\blx@postpunct
\stretchablethinspace
\blx@imc@resetpunctfont}
\makeatother
%Rewritting of internal commands. Solution of moewe
%https://tex.stackexchange.com/questions/557555/biblatex-two-bibliographies-with-different-styles-and-sortings-ii-part-3
%==========================================================================================%
%\renewcommand*{\multicitedelim}{\addsemicolon\space}
\renewcommand*{\multicitedelim}{\addsemicolon\stretchablethinspace}
\renewcommand*{\ppspace}{\addnbthinspace}
\letbibmacro{cite:num:comp}{cite:comp}
\newbibmacro{cite:alpha}{%
\printtext[bibhyperref]{%
\printfield{labelprefix}%
\printfield{labelalpha}%
\printfield{extraalpha}%
\ifbool{bbx:subentry}
{\printfield{entrysetcount}}
{}}}
\renewbibmacro*{cite:comp}{%
\ifkeyword{primary}
{\usebibmacro{cite:dump}%
\ifnumgreater{\value{cbx@tempcntb}}{-1}
{\multicitedelim}
{\iffirstcitekey
{}
{\multicitedelim}}%
\usebibmacro{cite:alpha}%
\iflastcitekeylocal
{}
{\multicitedelim}%
\setcounter{cbx@tempcnta}{0}%
\setcounter{cbx@tempcntb}{-2}}
{\usebibmacro{cite:num:comp}}}
\makeatletter
\newcommand*\iflastcitekeylocal{%
\ifnumequal\c@citecount\c@citetotal}
\renewbibmacro*{cite:init}{%
\global\boolfalse{cbx:parens}%
\global\undef\cbx@lasthash
\global\undef\cbx@lastnumber
\global\undef\cbx@lastprefix
\global\undef\cbx@secondtolastprefix
\setcounter{cbx@tempcnta}{0}%
\setcounter{cbx@tempcntb}{-2}}
\newcommand*{\ifsamelabelprefix}{%
\iffieldundef{labelprefix}
{\ifundef\cbx@lastprefix}
{\iffieldequals{labelprefix}{\cbx@lastprefix}}}
\renewbibmacro*{cite:comp:comp}{%
\renewcommand*{\multicitedelim}{\addcomma\stretchablethinspace}%
\ifsamelabelprefix
{\ifnumequal{\thefield{labelnumber}}{\value{cbx@tempcntb}}
{\savefield{entrykey}{\cbx@lastkey}%
\savefield{labelnumber}{\cbx@lastnumber}%
\addtocounter{cbx@tempcnta}{1}}
{\ifnumequal{\thefield{labelnumber}}{\value{cbx@tempcntb}-1}
{}
{\usebibmacro{cite:dump}%
\ifnumgreater{\value{cbx@tempcntb}}{-1}
{\multicitedelim}
{}%
\printtext[bibhyperref]{%
\iffieldequals{labelprefix}{\cbx@lastprefix}
{}
{\printfield{labelprefix}}%
\printfield{labelnumber}}}}}
{\usebibmacro{cite:comp:end}}%
\setcounter{cbx@tempcntb}{\thefield{labelnumber}}%
\global\let\cbx@secondtolastprefix\cbx@lastprefix
\savefield{labelprefix}{\cbx@lastprefix}}
\DefineBibliographyExtras{english}{
\renewcommand*{\bibrangedash}{\addnbthinspace\textendash\addhpthinspace}
}
\renewbibmacro*{cite:dump}{%
\ifnumgreater{\value{cbx@tempcnta}}{0}
{\ifnumgreater{\value{cbx@tempcnta}}{1}
{\bibrangedash}
{\multicitedelim}%
\bibhyperref[\cbx@lastkey]{%
\ifdef\cbx@lastprefix
{\ifdefequal\cbx@lastprefix\cbx@secondtolastprefix
{}
{\printtext[labelprefix]{\cbx@lastprefix}}}
{}%
\printtext[labelnumber]{\cbx@lastnumber}}}
{}%
\setcounter{cbx@tempcnta}{0}}
\makeatother
%==========================================================================================%
\DeclareFieldFormat{labelalphawidth}{\mkbibbrackets{#1}}
\defbibenvironment{bibliographyALPHA}
{\list
{\printtext[labelalphawidth]{%
\printfield{labelprefix}%
\printfield{labelalpha}%
\printfield{extraalpha}}}
{\setlength{\labelwidth}{\labelalphawidth}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\labelsep}{\biblabelsep}%
\addtolength{\leftmargin}{\labelsep}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}%
\renewcommand*{\makelabel}[1]{##1\hss}}
{\endlist}
{\item}
\begin{filecontents}{biblatextest1.bib}
@BOOK{BookB07,
author = {Author Ät{\"a}},
title = {Some Title},
publisher = {Some Publisher},
year = 2003,
}
@BOOK{BookB08,
author = {Author Bb\"{a}},
title = {Some Title},
publisher = {Some Publisher},
year = 2004,
}
@BOOK{BookB09,
author = {Author Aaa},
title = {Some Title},
publisher = {Some Publisher},
year = 2005,
}
@BOOK{BookB10,
author = {Author Kkk},
title = {Some Title},
publisher = {Some Publisher},
year = 2006,
}
@BOOK{BookB11,
author = {Author Lll},
title = {Some Title},
publisher = {Some Publisher},
year = 2007,
}
@BOOK{BookB12,
author = {Author Mmm},
title = {Some Title},
publisher = {Some Publisher},
year = 2008,
}
@BOOK{BookB13,
author = {Author Nnn},
title = {Some Title},
publisher = {Some Publisher},
year = 2009,
}
@BOOK{BookB14,
author = {Author Ooo},
title = {Some Title},
publisher = {Some Publisher},
year = 2010,
}
@BOOK{BookB15,
author = {Author Ppp},
title = {Some Title},
publisher = {Some Publisher},
year = 2011,
}
@BOOK{BookB16,
author = {Author Qqq},
title = {Some Title},
publisher = {Some Publisher},
year = 2012,
}
@BOOK{BookB17,
author = {Author Rrr},
title = {Some Title},
publisher = {Some Publisher},
year = 2013,
}
@BOOK{BookB18,
author = {Author Sss},
title = {Some Title},
publisher = {Some Publisher},
year = 2014,
}
@BOOK{BookB19,
author = {Author Ttt},
title = {Some Title},
publisher = {Some Publisher},
year = 2015,
}
@BOOK{BookB20,
author = {Author Uuu},
title = {Some Title},
publisher = {Some Publisher},
year = 2016,
}
@BOOK{BookB21,
author = {Author Vvv},
title = {Some Title},
publisher = {Some Publisher},
year = 2017,
}
@BOOK{BookB22,
author = {Author Xxx},
title = {Some Title},
publisher = {Some Publisher},
year = 2018,
}
@BOOK{BookB23,
author = {Author Yyy},
title = {Some Title},
publisher = {Some Publisher},
year = 2019,
}
@BOOK{BookB24,
author = {Author Zzz},
title = {Some Title},
publisher = {Some Publisher},
year = 2020,
}
@BOOK{BookB25,
author = {Author Ccc},
title = {Some Title},
publisher = {Some Publisher},
year = 2021,
}
@BOOK{BookB26,
author = {Author Ddd},
title = {Some Title},
publisher = {Some Publisher},
year = 2022,
}
@BOOK{BookB27,
author = {Author Eee},
title = {Some Title},
publisher = {Some Publisher},
year = 2023,
}
@BOOK{BookB28,
author = {Author Fff},
title = {Some Title},
publisher = {Some Publisher},
year = 2024,
}
@BOOK{BookB29,
author = {Author Ggg},
title = {Some Title},
publisher = {Some Publisher},
year = 2025,
}
@BOOK{BookB30,
author = {Author Hhh},
title = {Some Title},
publisher = {Some Publisher},
year = 2026,
}
@BOOK{BookB31,
author = {Author Iii},
title = {Some Title},
publisher = {Some Publisher},
year = 2027,
}
@BOOK{BookB32,
author = {Author Jjj},
title = {Some Title},
publisher = {Some Publisher},
year = 2028,
}
@BOOK{BookB33,
author = {Author aaA},
title = {Some Title},
publisher = {Some Publisher},
year = 2029,
}
@BOOK{BookB34,
author = {Author bBB},
title = {Some Title},
publisher = {Some Publisher},
year = 2030,
}
@BOOK{BookB35,
author = {Author cCC},
title = {Some Title},
publisher = {Some Publisher},
year = 2031,
}
@BOOK{BookB36,
author = {Author dDD},
title = {Some Title},
publisher = {Some Publisher},
year = 2032,
}
@BOOK{BookB37,
author = {Author eEE},
title = {Some Title},
publisher = {Some Publisher},
year = 2033,
}
@BOOK{BookB38,
author = {Author ff},
title = {Some Title},
publisher = {Some Publisher},
year = 2034,
}
@BOOK{BookB39,
author = {Author ggG},
title = {Some Title},
publisher = {Some Publisher},
year = 2035,
}
@BOOK{BookB40,
author = {Author hhH},
title = {Some Title},
publisher = {Some Publisher},
year = 2036,
}
@BOOK{BookB41,
author = {Author i},
title = {Some Title},
publisher = {Some Publisher},
year = 2037,
}
@BOOK{BookB42,
author = {Author jjJ},
title = {Some Title},
publisher = {Some Publisher},
year = 2038,
}
@BOOK{BookB43,
author = {Author kkK},
title = {Some Title},
publisher = {Some Publisher},
year = 2039,
}
@BOOK{BookB44,
author = {Author llL},
title = {Some Title},
publisher = {Some Publisher},
year = 2040,
}
@BOOK{BookB45,
author = {Author mMM},
title = {Some Title},
publisher = {Some Publisher},
year = 2041,
}
@BOOK{BookB46,
author = {Author nN},
title = {Some Title},
publisher = {Some Publisher},
year = 2042,
}
@BOOK{BookB47,
author = {Author Oo},
title = {Some Title},
publisher = {Some Publisher},
year = 2043,
}
@BOOK{BookB48,
author = {Author ppP},
title = {Some Title},
publisher = {Some Publisher},
year = 2044,
}
@BOOK{BookB49,
author = {Author qqQ},
title = {Some Title},
publisher = {Some Publisher},
year = 2045,
}
@BOOK{BookB50,
author = {Author rrR},
title = {Some Title},
publisher = {Some Publisher},
year = 2046,
}
@BOOK{BookB51,
author = {Author ssS},
title = {Some Title},
publisher = {Some Publisher},
year = 2047,
}
@BOOK{BookB52,
author = {Author t},
title = {Some Title},
publisher = {Some Publisher},
year = 2048,
}
@BOOK{BookB53,
author = {Author uuU},
title = {Some Title},
publisher = {Some Publisher},
year = 2049,
}
@BOOK{BookB54,
author = {Author vvV},
title = {Some Title},
publisher = {Some Publisher},
year = 2050,
}
@BOOK{BookB55,
author = {Author Www},
title = {Some Title},
publisher = {Some Publisher},
year = 2051,
}
@BOOK{BookB56,
author = {Author xxX},
title = {Some Title},
publisher = {Some Publisher},
year = 2052,
}
@BOOK{BookB57,
author = {Author yyY},
title = {Some Title},
publisher = {Some Publisher},
year = 2053,
}
@BOOK{BookB58,
author = {Author zzZ},
title = {Some Title},
publisher = {Some Publisher},
year = 2054,
}
@BOOK{BookB59,
author = {Author rst},
title = {Some Title},
publisher = {Some Publisher},
year = 2055,
}
\end{filecontents}
\begin{filecontents}{biblatextest2.bib}
@MISC{LinkD03,
author = {Author Ccc},
title = {Some Title},
year = 2004,
url = {www.test1.com/bild.jpg},
}
@MISC{LinkD04,
author = {Author Ddd},
title = {Some Title},
year = 2001,
url = {www.test2.com/bild.jpg},
}
@MISC{LinkD05,
author = {Author Eee},
title = {Some Title},
year = 2004,
url = {www.test3.com/bild.jpg},
}
@MISC{LinkD06,
author = {Author Fff},
title = {Some Title},
year = 2001,
url = {www.test4.com/bild.jpg},
}
@MISC{LinkD07,
author = {Author Ggg},
title = {Some Title},
year = 2004,
url = {www.test5.com/bild.jpg},
}
@MISC{LinkD08,
author = {Author Hhh},
title = {Some Title},
year = 2001,
url = {www.test6.com/bild.jpg},
}
@MISC{LinkD09,
author = {Author Iii},
title = {Some Title},
year = 2001,
url = {www.test6.com/bild.jpg},
}
\end{filecontents}
\addbibresource{biblatextest1.bib}
\addbibresource{biblatextest2.bib}
\begin{document}
The first two citations \autocite{LinkD07,LinkD03}
and \autocite{BookB10,BookB11,BookB09}.
Mixing both primary and secondary \autocite{LinkD08,LinkD04,LinkD05,BookB10,BookB11,BookB09}.
The others are \autocite{LinkD03,LinkD08,LinkD05,LinkD06,LinkD07}
as well as \autocite{LinkD03,LinkD04,LinkD05,LinkD07,LinkD08, LinkD09}
and \autocite{BookB07}.
With page numbers \cites[2--15]{BookB09}[3,5,23]{BookB10}[1--6]{BookB11}
With page numbers \Cites[2--15]{BookB10}[3,5,23]{BookB09}[1--6]{BookB11}
Example of very long citation with multiple authors all in alpha style \cite{BookB07,BookB08,BookB09,BookB10,BookB11,BookB12,BookB13,BookB14,BookB15,BookB16,BookB17,BookB18,BookB19,BookB20,BookB21,BookB22,BookB23,BookB24,BookB25,BookB26,BookB27,BookB28,BookB29,BookB30,BookB31,BookB32,BookB33,BookB34,BookB35,BookB36,BookB37,BookB38,BookB39,BookB40,BookB41,BookB42,BookB43,BookB44,BookB45,BookB46,BookB47,BookB48,BookB49,BookB50,BookB51,BookB52,BookB53,BookB54,BookB55,BookB56,BookB57,BookB58,BookB59}. The are some problems with the linebreaks inside the citation.
\printbibliography[env=bibliographyALPHA, title=Bibliography, keyword=primary]
\newrefcontext[labelprefix=tech\string\adddot\addnbthinspace]
\printbibliography[title=References, keyword=secondary, resetnumbers]
\end{document}