参考书目排序

参考书目排序

URL 的列表方式与我想要的并不完全一致。URL-2 应该位于 URL-1 之后。但是,URL-10 和 URL-11 位于它们之间。

在此处输入图片描述

我的bst文件:链接 1

bst 文件的替代链接:链接 2

我的 MWE 是:

\documentclass[12pt]{report}
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{r1,
  title     = {},
  author    = {{URL-1}},
  year      = {2019},
  url       = {https://earth.esa.int/web/guest/missions/esa-eo-missions/ers/mission-summary},
  note      = {2 Ocak 2019}
}

@misc{r2,
  title     = {},
  author    = {{URL-2}},
  year      = {2019},
  url       = {https://www.dlr.de/dlr/en/desktopdefault.aspx/tabid-10377/565_read-436/#/gallery/350},
  note      = {5 Ocak 2019}
}

@misc{r3,
  title     = {},
  author    = {{URL-3}},
  year      = {2019},
  url       = {http://global.jaxa.jp/projects/sat/alos/},
  note      = {5 Ocak 2019}
}

@misc{r10,
  title     = {},
  author    = {{URL-10}},
  year      = {2019},
  url       = {http://www.cosmo-skymed.it/en/index.htm},
  note      = {5 Ocak 2019}
}

@misc{r11,
  title     = {},
  author    = {{URL-11}},
  year      = {2018},
  url       = {https://sentinel.esa.int/web/sentinel/user-guides/sentinel-1-sar/acquisition-modes/interferometric-wide-swath},
  note      = {13 Kasım 2018}
}



\end{filecontents}


\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[main=turkish,english,shorthands=:!]{babel}
\usepackage{titlesec}
\usepackage[normalem]{ulem}
\usepackage{etoolbox}

\usepackage{apacite}
%%% Same fonts for URL
\AtBeginDocument{\urlstyle{APACsame}} %
\usepackage{natbib}

%---------------------------
\usepackage[none]{hyphenat}

\usepackage[unicode]{hyperref} %
\urlstyle{same}


% BEGIN
\begin{document}

\sloppy %  working with the \usepackage[none]{hyphenat} code

% CHAPTER-------------

\chapter{Chapter 1}

\cite{r1}\\
\cite{r2}\\
\cite{r3}\\
\cite{r10}\\
\cite{r11}\\
%---------------------


%BIBLIOGRAPHY---------


\setlength{\bibsep}{1\itemsep}
\bibliographystyle{tez}
\bibliography{\jobname}

%.....................

\end{document}

答案1

正如 David Carlisle 在评论中指出的那样,URL-1在 ASCII 表中,后面跟着URL-10URL-11不是 URL-2URL-3

有一种成熟的方法可以覆盖 BibTeX 处理的书目中的默认排序顺序:在实际作者姓名前加上适当选择的\noopsort指令。此处,\noopsort应通过以下方式定义

\providecommand{\noopsort}[1]{}

然后,author按如下方式修改该字段:

author = {{\noopsort{URL10}}URL-10},

\noopsort就 LaTeX 而言,该指令“什么也不做”。但是,当 BibTeX 执行其操作时,它可以覆盖默认排序顺序,而这正是所需要的。

在以下示例中,请注意这五个\noopsort语句。我不得不对您的代码进行一些更改,因为 (a) 我无法访问tez书目样式,并且 (b) 同时加载apacitenatbib包是一个错误。我选择继续加载natbib引文管理包并采用plainnat书目样式。当然,您可以自由修改这些更改。

在此处输入图片描述

最后一条评论:我认为省略字段是一个错误——不是语法错误,而是内容错误title。参考书目的首要目的是告知读者。我真的不明白你为什么不写title = {{ERS} Mission Summary},条目r1等等。

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@preamble{ "\providecommand{\noopsort}[1]{}" } % <-- new
@misc{r1,
  title  = {},
  author = {{\noopsort{URL01}}URL-1},
  year   = {2019},
  url    = {https://earth.esa.int/web/guest/missions/esa-eo-missions/ers/mission-summary},
  note   = {2 Ocak 2019}
}
@misc{r2,
  title  = {},
  author = {{\noopsort{URL02}}URL-2},
  year   = {2019},
  url    = {https://www.dlr.de/dlr/en/desktopdefault.aspx/tabid-10377/565_read-436/#/gallery/350},
  note   = {5 Ocak 2019}
}
@misc{r3,
  title  = {},
  author = {{\noopsort{URL03}}URL-3},
  year   = {2019},
  url    = {http://global.jaxa.jp/projects/sat/alos/},
  note   = {5 Ocak 2019}
}
@misc{r10,
  title  = {},
  author = {{\noopsort{URL10}}URL-10},
  year   = {2019},
  url    = {http://www.cosmo-skymed.it/en/index.htm},
  note   = {5 Ocak 2019}
}
@misc{r11,
  title  = {},
  author = {{\noopsort{URL11}}URL-11},
  year   = {2018},
  url    = {https://sentinel.esa.int/web/sentinel/user-guides/sentinel-1-sar/acquisition-modes/interferometric-wide-swath},
  note   = {13 Kasım 2018}
}
\end{filecontents}

\documentclass[12pt]{report}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[main=turkish,english,shorthands=:!]{babel}
\usepackage{titlesec}
\usepackage[normalem]{ulem}
\usepackage{etoolbox}

%\usepackage[natbibapa]{apacite}
%\bibliographystyle{apacite}%{tez}
%%% Same fonts for URL
%\AtBeginDocument{\urlstyle{APACsame}} %
%r

\usepackage[round]{natbib}
\bibliographystyle{plainnat} % or some other suitable bib style

\usepackage[none]{hyphenat}

\usepackage[spaces,obeyspaces,hyphens]{xurl} % allow arbitrary line breaks in URL strings
\urlstyle{same}
\usepackage[colorlinks,allcolors=blue]{hyperref}


\begin{document}

\sloppy %  working with the \usepackage[none]{hyphenat} code

\noindent
\cite{r1},
\cite{r2},
\cite{r3},
\cite{r10},
\cite{r11}

\setlength{\bibsep}{1\itemsep} % a dubious choice, in my opinion
\bibliography{\jobname}

\end{document}

相关内容