%20a%20Editores%20(en%20cursiva)%20en%20estilo%20BibTeX%20similar%20a%20apalike%20.png)
Estoy tratando de hacer que BibTeX se ajuste a los estándares de una revista en particular (son bastante similares a APA). Creé un archivo .bst personalizado usando el encantador paquete custom-bib, que funcionó muy bien excepto por dos cosas.
Para un libro sin autores sino editores, mi archivo .bst produce
Cook, E. y Kariukstis, L. (editores), 1990.Métodos de Dendrocronología: Aplicaciones en las Ciencias Ambientales, Editorial académica Kluwer
pero quiero que produzca
Cook, E. y Kariukstis, L. (Editores), 1990. Métodos de dendrocronología: aplicaciones en las ciencias ambientales, Kluwer Academic Publishers
Tenga en cuenta la diferencia en (Editores) y la falta de cursiva en el título. Entiendo que esto no es reproducible sin el archivo .bst real, pero espero que alguien pueda indicarme la dirección correcta. Quizás las siguientes funciones sean relevantes. La sintaxis BST me resulta bastante ininteligible.
FUNCTION {bbl.editors}
{ "editors" }
FUNCTION {format.editors}
{editor "editor" format.names duplicate$ empty$ 'skip$
{
" " *
get.bbl.editor
"(" swap$ * ")" *
*
}
if$
}
FUNCTION {format.names}
{ 'bibinfo :=
duplicate$ empty$ 'skip$ {
's :=
"" 't :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr
"{vv~}{ll}{, jj}{, f{.}.}"
format.name$
bibinfo bibinfo.check
't :=
nameptr #1 >
{
namesleft #1 >
{ ", " * t * }
{
s nameptr "{ll}" format.name$ duplicate$ "others" =
{ 't := }
{ pop$ }
if$
numnames #2 >
{ "," * }
'skip$
if$
t "others" =
{
" " * bbl.etal *
}
{
bbl.and
space.word * t *
}
if$
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
} if$
}