我正在使用 Elsevier 的 CAS Latex 双列模板 LaTeX 包。(https://ko.overleaf.com/latex/templates/elseviers-cas-latex-double-column-template/hhzpymgjmxfk)
在写论文的时候遇到一个问题解决不了,所以发这个帖子向高手求助。
(1) 标题标有连字符。但是,(2) 第一页左下角回复作者电子邮件旁边的作者姓名中无法识别连字符,以及 (3) 参考文献中未使用连字符。
例) (1)洪吉东 (2)洪 G.(未确认) (3)洪 GD(未确认)
有解决办法吗?
\documentclass[a4paper,fleqn]{cas-dc}
\usepackage[authoryear,longnamesfirst]{natbib}
%% removal ORCID
\renewcommand{\printorcid}{}
\begin{document}
\let\WriteBookmarks\relax
\def\floatpagepagefraction{1}
\def\textpagefraction{.001}
% Short title
\shorttitle{}
% Short author
\shortauthors{G.-D. Hong et~al.}
% Main title of the paper
\title [mode = title]{This is title}
\author[1]{Gil-Dong Hong}
\cormark[1]
% Email id of the first author
\ead{[email protected]}
% Corresponding author text
\cortext[cor1]{Corresponding author}
% Here goes the abstract
\begin{abstract}
This template
\end{abstract}
% Keywords
% Each keyword is seperated by \sep
\begin{keywords}
\end{keywords}
\maketitle
\section{Introduction}
\cite{example}
%% Loading bibliography style file
%\bibliographystyle{model1-num-names}
\bibliographystyle{cas-model2-names}
% Loading bibliography database
\bibliography{cas-refs}
\end{document}
[添加 cas-refs.bib]
@ARTICLE{example, author = {G.-D. Hong}, title = {这是标题}, journal = {期刊}, volume = {1}, year = {2022}, pages = {1-10}}
答案1
据我所知,他们的文档类和样式表设置得不太好,无法处理这样的名称。处理此问题的“正确”方法可能是向期刊提出,但如果您只需要快速而粗略的修复,以下内容似乎有帮助:
\eadauthor
对于(2),重新定义通常由命令派生出来的命令\author
,即
\author[1]{Gil-Dong Hong}
\renewcommand{\eadauthor}{G.-D. Hong}
对于 (3),将这个尴尬的怪物放入文件中.bib
:
@ARTICLE{example,
author = {Hong, {\mbox{G.-D}}.},
title = {This is title},
journal = {Journal},
volume = {1},
year = {2022},
pages = {1--10}
}
然而,如果有更优雅的解决方案,我不会感到惊讶。
答案2
我遇到了类似的问题,并通过在序言中添加以下代码解决了它。
\ExplSyntaxOn
\RenewDocumentCommand \eadauthor {}
{
\seq_map_inline:Nn \l_stm_au_seq
{
\regex_extract_once:nnNTF {(\w)\w*-(\w)} { ##1 } \l_stm_au_fn_seq
{
\seq_pop_left:NN \l_stm_au_fn_seq \temp_var
\seq_use:Nn \l_stm_au_fn_seq { .- }
{ . }
}
{
\regex_match:nnTF { \. } { ##1 }
{ ##1 }
{ \tl_head:n {##1}. }
}
}{ ~\l_stm_au_sn_seq }
}
\ExplSyntaxOff