如何在 natbib 中使用 @misc 来获取(作者,nd)

如何在 natbib 中使用 @misc 来获取(作者,nd)

我将非常感激您能帮助我如何将没有日期的参考文献中的文内引用改为 (author, nd) 而不是 (author, nd)。奇怪的是,nd 只显示在我的参考文献列表中。以下是我使用的条目示例:

@misc{grace.ordinal,
author = {Grace-Martin, Karen},
year ={{n.d.}},
title = {{Principal Component Analysis for Ordinal Scale Items}},
note  = {\url{https://www.theanalysisfactor.com/principal-component-analysis-for-ordinal-scale-items/}, (accessed October 7, 2019)},
}

该包是:

\usepackage[sectionbib]{natbib}
\usepackage{chapterbib}

书目风格为芝加哥风格。

这些是我在网站上找到的最接近的答案,但我对编辑 .bst 文件的经验为零,我担心它会弄乱我在 overleaf 上的整个论文。另外,答案是基于 apalike 样式的。遵循它会安全并产生相同的结果吗?

使用 natbib 和 apalike 查找带 nd(无日期)的参考文献

在哪里可以找到 apacite.bst 文件来更改参考书目样式

请注意,我尝试将年份字段留空,甚至删除年份字段,但并没有得到我想要的结果。实际上,如果我执行这两个选项,作者姓名也会复制到日期字段中,用于文内引用,即(作者,作者)。

更新:@Marjin,如果你有时间看一下整个条目,这里就是(我想知道它是否不起作用,因为我正在使用 chapterbib 和 sectionbib?

\documentclass[oneside,12pt]{report}
\usepackage[paper=a4paper,   
        left=3.5cm,
        right=2.5cm,
        top=2.5cm,
        bottom=2.5cm,]{geometry}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{svg}


\usepackage{setspace}
\usepackage [T1 ]{ fontenc }
\usepackage{arabtex}
\usepackage{epigraph} 
\usepackage{float}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{tabularx}
\usepackage{booktabs,caption}
\usepackage[flushleft]{threeparttable}
\usepackage{float}
\usepackage{multirow}
\usepackage{setspace}
%\usepackage{hyperref}
\usepackage[hyphens]{url}
\usepackage[hidelinks]{hyperref}
\hypersetup{breaklinks=true,
            colorlinks=true,
            citecolor=blue,
            }


\newcommand{\ndlink}[1]{%
\begingroup%
\hypersetup{linkcolor=blue}%
(\hyperlink{cite.#1}{n.d.})%
\endgroup}

\urlstyle{same}
\renewcommand{\baselinestretch}{1.1}
\usepackage[sectionbib]{natbib}
\usepackage{chapterbib}


\usepackage{amsmath,amsthm}


\hypersetup{
    colorlinks=false,
    breaklinks=true
}
\setcounter{secnumdepth}{1}
\setcounter{tocdepth}{1}

%discourages hyphenated words at end of lines
\hyphenpenalty=5000
\tolerance=1000


\usepackage{appendix}

\appendixpageoff



\usepackage{datetime}
\newdateformat{monthyeardate}{%
  \monthname[\THEMONTH], \THEYEAR}

\newcommand{\quickwordcount}[1]{%
  \immediate\write18{texcount -0 -sum -merge  #1.tex > #1-words.sum }%
  \input{#1-words.sum}%
}

\newcommand\thesistitle{XXXXXX}
\newcommand\authorname{XX XX} % Full name
\newcommand\authordegrees{XX, XX} % This does not have to be filled in, but the regulations state that you should include any degrees you have.

\newgeometry{left=35mm, right=25mm, top=25mm, bottom=25mm, includeheadfoot} % This has to come before the header and footer information

% HEADER AND FOOTER STYLE
% https://en.wikibooks.org/wiki/LaTeX/Customizing_Page_Headers_and_Footers
\usepackage{fancyhdr}
\setlength{\headheight}{15pt}
% For preamble
\fancypagestyle{preamble}{ %
 \fancyhf{} % remove everything
 \fancyfoot[C]{\thepage}
 \renewcommand{\headrulewidth}{0pt} % remove lines as well
 \renewcommand{\footrulewidth}{0pt}
}
\pagestyle{preamble}

% For the main pages
\fancypagestyle{main}{
  \fancyhf{}
  %\fancyhead[R]{\thepage}
  \fancyfoot[C]{\thepage}
  %\fancyhead[L]{\textit{ \nouppercase{\leftmark}} }
  \fancyhead[R]{\textit{ \nouppercase{\rightmark}} }
  \renewcommand{\headrulewidth}{1pt} % remove lines as well
  \renewcommand{\footrulewidth}{0pt}
}

% For title and chapter pages
\fancypagestyle{plain}{ %
  \fancyhf{} % remove everything
  \fancyfoot[C]{\thepage} %should keep page number
  \renewcommand{\headrulewidth}{0pt} % remove lines as well
  \renewcommand{\footrulewidth}{0pt}
}





\begin{document}
Some content 

\end{document}

然后在每个章节的 tex 文件中,我在文档末尾的附录之前添加了

\clearpage
\newpage
\bibliography{nameofbibfile}
\bibliographystyle{chicago}

答案1

对于简单的一次性解决方法,您可以使用\citeauthor,它只打印作者,然后(n.d.)手动添加,如下所示:

\citeauthor{grace.ordinal} (n.d.)

如果您使用hyperref创建链接,则此文本将不会被链接。您可以使用 手动添加链接。在本例中,\hyperlink{destionation}{link text}引用项目的目的地是。请注意,此语法可能无法保证适用于不同的设置,因此请仔细检查它是否有效。然后您将获得:cite.bibtex keycite.grace.ordinal

\citeauthor{grace.ordinal} (\hyperlink{cite.grace.ordinal}{n.d.})

为了简化此变通方法,您可以创建一个新命令。然后您还可以做一些日常工作,例如确保链接颜色与引用颜色相同,并创建一个组以防止颜色更改泄漏到文档的其余部分。

当然,更简单的解决方法是添加年份。

梅威瑟:

@misc{grace.ordinal,
author = {Grace-Martin, Karen},
year ={{n.d.}},
title = {{Principal Component Analysis for Ordinal Scale Items}},
note  = {\url{https://www.theanalysisfactor.com/principal-component-analysis-for-ordinal-scale-items/}, (accessed October 7, 2019)},
}

@misc{gracetwo,
author = {Grace-Martin, Karen},
year ={2018},
title = {{Principal Component Analysis for Ordinal Scale Items}},
note  = {\url{https://www.theanalysisfactor.com/principal-component-analysis-for-ordinal-scale-items/}, (accessed October 7, 2019)},
}
\documentclass{article}
\usepackage{natbib}
\usepackage[colorlinks,citecolor=blue]{hyperref}
\newcommand{\ndlink}[1]{%
\begingroup%
\hypersetup{linkcolor=blue}%
(\hyperlink{cite.#1}{n.d.})%
\endgroup}
\begin{document}
This is a blog post: \citeauthor{grace.ordinal} \ndlink{grace.ordinal}. The same: \cite{gracetwo}.
\bibliographystyle{chicago}
\bibliography{\jobname}
\end{document}

结果:

在此处输入图片描述


对于包,链接目标在末尾chapterbib有字符串,例如。您可以将其添加到命令中:@-[chapter number]cite.grace.ordinal@-1

\newcommand{\ndlink}[1]{%
\begingroup%
\hypersetup{linkcolor=blue}%
(\hyperlink{cite.#1@-\arabic{chapter}}{n.d.})%
\endgroup}

检查链接目标的一个简单方法是在网络浏览器中打开 pdf 并将鼠标悬停在现有的参考书目链接上,然后完整的链接将显示在左下角。

相关内容