解决Springer 最新Latex模板参考文献与要求不符的问题

Springer参考文献要求 

解决Springer 最新Latex模板参考文献与要求不符的问题

 期刊要求参考文献的引用为数字,文献按顺序排列(sn-mathphys.bst模板符号要求);还要求参考文献在reference上显示作者+年份(sn-basic.bst模板符合要求)。

期刊提示可以使用sn-basic.bst

 解决办法:

找到sn-jnl.cls 文件的1656-1667行:

\if@Spr@basic@refstyle%
\if@Numbered@refstyle%
  \usepackage[numbers,sort&compress]{natbib}%
  \gdef\NumBib{YES}%
\else%
 \usepackage[authoryear]{natbib}%
  \gdef\NumBib{NO}%
\fi%
  \bibliographystyle{sn-basic}%
  \setlength{\bibsep}{1em}%
  \def\bibfont{\reset@font\fontfamily{\rmdefault}\normalsize\selectfont}%
\fi%

修改成:

\if@Spr@basic@refstyle%
\if@Numbered@refstyle%
  \usepackage[numbers,sort&compress]{natbib}%
  \gdef\NumBib{YES}%
\else%
 %\usepackage[authoryear]{natbib}%
  %\gdef\NumBib{NO}%
  \usepackage[numbers,sort&compress]{natbib}%
  \gdef\NumBib{YES}%
\fi%
  \bibliographystyle{sn-basic}%
  \setlength{\bibsep}{1em}%
  \def\bibfont{\reset@font\fontfamily{\rmdefault}\normalsize\selectfont}%
\fi%

找到sn-basic.bst文件1708-1761行(两个大写的SORT之间)进行修改:

% SORT   注释掉
STRINGS { last.label next.extra }
INTEGERS { last.extra.num number.label }
FUNCTION {initialize.extra.label.stuff}
{ #0 int.to.chr$ 'last.label :=
  "" 'next.extra :=
  #0 'last.extra.num :=
  #0 'number.label :=
}
FUNCTION {forward.pass}
{ last.label label =
    { last.extra.num #1 + 'last.extra.num :=
      last.extra.num int.to.chr$ 'extra.label :=
    }
    { "a" chr.to.int$ 'last.extra.num :=
      "" 'extra.label :=
      label 'last.label :=
    }
  if$
  number.label #1 + 'number.label :=
}
FUNCTION {reverse.pass}
{ next.extra "b" =
    { "a" 'extra.label := }
    'skip$
  if$
  extra.label 'next.extra :=
  extra.label
  duplicate$ empty$
    'skip$
    { "{\natexlab{" swap$ * "}}" * }
  if$
  'extra.label :=
  label extra.label * 'label :=
}
EXECUTE {initialize.extra.label.stuff}
ITERATE {forward.pass}
REVERSE {reverse.pass}
FUNCTION {bib.sort.order}
{ sort.label
  "    "
  *
  year field.or.null sortify
  *
  "    "
  *
  title field.or.null
  sort.format.title
  *
  #1 entry.max$ substring$
  'sort.key$ :=
}
ITERATE {bib.sort.order}
% SORT  注释掉

重新运行就OK

双栏编辑

使用\documentclass[sn-basic,iicol]{sn-jnl}命令

双栏作者信息问题

参考我的https://blog.csdn.net/weixin_43272031/article/details/129983379?spm=1001.2014.3001.5502

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/fdfcc22087.html