使用 moderncv 对 hyperref 的 backref 进行定制和多语言支持 \backrefalt

使用 moderncv 对 hyperref 的 backref 进行定制和多语言支持 \backrefalt

参考我的上一篇,我现在重新打开这个话题说我做了一个拉取请求在 GitHub 上(由 @rmano 建议,我在评论中向他表示感谢),实现意大利语支持,但我也重新排列了之前的代码,将反向引用的定制直接插入到命令\backrefenglish\backrefgerman\backreffrench\backrefspanish\backrefbrazil、的定义中\backrefafrikaans\backrefitalian如下所示:

\def\backrefenglish{%
  \def\backrefpagesname{pages}%
  \def\backrefsectionsname{sections}%
  \def\backrefsep{, }%
  \def\backreftwosep{ and~}%
  \def\backreflastsep{, and~}%
  \renewcommand*{\backref}[1]{}% for backref < 1.33 necessary
  \renewcommand*{\backrefalt}[4]{[{%
    \ifcase ##1 No citations%
      \or Cited in page~##2%
      \else Cited in pages~##2%
    \fi%
  }]}%
}
\def\backrefitalian{%
  \def\backrefpagesname{pagine}%
  \def\backrefsectionsname{sezioni}%
  \def\backrefsep{, }%
  \def\backreftwosep{ e~}%
  \def\backreflastsep{ e~}%
  \renewcommand*{\backref}[1]{}% for backref < 1.33 necessary
  \renewcommand*{\backrefalt}[4]{[{%
    \ifcase ##1 Nessuna citazione%
      \or Cit. a pagina~##2%
      \else Cit. alle pagine~##2%
    \fi%
  }]}%
}

backref-multilingual-implemented如果您能在我的分支上做出贡献,则有必要扩展当前语言(德语、法语、西班牙语、巴西语、南非荷兰语)中以下 3 句话的翻译GitHub

  1. 无引用
  2. 引用页
  3. 引用页数

\backrefalt代码可以运行,根据\backrefenglish或之前\backrefitalian使用的命令生成自定义命令的意大利语或英语版本(如\begin{document}\bibliographystyle上一篇),但需要在包文件中注释掉\backrefenglish之后的命令,将其明确改为在之前内使用所需语言的命令( 、、、、或)。也许可以编写更简洁的代码,也可以考虑使用来代替。您觉得呢?\BR@DeclareLang{italian}{italian}backref.styhyperref\backrefenglish\backrefgerman\backreffrench\backrefspanish\backrefbrazil\backrefafrikaans\backrefitalian\begin{document}\bibliographystylebackrefsectionspages

相关内容