我如何引用LaTeX中的文章标题?

我如何引用LaTeX中的文章标题?,latex,bibtex,Latex,Bibtex,我在一篇文章中使用了LaTeX和BibTeX,我想引用我引用的一篇文章的标题。执行此操作的命令是什么 我使用的是\书目样式{chicago},它似乎不是\citeT{},\citetitle{}或\citetitle{}只需在标题中键入。即使是功能最强大、应用最广泛的BibTeX软件包natbib,其功能也不足以实现您的开箱即用。试图让BibTeX通过一个LateX命令为您提取标题是可能的,但这需要您 为与现有格式不兼容的书目项目设计新格式 编写自己的自定义.bst文件,使用仅由BibTeX使用

我在一篇文章中使用了LaTeX和BibTeX,我想引用我引用的一篇文章的标题。执行此操作的命令是什么


我使用的是
\书目样式{chicago}
,它似乎不是
\citeT{}
\citetitle{}
\citetitle{}
只需在标题中键入。即使是功能最强大、应用最广泛的BibTeX软件包
natbib
,其功能也不足以实现您的开箱即用。试图让BibTeX通过一个LateX命令为您提取标题是可能的,但这需要您

  • 为与现有格式不兼容的书目项目设计新格式
  • 编写自己的自定义
    .bst
    文件,使用仅由BibTeX使用的非常奇怪的后缀语言,以便与新格式兼容
  • 编写一个新的LaTeX命令,将标题信息从新格式中提取出来
  • 作为一个编写了多个自定义
    bst
    文件和一个脚本的人来说,这不值得玩弄。毕竟,如果你引用了这篇文章,你可能知道它的标题



    编辑:如果你必须对多篇论文进行编辑,我会尝试作弊。扩展bst文件,以便将一个命令写入bbl文件,该命令将与每个bibkey关联的标题写入aux文件。您可以对
    \label
    上的bbl命令和
    \ref

    @Norman上的实际标题引用命令以及各种注释进行建模,这是正确的,因为使用bibtex和其他工具很难做到这一点。但是,还有一种选择。是否允许通过命令
    \citetitle
    执行此操作。此外,如果您真的愿意,biblatex中的格式化驱动程序很容易阅读和修改,但只有在您觉得需要的时候。不幸的是,它还不是任何发行版的一部分,因此必须下载并安装。

    我就是这样解决被引用论文的标题问题的:

    序言中的

    \citetalias{Weiser1996designingcalm}
    
    包括Natbib:

    \usepackage[sort&compress]{natbib}
    
    如果你想在正文中引用一个标题而不是作者,你可以在序言中这样定义标题:

    \defcitealias{Weiser1996designingcalm}{Designing Calm Technology}
    
    注意: 您需要有一个bibtex项(标题为“设计平静技术”),其键为{Weiser1996designingcalm}

    在你想写被引用论文标题的论文中

    \citetalias{Weiser1996designingcalm}
    
    这将导致=>
    设计Calm技术(即您使用上面的\defcciteAlias命令指定的文本)

    这导致=>
    (设计Calm技术)
    (即带括号的标题)

    感谢您的提示<代码>\defcciteAlias
    似乎是一条可行之路

    Bibtex生成一个
    .bbl
    文件,其中包含书目条目。诸如此类

    \bibitem[\protect\citeauthoryear{Andrienko
      {\itshape{et~al.}}}{2003}]{Andrienko2003}
    Andrienko, G., Andrienko, N., and Voss, H., 2003. {GIS for Everyone: The
      CommonGIS Project and Beyond}. {\itshape {In}}: {\itshape {Maps and the
      Internet}}.,  131--146  Elsevier.
    
    我使用Eclipse,它是免费的,如果需要的话,您可能已经需要在这个文件中应用正则表达式了。”\R'充当独立于平台的行分隔符。以下是多行搜索的示例:

    搜索:

    \\bibitem.*(\R.*)?\R?\{([^{]*)\}\R^[^\\].*\d\d\d\d\.\s([^\.]*\R?[^\.]*)\R?.*\R?.*
    
    并替换:

    \\defcitealias{$2}{$3}
    
    (对于我自己,我使用
    \\bibitem.*(\R.*)\R?\{([^{]*)\}$\R^([^\\].[^\}]$\R.*.$\R.*)
    获取所有项目文本)

    Et生成一系列可复制粘贴到其他位置的
    \defcciteAlias

    \defcitealias{Andrienko2003}{{GIS for Everyone: The
      CommonGIS Project and Beyond}}
    最后,这可用于构建自定义命令,例如:

    \newcommand{\MyCite}[1]{\citet*{#1}. \citetalias{#1}.}
    

    用作
    \MyCite{Andrienko2003}
    并产生:
    Andrienko等人(2003)。每个人的地理信息系统:公共地理信息系统项目和其他项目。

    这个问题很老了,也许
    \citefield
    在过去并不存在,但现在它对此类问题很有吸引力:

    \documentclass[varwidth]{standalone}
    
    \usepackage{biblatex}
    \begin{filecontents}{\jobname.bib}
    @article{example,
      title   =  {NAME OF PAPER},
    }
    \end{filecontents}
    \addbibresource{\jobname.bib}
    
    \begin{document}
    
    \citefield{example}{title}
    
    \end{document}
    

    来自。

    感谢诺曼-没错,我确实知道标题,但我正在尝试生成一种特定类型的文档,我可以在其中引用标题(目前有20个引用)。我确实在这里找到了一个.bst文件生成器:@celenius:在这种情况下,我看你除了自己编写代码之外别无选择。(bst maker做得很好,但这组特定的函数已经被
    natbib
    取代)你可以从bibtex开始,这很痛苦,也可以从nbibtex开始,这也很痛苦,但方式不同。我不太明白你所说的“扩展bst文件”是什么意思。我想我在编码这方面做得太深了,所以我会复制/粘贴标题。谢谢你的建议。我的一次黑客bst文件的经验(让我使用bibtext为我的简历生成参考列表)是令人惊讶的痛苦,因为我需要修改现有样式的非常小的方式。也许biblatex会使这成为可能?