
2列の参考文献のコードスニペットを見つけました。この答え:
\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
これは基本的に私が望んでいること(つまり、2列なので、スペースをあまり取らない)ですが、各項目の前に[1]、[2]などが付きます。 の参考文献を使用しているので、テキストmoderncv
に引用がないので、ラベルは実際には必要ありません。ラベルを避けるのが難しい場合は、箇条書きのようなものが望ましいです。
物事が複雑になるかもしれないが、良くも悪くも私は現在プレーンイヤー-rev.bstまた。ただし、これは重要ではありません。ブログ記事には 12 個程度の項目しか含まれていないので、ラベルを変更して、それらの項目で並べ替えるだけで済むかもしれません。
答え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
しかし、結局、私の履歴書の他の部分が長くなりすぎて、1 ページに収まらなくなったため、2 列の参考文献の利点がなくなり、\ifthenelse
再び必要になった場合に備えて を追加しました。