web-dev-qa-db-ja.com

BibTeXですべての大文字を保持する

Papers for Macから自動的に生成された巨大な.bibファイルがあります。bibの大文字はすべて既に必要ですが、WordのようなRNAには{}括弧がありません。

一部の単語を小文字に変更するのではなく、BibTeXに大文字の使用を強制する方法はありますか?

74
Sal

大文字と小文字を節約するために{}を配置するのは正しいことだとKillianに同意しますが、振る舞いは コンテキストによっては間違っており、自動化できない ですが、代わりにこれを行うことはお勧めしません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

小文字を保護しない:これは、Bibtexが文字列をすべて大文字に変換するのを防ぎます。これは、あいまいな書誌スタイルで必要です。

スペルチェッカーを使用している場合、そのデータベースの内容には、幸運なことに、適切に大文字を使用するために知っておく必要のあるほぼすべての資料が含まれます。どの単語がすべて大文字で、どのチェッカーが固有名詞として大文字で表記されます。これに対してプログラムで単語を一致させることができれば、Bibtexデータベースを自動的に生成することができます。少し手間がかかりますが、2時間のプロジェクトかもしれません。

面倒なことに、Bibtexを使用してすべての書誌を正しく取得することはできません。異なる引用スタイルには実際には重要でない単語の異なるリストがあるためです。しかし、実際には、違いを気にする人はほとんどいないので、大文字ではない単語の標準リストを思い付くことができます。

[1]-重要な単語:「a」、すべて2文字の実際の単語、「the」、「and」、「some」、すべて1単語の前置詞、すべて1単語の代名詞は、ほぼすべての出版社にとって重要な言葉です。

45
Charles Stewart

参考文献(.bst)ではなくbibtexスタイル(.bib)を編集する場合は、その中のchange.case$の出現を検索できます。これは、人の名前ではないフィールドを大文字化またはタイトル化する機能です。

通常、タイトルフィールドには、title "t" change.case$のようなものがあります。タイトルを変更しないので、titleだけで置き換えます。

17
Damien Pollet

その場合、各タイトル全体に{}を追加するだけで、同じ効果が得られ、自動的に簡単に実行できるはずです。

9
Kilian Foth

次のようなタイトルでも同じ問題が発生していました。

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

お役に立てれば。

2
Jrop

{中括弧}を使用する代わりの方法は次のとおりです。

  1. Pdflatexを初めて実行し、BiBteXデータベースfile.bblでbibtexを実行した後、ルートフォルダーの.bblファイル(.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. この方法により、任意の方法で参考文献を編集できます。アクセント記号付きの文字で名前を追加することもできます。

1
Sujay K