
Estou escrevendo minha tese de doutorado, mas fico frustrado quando tento produzir o formato de referência conforme exigido pela minha escola. É exigido a seguir (apenas os três tipos a seguir são necessários em minha tese),
Diário [J]
Livro [M]
Outros requerimentos:
- Múltiplos autores: quando o número de autores for maior que 3, manter os três primeiros e usar “et al” para os demais autores.
- Classificação: por aparência.
Minha pergunta é que tipo de estilo de bibliografia é o acima?
e se não houver nenhum dos estilos bibliográficos existentes adequados, como devo construir esse estilo do zero?
.bib
:
@article{brauner91,
author = {Brauner, N.},
title = {Vapour absorption into falling film},
journal = {ASME J},
year = {1991},
volume = {34},
pages = {76-82},
number = {3}
}
@book{baehr1994,
title={Heat and mass transfer},
author={Baehr, H. D.},
year={1994},
page={221}
publisher={Berlin:Springer-Verlag}
}
@inproceedings{leiner1989,
year = {1989},
pages={68--71},
author = {Leiner, A.},
title = {Optical techniques for heat transfer measurements},
booktitle = { COLLINS W. Proc Int Conf on Energy and Environment},
publisher={New York: Academic Press}
}
Responder1
Tente o seguinte
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[style=numeric,backend=biber,giveninits=true,sorting=none,maxnames=3,minnames=3]{biblatex}
\addbibresource{biblatex-examples.bib}
\DeclareNameAlias{default}{family-given}
\renewcommand*{\revsdnamepunct}{}
\renewrobustcmd*{\bibinitperiod}{}
\renewcommand*{\finalnamedelim}{\multinamedelim}
\DeclareFieldFormat*{title}{#1}
\DeclareFieldFormat*{journaltitle}{#1\isdot}
\DeclareFieldFormat*{issuetitle}{#1}
\DeclareFieldFormat*{maintitle}{#1}
\DeclareFieldFormat*{booktitle}{#1}
\newbibmacro*{title}{%
\ifboolexpr{
test {\iffieldundef{title}}
and
test {\iffieldundef{subtitle}}
}
{}
{\printtext[title]{%
\printfield[titlecase]{title}%
\setunit{\subtitlepunct}%
\printfield[titlecase]{subtitle}}%
\ifentrytype{article}{\setunit{}\printtext{[A]}}{}
\ifentrytype{book}{\setunit{}\printtext{[B]}}{}%
\ifentrytype{inproceedings}{\setunit{}\printtext{[C]}}{}
\newunit}%
\printfield{titleaddon}}
\renewbibmacro*{in:}{\ifentrytype{article}{}{\printtext{//}}}
\renewbibmacro*{journal+issuetitle}{%
\usebibmacro{journal}%
\iffieldundef{series}
{}
{\newunit
\printfield{series}}%
\setunit{\addcomma\space}%
\printfield{issue}%
\setunit{\addcomma\space}%
\usebibmacro{date}
\setunit{\addcolon\space}%
\usebibmacro{issue}%
\setunit{\addcomma\space}%
\usebibmacro{volume+number+eid}%
\setunit{\addspace}%
\newunit}
\DeclareFieldFormat[article,periodical]{number}{\mkbibparens{#1}}
\renewbibmacro*{volume+number+eid}{%
\printfield{volume}%
\printfield{number}%
\setunit{\addcomma\space}%
\printfield{eid}}
\DeclareFieldFormat{pages}{#1}
\DeclareFieldFormat{postnote}{#1}
\DeclareFieldFormat{multipostnote}{#1}
\renewcommand*{\bibpagespunct}{\addcolon\addspace}
\renewcommand{\postnotedelim}{%
\iffieldpages{postnote}
{\addcolon\space}
{\addspace}}
\begin{document}
\cite{sigfridsson,brauner91,baehr1994,leiner1989,aksin}
\printbibliography
\end{document}
A maior parte disso é bastante padrão e pode ser encontrada emDiretrizes para personalizar estilos biblatex,biblatex: remova vírgulas entre sobrenomes e nomes na bibliografia,Dois pontos em vez de “p.” em Biblatex autor ano-comp,Biblatex: Não \postnotedelim para citações que não sejam numerais,biblatex: parênteses em torno do número do volume de um artigo
Os requisitos estranhos do seu estilo foram a indicação do tipo de entrada após o título, pois nós como o separador "//" para "in", eles são implementados via
\renewbibmacro*{title}{%
\ifboolexpr{
test {\iffieldundef{title}}
and
test {\iffieldundef{subtitle}}
}
{}
{\printtext[title]{%
\printfield[titlecase]{title}%
\setunit{\subtitlepunct}%
\printfield[titlecase]{subtitle}}%
\ifentrytype{article}{\setunit{}\printtext{[A]}}{}
\ifentrytype{book}{\setunit{}\printtext{[B]}}{}%
\ifentrytype{inproceedings}{\setunit{}\printtext{[C]}}{}
\newunit}%
\printfield{titleaddon}}
\renewbibmacro*{in:}{\ifentrytype{article}{}{\printtext{//}}}
o último, é claro, segue o padrão geral deSuprimir “In:” biblatex.