makebst を使用して新しい bst ファイルを作成しましたが、その中に 1 つの変更を加えたいのですが、方法がわかりません。
現在の 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.dbj
と であると仮定しますtest.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
。ただし、最後のオプション (「カンマ」の「c」ではなく、「空白」の「b」) を選択したのではないかと思います。私の直感が正しければ、コード チャンクの最後の行をコメント アウトし、最後から 2 番目の行のコメントを解除することをお勧めします。目標は、上記のスクリーンショットの外観を模倣することです。
次に、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}