
私の .bib ファイルは次のようになります:
@incollection{stal2,
author = {Robert Stalnaker},
title = {Assertion}
booktitle = {Context and Content},
publisher = {Oxford University Press},
year = 1999a,
pages = {78-95},
}
@incollection{stal3,
author = {Robert Stalnaker},
title = {On the Representation of Context}
booktitle = {Context and Content},
publisher = {Oxford University Press},
year = 1999b,
pages = {96-114},
}
@ONLINE {stal4,
author = "Robert Stalnaker",
title = "Common Ground",
publisher = "Linguistics and Philosophy 25",
pages = {701-721}
year = "2002",
url = "https://doi.org/10.1023/A:1020867916902https://www.oxfordhandbooks.com/view/10.1093/oxfordhb/9780190675233.001.0001/oxfordhb-9780190675233-e-27",
}
@BOOK{stal1,
title = {Inquiry},
publisher = {MIT Press},
author = {Robert Stalnacker},
year = {1984},
edition = {},
}
しかし、なぜか最初に入れたタイトルの行にエラーメッセージが表示され、
BibTeX: 構文エラー: 「booktitle」が見つかりました。エントリの終了 (「}」または「)」) が必要です (次の「@」にスキップします)
これを修正する方法について何かアイデアはありますか?
答え1
および のエントリでstal2
はstal3
、フィールドの最後にカンマがありませんtitle
。カンマは必須フィールド間の区切りとして使用します。BibTeX はフィールドを終了する信号を探していますtitle
が、キーワード に遭遇しbooktitle
、構文エラー レポートがトリガーされます。
pages
ちなみに、 entry のフィールドの最後にもカンマがありませんstal4
。
補遺year
:エントリstal2
とのフィールドには、さらに別のタイプの構文エラーが潜んでいますstal3
。フィールドは、純粋に数値である場合 (または文字列変数である場合ですが、ここでは適用されません)、または区切り文字なし{...}
で記述できます。問題の 2 つのエントリのフィールドはと です。数字と文字が混在している場合も、エラーが発生します。エラー メッセージが表示されないようにするには、それぞれと と記述します。ただし、これはあまり良い方法ではありません。文書で 1 つまたは両方の出版物を引用するかどうかに関係なく、文字とを 関連の情報にハードコーディングすることになるからです。次のようにというマクロを定義する方がはるかに良いでしょう。" ... "
year
year = 1999a,
year = 1999b,
year = {1999a},
year = {1999b},
a
b
year
\noopsort
\providecommand\noopsort{#1}{}
年フィールドをそれぞれ およびyear = {1999{\noopsort{a}}},
と記述しますyear = {1999{\noopsort{b}}},
。BibTeX は適切な年ラベルを自動的に形成します。