
現在、bst ファイルを変更しています。現在直面している問題は、スタイルのセパレーターを変更する方法です。
現時点では、次の出力が得られます。
バディ、ディナ(2010)「集団思考、イラク、そして対テロ戦争:イラクに対する米国の政策転換を説明する」外交政策分析6(4):277-296。
ただし、次の出力が必要です。
バディ、ディナ(2010)「集団思考、イラク、そして対テロ戦争:イラクに対する米国の政策転換の説明」、外交政策分析6(4):277-296。
年号の後にカンマは入れませんが、タイトルの後(および編集された書籍の章では編集者の後)にはカンマを入れます。
bst ファイルのコードは次のとおりです。
FUNCTION {output.nonnull}
{ 's :=
output.state mid.sentence =
{ ", " * write$ }
{ output.state after.block =
%{ add.period$ write$
{ " " * write$
newline$
"\newblock " write$
}
{ output.state before.all =
'write$
{ add.period$ " " * write$ }
if$
}
if$
mid.sentence 'output.state :=
}
if$
s
}
FUNCTION {article}
{ output.bibitem
format.authors "author" output.check
author format.key output
format.date "year" output.check
date.block
format.title quote "title" output.check
new.block
crossref missing$
{
journal
"journal" bibinfo.check
"journal" output.check
add.blank
format.vol.num.pages output
}
{ format.article.crossref output.nonnull
format.pages output
}
if$
new.block
format.note output
fin.entry
}
FUNCTION {format.title}
{ title
duplicate$ empty$ 'skip$
{ "t" change.case$ }
if$
"title" bibinfo.check
}
答え1
私は自分で問題を解決しようとしました。そこで、@article関数を変更して
format.title quote "title" output.check
に
format.title ", " * quote "title" output.check
完全な関数は次のとおりです
FUNCTION {article}
{ output.bibitem
format.authors "author" output.check
author format.key output
format.date "year" output.check
date.block
format.title ", " * quote "title" output.check
new.block
crossref missing$
{
journal
"journal" bibinfo.check
emphasize
"journal" output.check
add.blank
format.vol.num.pages output
}
{ format.article.crossref output.nonnull
format.pages output
}
if$
new.block
format.note output
fin.entry
}
結果は次のようになります。
バーク、ジョン・P.(2005a)「NSC顧問としてのコンドリーザ・ライス:誠実な仲介人としての役割の事例」大統領研究季刊35(3):554-575。
ただし、次のように、カンマを引用符の外側に置きます。
バーク、ジョン・P.(2005a)「NSC顧問としてのコンドリーザ・ライス:誠実な仲介人としての役割の事例」大統領研究季刊35(3):554-575。
どうすればその問題を解決できますか? 引用機能を変更すれば解決できるでしょうか?
FUNCTION {quote}
{ duplicate$ empty$
{ pop$ "" }
{ "`" swap$ * "'" * }
if$
}