2009-12-30 53 views
10

我的首選bibtex風格文件通過作者的姓名首字母引用。然而,有不同的文本應引用不同(例如,Elements Geometrie Algebrique應始終引用爲[EGA])。我知道如何在bibtex輸出的.bbl文件中對此進行修改,但是我必須爲每個文件執行此操作。有沒有辦法從我的.bib文件做到這一點?有沒有辦法覆蓋特定條目的bibtex樣式文件?

+0

您目前使用哪種書目風格? – godbyk 2009-12-30 21:31:29

回答

2

您可以修改.bst程序,以便它查找其他字段,如顯示鍵,並且如果它設置使用,而不是通常。

7

我的首選bibtex風格文件通過作者的姓名首字母引用。然而,有不同的文本,應引用不同的...

我希望我不會爲此發火,但您的首選bibtex樣式文件不會爲您的讀者服務得很好。我的部分工作是審閱論文,像[GKS]這樣的首字母混淆不如像[Guibas,Knuth和Sharir 1990]等完整的作者日期引用。對於一個知識淵博的讀者來說,作者和日期往往不需要參考參考書目。對於一個天真的讀者來說,一組名字更容易記住一組字母,特別是當一個或多個名字可能很熟悉時。這些問題將在例如Chicago Manual of Style中詳細討論,它解釋了從專業文獻引用的正確方法。

因爲我相信你正在解決錯誤的問題,所以我繼續這麼做。儘管我相信你的讀者會很快認識到[EGA],但我希望他們也能認識到(Grothendieck 1960)或(Grothendieck andDieudonné1967)。

我可以通過更改我的.bib文件[修改引用作品的方式]嗎?

如果您想使用任何標準BibTeX樣式,請不要使用。 BibTeX使用世界上最糟糕的編程語言之一,標準程序非常堅定地使用作品的作者或編輯人員來形成引用鍵。如果你真的想這樣做,我建議採用以下步驟:

  1. 複製和修改有點像plainnat.bst文件。這將使您能夠創建一個新的「參考書目風格」。

  2. 創建一個新類型的BibTeX條目,使您可以使用特殊字段指定引用鍵(key是一個流行的選擇)。

  3. 修改calc.label函數以使用新類型的條目做正確的事情。如果你幸運的話,改變calc.label就足以確保東西被正確排序。

  4. 在您的.bib文件中使用您的非標準類型,並在您所有的LaTeX文檔中使用非標準\bibliographystyle{...}

諸神真的不希望你這樣做—也不做你的合作者......

+0

這實際上是芝加哥認可的一個相當常見的約定:cf. CMoS 16.39。所以至少有些神會讓你這樣做。 – 2009-12-31 10:08:07

+1

「BibTeX使用世界上最糟糕的編程語言之一」 - 實際上它不是壞的,但其目的是考慮:大多數.bst文件很容易閱讀。 bibtex的主要問題是,如果你的風格要求你從你的.bib文件中解析條目,那麼證明「世界最糟糕」的理由就是......但是對於這種類型的任務,tex並不令人愉快。 – 2009-12-31 10:13:43

+0

我會避免使用「鍵」來顯示某些內容:我保留諸如key,alternate-key,keys和c這樣的名稱,以便.bib文件處理程序處理這些鍵以影響.bbl文件中的關鍵乳膠用途;其他一些人也這樣做。 – 2009-12-31 10:20:11

0

如果你願意用不同的風格圍兜有辦法指出了這個answer 。使用abstract樣式,將bibtex鍵用作引用鍵。然後,無論如何編輯bib文件中的每個關鍵點。

這種方法的一個直截了當的缺點是,你將不得不編輯你的圍脖文件中的每個項目,但我相信這是一個公平的價格來支付這種靈活性。

我已經看到其他可能的解決方案,涉及natbib或biblatex,但我想避免這些包,因爲我有時使用它們時會遇到編譯問題。

相關問題