JabRef設定の「BibTeX鍵の生成」タブでは、BibTeXラベルの自動生成に使用されるフィールドを設定することができます。パターンは、標準的な項目型それぞれに対して設定することができます。
パターンには、特定の項目フィールドを
フィールド中の特定部分を抜き出す特殊フィールドマーカーがいくつか用意されています。これらを下記に列挙します。追加したい特殊フィールドマーカーがありましたら、ぜひお知らせください。
特殊フィールドマーカー
auth
]: 第1著者の姓authors
]: 全著者の姓authorLast
]: 末尾著者の姓authorsN
]: N人めの著者までの姓。それよりも多い著者がいる場合は、その後に"EtAl"を付けます。authorsAlpha
]: BibTeXスタイル「alpha」に対応します。著者1名の時:姓の最初の3文字。著者2〜4名:姓の最初の文字を繋げたもの。著者5名以上:最初の著者3名の最初の文字を繋げ、最後に「+」を付けたもの。authIniN
]: 各著者の姓の頭部最大N文字。authorIni
]: 第1著者の姓の最初5文字と、残りの著者の姓の頭文字。authN
]: 第1著者の姓の頭部N文字。authN_M
]: M番目の著者の姓の頭部N文字。auth.auth.ea
]: 最初の著者2名の姓と、3名以上著者がいる時には「.ea」を追加。auth.etal
]: 第1著者の姓の後に、著者が2名の時は第2著者の姓、著者が3名以上の時は「.etal」。authshort
]: 著者1名の時はその姓、著者2名以上の時は、3名までの著者の姓の最初の文字。4名以上の著者がいる時には、その後に+文字。《註》(編集書籍など)著者がいない場合には、上記の[auth...]
マーカーはすべて、編者を(ある場合には)代わりに使用します。したがって、著者のいない書籍の編者は、ラベル生成用には著者として取り扱われます。この挙動を望まない、即ち著者がいない場合は何も出力しないマーカーが必要な場合には、上記のコードにおいてauth
の代わりにpureauth
を使用してください。例:[pureauth]
や[pureauthors3]
など。
edtr
]: 第1編者の姓edtrIniN
]: 各編者の姓の頭部N文字以内editors
]: 全編者の姓editorLast
]: 最後の編者の姓editorIni
]: 第1編者の姓の頭部5文字と、残りの編者の姓の頭文字edtrN
]: 第1編者の頭部N文字edtrN_M
]: 第M編者の頭部N文字edtr.edtr.ea
]: 最初の2編者の姓と、3名以上の場合は「.ea」を追加。edtrshort
]: 編者1名の時はその姓、編者2名以上の時は、3名までの編者の姓の最初の文字。4名以上の編者がいる時には、その後に+文字。firstpage
]: 発行物の最初のページ番号(注意:bibtexは7,41,73--97
あるいは43+
という表記をするので、pagesフィールド中の最小のページ番号を返します)keywordN
]: "keywords"フィールドのN番目のキーワード。キーワードがコンマかセミコロンで区切られていると仮定します。lastpage
]: 発行物の最後のページ(firstpage
の註を参照)shorttitle
]: タイトルの最初の3単語shortyear
]: 出版年の下2桁veryshorttitle
]: タイトルの最初の単語。「the」「a」「an」を除く。フィールド名(もしくは上記の準フィールド名)には、1つ以上の修正辞を後ろに付けることができます。修正辞は記述順に適用されます。
volume
フィールドが設定されていれば、それを返し、設定されていなければ、unknownを返します。
ある項目型に対して鍵パターンを定義していない場合には、既定鍵パターンが使われます。既定パターンは変更することができ、設定ダイアログの鍵パターンセクションの項目型一覧の上で設定します。
既定鍵パターンは[auth][year]となっており、これはYared1998
のような鍵を生成します。現在のデータベース中で鍵が一意でない場合には、鍵が一意になるようにa-zのうち1文字を付け加えます。したがって、ラベルは以下のような形になります。
Yared1998
Yared1998a
Yared1998b
鍵パターンを適用して鍵を生成した後、鍵生成機構に特定の正規表現を検索させ、それを文字列で置換することができます。正規表現文字列と置換文字列は、鍵パターン一覧の下にあるテキストフィールドに入力します。置換文字列が空の場合、正規表現に一致した文字列は、生成された鍵から削除されます。例えば、置換対象に\p{Punct}
あるいは[:/%]
を入れ、置換文字列を空にした場合、鍵から不必要な文字を取り除くことができます。これは、BibTeX鍵にしたがってPDFの名前を付ける時便利です。