由於 .bst 文件的修改,標題未顯示在參考書目中

由於 .bst 文件的修改,標題未顯示在參考書目中

我已經修改了來自 arXiv 的參考書目樣式文件eprint中的條目hsiam.bst(可用這裡)。更具體地說,我已將該format.eprint函數替換為以下函數:

函數 {format.eprint}
{ eprint 空$
    {“”}
    { “ eprint * “}{arXiv:” eprint * “}” *}
  如果$
}

當我引用以下條目時

@文章{測試石,
  標題 = {範例標題},
  作者={我自己},

  月份 = {八月},

  電子列印 = {2222.2222},
  網址 = {https://arxiv.org/abs/2222.2222}
}

在 MWE 中,如下所示:

\documentclass[paper=a4,fontsize=11pt]{文章}
\usepackage[排序&壓縮,數字]{natbib}
\usepackage{hyperref}
\usepackage{bibentry}
\參考書目風格{hsiam}

\開始{文件}
\nobibliography{參考書目}
\開始{列舉}
\item\bibentry{測試石}
\end{列舉}
\結束{文件}

使用 Bibtex 編譯時出現以下錯誤:

這是 BibTeX,版本 0.99d(MiKTeX 2.9 64 位元) 頂級輔助檔案:main.aux 樣式檔案:hsiam.bst 資料庫檔案 #1:publications.bib 警告 - testone 中的日誌為空 警告 - 空year in testone ptr= 1, stack= {\em Sample Title} ---執行時入口testone 的文字堆疊不為空---文件hsiam.bst 的第1053 行(有1 個錯誤訊息)

我的猜測是我調用了eprint兩次,但我不知道有任何其他方法來獲得所需的結果,應該是這樣的:

M. 我自己,範例標題,可用於arXiv:2222.2222,2015。

感謝您的時間。

答案1

*因此,我找到的解決方案是在第二次調用之前添加一個eprint,具有以下程式碼:

函數 {format.eprint}
{ eprint 空$
    {“”}
    { "可在 \href{http://arxiv.org/abs/" eprint * "}{arXiv: " * eprint * "}" *}
  如果$
}

當編譯之前的MWE時,現在BibTeX的輸出是

這是 BibTeX,版本 0.99d(MiKTeX 2.9 64 位元) 頂級輔助檔案:main.aux 樣式檔案:hsiam.bst 資料庫檔案 #1:biblio.bib

正如所查找的那樣,完全沒有錯誤。

感謝大家的幫忙!

相關內容