
Tenho uma dúvida em relação à bibliografia. Não sou um profissional de LaTeX. Não importa para mim no momento se tenho que usar bibliografia incorporada ou bobtex. A questão é: como posso realizar a formatação necessária. Aqui está um exemplo de membro da bibliografia:
[1] Doe J.: How to format bibliography?. JohnDoe limited, Warsaw, 2015.
Como você pode ver, o nome do autor é colocado, depois vem um ponto e dois pontos. O título deve estar em itálico. Depois, depois de comas editora, cidade e ano. Eu apreciaria toda ajuda em relação a isso!
Responder1
Para conseguir o que você queria, você pode modificar outphys.bstarquivo da seguinte forma:
Primeiro, você deve substituir
FUNCTION {output.nonnull}
{ 's :=
output.state mid.sentence =
{ ", " * write$ }
{ output.state after.quote =
{ " " * write$ }
{ output.state after.block =
{ add.period$ write$
newline$
"\newblock " write$
}
{ output.state before.all =
'write$
{ output.state after.quoted.block =
{ write$
newline$
"\newblock " write$
}
{ add.period$ " " * write$ }
if$
}
if$
}
if$
}
if$
mid.sentence 'output.state :=
}
if$
s
}
por (isso substituirá a vírgula após o último autor por dois pontos):
FUNCTION {output.nonnull}
{ 's :=
output.state mid.sentence =
{ ": " * write$ } % Modified
{ output.state after.quote =
{ " " * write$ } % between Title and journal
{ output.state after.block =
{ add.period$ write$
newline$
"\newblock " write$
}
{ output.state before.all =
'write$
{ output.state after.quoted.block =
{ write$
newline$
"\newblock " write$
}
{ add.period$ " " * write$ }
if$
}
if$
}
if$
}
if$
mid.sentence 'output.state :=
}
if$
s
}
E você também deve substituir o código:
FUNCTION {format.names}
{ 's :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := % Modified
nameptr #1 >
{ namesleft #1 >
{ ", " * t * }
{ numnames #2 >
{ "," * }
'skip$
if$
t "others" =
{ " {\em et~al.}" * }
{ string.and * t * }
if$
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
por (Isso mudará o formato do nome para {jj.~}{vv~}{ll}{ f}
, onde: jj
representa o sufixo, por exemplo, Sr, vv
para von part, ll
para sobrenome e f
para a primeira letra do nome):
FUNCTION {format.names}
{ 's :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr "{jj.~}{vv~}{ll}{ f}" format.name$ 't :=
nameptr #1 >
{ namesleft #1 >
{ ", " * t * }
{ numnames #2 >
{ "," * } % { "," * }
'skip$
if$
t "others" =
{ " {\em et~al.}" * }
{ string.and * t * }
if$
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}
Para fazer o título de um artigo italic
e retirar as aspas que o cercam é necessário substituir o código:
FUNCTION {format.title}
{ title empty$
{ "" }
{ "``" title "t" change.case$ * ",''" * }
if$
}
FUNCTION {format.title.p}
{ title empty$
{ "" }
{ "``" title "t" change.case$ * ".''" * }
if$
}
pelo código:
FUNCTION {format.title}
{ title empty$
{ "" }
{ "" title emphasize "t" change.case$ * "." * } % Modified
if$
}
FUNCTION {format.title.p}
{ title empty$
{ "" }
{ "``" title "t" change.case$ * " ''." * }
if$
}
Para evitar que o "nome do diário" seja substituído, italic
você deve substituí-lo
FUNCTION {format.journal}
{ journal missing$
{ "" }
{journal emphasize " " *
format.volume *
format.number *
format.date.paren *
format.pages.nopp *
}
if$
}
por
FUNCTION {format.journal}
{ journal missing$
{ "" }
{journal " " * % Modified
format.volume *
format.number *
format.date.paren *
format.pages.nopp *
}
if$
}
AMWE:
\documentclass{article}
\begin{filecontents*}{test.bib}
@book{Albuquerque2015,
address = {Cham},
author = {Albuquerque, Ulysses Paulino},
doi = {10.1007/978-3-319-06517-5},
isbn = {978-3-319-06516-8},
pages = {67},
publisher = {Springer International Publishing},
title = {{Speaking in Public About Science}},
year = {2015}
}
@article{B,
author = {AuthorA, A. and AuthorB, B. and AuthorC, C.},
journal = {Journal of Physics},
pages = {1233},
title = {{Title of the paper}},
volume = {567},
year = {2016}
}
\end{filecontents*}
\begin{document}
~\nocite{*}
%Bibleography
\bibliographystyle{utphys}
\bibliography{test}
\end{document}
Dá:
Atualizar:Para que haja um ponto após os nomes abreviados e para excluir and
antes do sobrenome, você FUNCTION {format.names}
deve ser substituído por:
FUNCTION {format.names}
{ 's :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr "{jj.~}{vv~}{ll}{ f.}" format.name$ 't :=
nameptr #1 >
{ namesleft #1 >
{ ", " * t * }
{ numnames #2 >
{ ", " * } % { "," * }
'skip$
if$
t "others" =
{ " {\em et~al.}" * }
{ t * }
if$
}
if$
}
't
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
}