如何在 bst 檔案中的引用卷後面加上逗號

如何在 bst 檔案中的引用卷後面加上逗號

我已經使用 makebst 創建了一個新的 bst 文件,但我想對其進行一項更改,但不知道如何進行。

目前的bst建立引用如下:

在此輸入影像描述

但是,我需要在卷號後面加上一個逗號,在本例中為「41」。所以應該是

高分子工程與科學,41, 1471, 2001。

看來我需要修改該format.vol.num.pages功能,但我不知道在哪裡插入什麼程式碼以允許進行此調整。

FUNCTION {format.vol.num.pages}
{ volume field.or.null
  duplicate$ empty$ 'skip$
    {
      "volume" bibinfo.check
    }
  if$
  eid empty$
    { format.journal.pages }
    { format.journal.eid }
  if$
}

我不了解 bst 檔案語法,如果此函數沒有足夠的資訊來應用適當的修改,請告訴我。

謝謝。

答案1

我假設您仍然擁有該makebst實用程式與 .bst 檔案一起建立的 .dbj 檔案。

假設 dbj 和 bst 檔案的完整檔案名稱分別為test.dbjtest.bst

大約在 dbj 檔案的中間,您應該找到以下程式碼區塊:

%VOLUME PUNCTUATION:
%   %: (def) Volume with colon
% volp-sp,%: Volume with colon and space
% volp-semi,%: Volume with semi-colon
  volp-com,%: Volume with comma
% volp-blk,%: Volume with blank

嗯,這個應該makebst如果您已成功指示公用程式在卷號後面放置逗號,則為程式碼區塊。然而,我懷疑您選擇了最後一個選項——“b”代表“空白”——而不是“c”代表“逗號”。如果我的預感是正確的,我建議您註解掉程式碼區塊中的最後一行,並取消註解倒數第二行。目標應該是模仿上面顯示的螢幕截圖的外觀。

然後,儲存 dbj 檔案並運行pdflatex test.dbj以重新建立test.bst.


以下使用test.bst我使用該實用程式創建的名為的文件,我在其中小心地為問題“音量標點符號”makebst選擇了答案(“逗號”):c

在此輸入影像描述

在此輸入影像描述

\documentclass{article} % or some other suitable document class

%% Create a sample bib file "on the fly"
\begin{filecontents}[overwrite]{mybib.bib}
@article{gst:2001,
  author  = "Jayamol George and M. S. Sreekala and Sabu A. Thomas",
  title   = "A review on interface modification and 
             characterization of natural fiber 
             reinforced plastic composites",
  journal = "Polymer Engineering and Science",
  volume  = 41,
  number  = 9,
  pages   = "1471--1485",
  year    = 2001,
}
\end{filecontents}

\usepackage[a4paper,margin=2.5cm]{geometry} % set page parameters as needed
\usepackage[numbers]{natbib}
\bibliographystyle{test} % <-- newly created bst file

\begin{document}
\noindent
\cite{gst:2001}
\bibliography{mybib}
\end{document}

相關內容