
Я нашел фрагмент кода для двухколоночной библиографии вэтот ответ:
\usepackage{multicol}
\makeatletter
\renewenvironment{thebibliography}[1]
{\begin{multicols}{2}[\section*{\refname}]%
\@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}%
\list{\@biblabel{\@arabic\c@enumiv}}%
{\settowidth\labelwidth{\@biblabel{#1}}%
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\@openbib@code
\usecounter{enumiv}%
\let\p@enumiv\@empty
\renewcommand\theenumiv{\@arabic\c@enumiv}}%
\sloppy
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m}
{\def\@noitemerr
{\@latex@warning{Empty `thebibliography' environment}}%
\endlist\end{multicols}}
\makeatother
Это в основном делает то, что я хочу (т. е. в двух столбцах, поэтому занимает меньше места), за исключением того, что каждому пункту предшествует [1], [2], ... Поскольку я использую библиографию в moderncv
Мне на самом деле не нужны метки, так как в тексте нет ссылок. Если меток трудно избежать, я бы предпочел что-то вроде маркера.
Думаю, это может все усложнить, но, к лучшему или к худшему, в настоящее время я используюplainyr-rev.bstтакже. Хотя это не принципиально; в блогографии всего около дюжины пунктов, и я мог бы просто изменить метки и отсортировать по ним, наверное.
решение1
Ответ отГонсало Мединакоторый я привел в вопросе, обеспечивает большую часть необходимой мне функциональности, а с учетом доработки, предложеннойЦикададелает то, что я хочу. Итак, я пришел к этому:
\makeatletter
\ifthenelse{\boolean{twocolbib}}{
\renewenvironment{thebibliography}[1]
{\begin{multicols}{2}[\section*{\refname}]%
\@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}%
\list{}
{\settowidth\labelwidth{\@biblabel{#1}}%
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\@openbib@code
\usecounter{enumiv}%
\let\p@enumiv\@empty
\renewcommand\theenumiv{\@arabic\c@enumiv}}%
\sloppy
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m}
{\def\@noitemerr
{\@latex@warning{Empty `thebibliography' environment}}%
\endlist\end{multicols}}
}{}
\makeatother
Однако, как оказалось, другие части моего резюме стали настолько длинными, что уже не помещались на одной странице, поэтому преимущество двухколоночной библиографии сошло на нет, и я добавил ее \ifthenelse
на случай, если она мне снова понадобится.