
我找到了兩列參考書目的程式碼片段這個答案:
\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
以防萬一我再次需要它。