我有一个关于如何在 unsrt 书目样式中更改作者姓氏和名字的顺序的问题。我尝试了其他样式,但最接近我需要的是 unsrt,但略作了一点改动。
Unsrt 给出了以下参考
M. Velasquez 和 PT Hester。多标准决策方法分析。国际运筹学杂志,10(2):56–66,2013 年。
但我想要这样的东西
Velasquez, M 和 Hester, PT,《多标准决策方法分析》。《国际运筹学杂志》,10(2):56–66,2013 年。
我只需要更改此参考书目样式中名字和姓氏的外观。您能帮我解决这个问题吗?
答案1
我也对unsrt
参考书目中名字和姓氏的排序感到很困惑。
我使用Texmaker 4.3, MiKTeX 2.9
,并且有一个简单的解决方法:
unsrt.bst
将文件从 MiKTeX 目录的“MiKTeX 2.9\bibtex\bst\base”文件夹复制到.tex
文档文件夹中,然后重命名(例如unsrt2.bst
)- 使用编辑器打开它并转到部分
FUNCTION {format.names}
- 将以下行重写
{ s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
为{ s nameptr "{ll}{~ff}{~vv}{, jj}" format.name$ 't :=
- 在
.tex
文件中使用新样式:\bibliographystyle{unsrt2}
- 享受
答案2
下面是一个可以做什么的例子biblatex+biber
(与相比,biber 的一个重要特性bibtex
是它能够理解utf8
;因此您可以直接在文件中排版重音字母.bib
)。
我擅自将字体包从times
(过时的)更改为更新、更完整的newtxtext
(newtxmath
基于TeX Gyre Termes
Times 的克隆版)。
请注意,biblatex 的语法与传统的参考书目包不同:您必须.bib
在序言中声明数据库,形式如下:
\addbibresource{mydatabase.bib}
\printbibliography
然后在文档中写下您想要的位置。
\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage{filecontents}
\begin{filecontents}{refer.bib}
@book{Benayoun1966,
title={Manuel de Référence du Programme {ELECTRE}},
subtitle = {Note de Synthèse et Formation},
author={Benayoun, R. and Roy, B. and Sussman, N.},
series={Princeton University Econometric Research Program. Research memorandum},
number={25},
year={1966},
publisher={Direction Scientifique SEMA},
location={Paris, France}
}
@book{cap,
title ={Le Captain Cap. Ses aventures, ses idées, ses breuvages},
author = {Alphonse Allais},
publisher = {Juven},
year = {1902},
location = {Paris}
}
}
%
\end{filecontents}
\usepackage{amssymb,amsmath}
\usepackage[left=3cm,top=2.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage{float}
\usepackage{graphicx, setspace}
\usepackage{caption}
\usepackage{newtxtext, newtxmath}
%\usepackage[square, numbers, comma, sort&compress, round]{natbib}
\usepackage{multirow}
\setcounter{secnumdepth}{4}
\onehalfspacing
\setcounter{tocdepth}{8}
\usepackage[sorting=none, firstinits, style=numeric-comp, backend=biber]{biblatex}
\DeclareNameAlias{sortname}{last-first}
\DeclareNameAlias{author}{sortname}
\DeclareFieldFormat{number}{no. #1}
\addbibresource{refer.bib}
\begin{document}
... \parencite{Benayoun1966}
Yumyumyum…
\cite{cap}
\printbibliography
\end{document}