lsalike.bib
我正在使用和整理一份语言学参考书目lsalike.sty
。我使用 和 生成它\nocite{*}
,并希望对参考文献进行编号(但保持通常的顺序)。
我对 LaTeX 还不太熟悉,但这是我尝试 MWE 的方法。这是我目前能做到的最接近的程度。
文档:
\documentclass{article}
\usepackage{lsalike}
\makeatletter
\renewcommand\@biblabel[1]{\@arabic\c@enumi}
\makeatother
\begin{document}
\nocite{*}
\bibliographystyle{lsalike}
\bibliography{mwe-bib}
\end{document}
参考书目文件:
@phdthesis{Nossalik:2009aa,
Author = {Larissa Nossalik},
School = {McGill University},
Title = {L2 Acquisition of {R}ussian Aspect},
Year = {2009}
}
@article{Bermel:1995aa,
Author = {Neil Bermel},
Journal = {{R}ussian {L}inguistics},
Number = {3},
Pages = {333--348},
Title = {Aspect and the Shape of Action in {O}ld {R}ussian},
Volume = {19},
Year = {1995}
}
这给了我一个引用列表,0
每个引用前面都有 。有没有办法1
在列表中的第一个引用之前、2
第二个引用之前等等显示?
答案1
该lsalike
包用于进行作者年份引用:
“lsalike”书目样式(lsalike.bst)创建带有标签的引文,例如
\citeauthoryear{author-info}{year}
这些标签由以下命令处理:[...]
因此参考书目不应该有数字。如果您仍然想要数字,您可以执行不同的修补:
\usepackage{etoolbox}
\patchcmd{\thebibliography}{\setlength}{\usecounter{enumiv}\setlength}{}{}
\makeatletter
\renewcommand\@biblabel[1]{\stepcounter{enumiv}[\arabic{enumiv}]}
\makeatother
数字将会出现在边缘处。
根据 Guido 的建议,可以将数字推到边距内:
\renewcommand\@biblabel[1]{\stepcounter{enumiv}\hspace{\bighang}[\arabic{enumiv}] }
答案2
我不知道你对这种lsalike
风格有多固执,但这biblatex
将是一项非常简单的任务:
\begin{filecontents}{mwe-bib.bib}
@phdthesis{Nossalik:2009aa,
Author = {Larissa Nossalik},
School = {McGill University},
Title = {L2 Acquisition of {R}ussian Aspect},
Year = {2009}
}
@article{Bermel:1995aa,
Author = {Neil Bermel},
Journal = {{R}ussian {L}inguistics},
Number = {3},
Pages = {333--348},
Title = {Aspect and the Shape of Action in {O}ld {R}ussian},
Volume = {19},
Year = {1995}
}
\end{filecontents}
\documentclass{article}
%\usepackage{lsalike}
\usepackage[
sorting=nyt,
style=numeric,
backend=bibtex,
]{biblatex}
%\makeatletter
%\renewcommand\@biblabel[1]{\@arabic\c@enumi}
%\makeatother
\bibliography{mwe-bib}
\begin{document}
\cite{Nossalik:2009aa}
\cite{Bermel:1995aa}
\nocite{*}
\printbibliography
%\bibliographystyle{lsalike}
%\bibliography{mwe-bib}
\end{document}
我认为调整 biblatex 风格以适应 lsalike 风格可能比在现有的参考书目风格中引入一些奇怪的计数器要容易得多
答案3
提出的解决方案的替代方案@egeg
是
\usepackage{etoolbox}
\newcounter{lsaref}
\makeatletter
\apptocmd{\@lbibitem}{\stepcounter{lsaref}\arabic{lsaref}.}{}{}
\makeatother