保留BibTeX中的所有大写字母

时间:2010-05-10 05:36:48

标签: bibtex

我有一个从Papers for Mac自动生成的巨大.bib文件,.bib中的所有大写字母已经是我想要的方式,但它没有像RNA那样的{}括号。

有没有办法强制BibTeX保持大写而不是将某些单词改为小写?

5 个答案:

答案 0 :(得分:45)

我同意Killian说正确的事情是将{} s保存为大写,但我不建议这样做,因为行为是wrong in some contexts, and not automatisable,而Bibtex的正确之处是执行以下操作:

  1. 将书籍和文章标题放入标题案例中(即,将所有重要词汇[1]大写,但尚未保护它们);
  2. 保护所有专有名称的大写字母,例如From {B}rouwer to {H}ilbert;
  3. 保护所有技术缩略语的首都,例如The definition of {S}tandard {ML};和
  4. 保护字幕的初始字词,例如{W}ittgenstein's Poker: {T}he story of a ten-minute argument
  5. 不要保护小写字母:这可以防止Bibtex将字符串转换为全部大写字母,这是一些不起眼的书目样式所必需的。

    如果您一直在使用拼写检查程序,那么其数据库的内容将很幸运地包含您需要知道的所有材料以便正确地进行大写:拼写检查程序的商店信息是哪些单词都是全部的,并将其大写为专有名称。如果您可以通过编程方式匹配单词,那么您可以自动生成Bibtex数据库,只需要一点点工作,但这可能是一个两小时的项目。

    Tiresomely,Bibtex 不能用于使所有参考书目正确,因为不同的引用风格实际上有不同的非重要单词列表。然而,在实践中几乎没有人关心这些差异,因此可以提出一个标准的非大写单词列表。

    [1] - 重要词语:“a”,所有双字母实际单词,“the”,“and”,“some”,所有单词介词,以及所有单字代词对于几乎所有的出版商来说,这是一个可接受的非重要单词列表。

答案 1 :(得分:17)

如果您希望编辑bibtex样式(.bst)而不是参考书目(.bib),则可以搜索其中change.case$的出现次数。这是大写或标题化非人名字段的函数。

通常,对于标题字段,您应该找到类似title "t" change.case$的内容。由于您希望标题未经修改,请将其替换为title

答案 2 :(得分:9)

在这种情况下,您应该在每个标题周围添加{},这具有相同的效果,并且应该很容易自动完成。

答案 3 :(得分:2)

我的标题如下:

title = {blah blah AB blah AB blah}

结果如下:

"blah blah ab blah ab blah"

使用Charles Stewart的建议,我将标题改为:

title = {blah blah {A}{B} blah {A}{B} blah}

现在我的头衔正确: blah blah AB blah AB blah

希望这有帮助。

答案 4 :(得分:1)

使用{花括号}的一种替代方法是: -

  1. 首次运行pdflatex后,检查.bbl文件的根文件夹,其中.bbl是您的BiBteX数据库,然后在BiBteX数据库file.bbl上运行bibtex。

  2. 在您选择的编辑器中打开此* .bbl文件。

  3. 该文件如下所示:

    \begin{thebibliography}{10}
    
    \expandafter\ifx\csname url\endcsname
    
    \relax
    \def\url#1{\texttt{#1}}
    
    \fi
    \expandafter\ifx\csname urlprefix\endcsname
    
    \relax\def\urlprefix{URL }
    
     \fi
    
    \bibitem{label}.....
    
  4. 编辑此* .bbl文件以满足您的要求,现在在.tex文件上运行pdflatex命令。这应该会给你想要的结果。

  5. 通过这种方法,您可以以任何方式编辑参考书目。您甚至可以添加带重音字符的名称。