Como evitar que a referência ao estilo Harvard (agsm) faça com que os URLs da bibliografia se espalhem por duas colunas?

Como evitar que a referência ao estilo Harvard (agsm) faça com que os URLs da bibliografia se espalhem por duas colunas?

Eu gostaria que meu estilo de citação fosse Harvard.

Estou usando o seguinte:

\documentclass[conference]{IEEEtran}
\usepackage[comma]{natbib}
\usepackage{url}
\begin{document}

foo \citep{vitz_history_2016}

\bibliographystyle{IEEEtran}
\bibliography{references}
\end{document}

Citação de exemplo no .bibarquivo:

@online{vitz_history_2016,
    year = {2016},
    title = {History of the Periodic Table},
    url = {https://chem.libretexts.org/Bookshelves/Ancillary_Materials/Exemplars_and_Case_Studies/Exemplars/Culture/History_of_the_Periodic_Table},
    titleaddon = {Chemistry {LibreTexts}},
    author = {Vitz, Ed and Moore, John and Shorb, Justin and Prat-Resina, Xavier and Wendorff, Tim and Hahn, Adam},
    urldate = {2019-11-25},
    date = {2016-05-26},
    langid = {english},
    file = {fname}
}

Em um layout de duas colunas isso produz: Agsm

Normalmente crio documentos usando \cite{author}e \bibliographystyle{IEEEtran}e assim incluindo \usepackage{url}URLs são exibidos corretamente: ieeetran

Gostaria que a mesma referência aparecesse no segundo exemplo, mas usasse uma citação no estilo Harvard como no primeiro exemplo.

Qualquer ajuda seria muito apreciada!

Responder1

Parece haver vários problemas.

  • Como você está usando a IEEEtranclasse document, o uso do IEEEtranestilo bibliografia junto com o natbibpacote deve ser usado exclusivamente em conjunto com os comandos \citee ; \citepambos gerarão chamadas de citação em estilo numérico. \citetnão é realmente utilizável com o IEEEtranestilo bibliográfico.

  • Se você deseja usar o natbibpacote junto com a IEEEtranclasse document, você provavelmente deveria usar o IEEEtranNestilo bibliografia. (O Nin IEEEtranNsignifica natbib...) Com esta configuração, \citee \citepainda produzirá chamadas de estilo numérico, mas \citetagora "funciona" também, no sentido de que cria autor-númerochamadas de citação de estilo. Por mais que tente, você não conseguirá essa configuração para produzir autoria.anoestilo, também conhecido como "estilo harvard" e "estilo agsm", chamadas de citação.

    Dito isso, repetirei o comentário de @moewe: A maioria (todos?!) dos periódicos que exigem o uso da IEEEtranclasse document emprega chamadas de citação em estilo numérico; eles provavelmente rejeitarão submissões que utilizem chamadas de citação no estilo número do autor ou ano do autor.

  • Caso isso não tenha sido um erro de digitação: a sintaxe adequada é \citep{<some_key>}, não \citep(<some_key>).

insira a descrição da imagem aqui

\documentclass[conference]{IEEEtran}

\begin{filecontents}[overwrite]{mybib.bib}
@online{vitz_history_2016,
    year = {2016},
    title = {History of the Periodic Table},
    url = {https://chem.libretexts.org/Bookshelves/Ancillary_Materials/Exemplars_and_Case_Studies/Exemplars/Culture/History_of_the_Periodic_Table},
    titleaddon = {Chemistry {LibreTexts}},
    author = {Vitz, Ed and Moore, John and Shorb, Justin and Prat-Resina, Xavier and Wendorff, Tim and Hahn, Adam},
    urldate = {2019-11-25},
    date = {2016-05-26},
    langid = {english},
    file = {fname}
}
\end{filecontents}

\usepackage[numbers,comma]{natbib}
\bibliographystyle{IEEEtranN} % not 'IEEEtran'
\usepackage{xurl}
\usepackage[colorlinks,allcolors=blue]{hyperref} % just for this example

\begin{document}
foo \citep{vitz_history_2016} % not "\citep(author)"

bar \citet{vitz_history_2016}
\bibliography{mybib}
\end{document}

Termo aditivo: Na verdade, posso reproduzir a string de URL sem quebra de linha de aparência horrível, com subscritos no lugar de sublinhados, mostrado em sua primeira captura de tela se eu substituir \bibliographystyle{IEEEtranN}por \bibliographystyle{agsm}. O agsmestilo é bastante antigo e usa uma macro chamada \harvardurl, que faznãotome as mesmas precauções que \urltoma ao compor strings de URL; essas precauções referem-se a caracteres especiais do TeX, como _e %, que podem ocorrer em uma string de URL. (Muito obrigado a @moewe por apontar isso para mim!)

Se vocêdeveusar o agsmestilo bibliografia, então há duas maneiras de proceder: Primeiro, você pode fornecer as instruções

\renewcommand\harvardurl{\textbf{URL:} \url}

depois \bibliographystyle{agsm}. Em segundo lugar, você pode mudar

url = {https://chem.libretexts.org/Bookshelves/Ancillary_Materials/Exemplars_and_Case_Studies/Exemplars/Culture/History_of_the_Periodic_Table},

para

url = {\url{https://chem.libretexts.org/Bookshelves/Ancillary_Materials/Exemplars_and_Case_Studies/Exemplars/Culture/History_of_the_Periodic_Table}}, 

Claro, ambos os métodos assumem que você carregou um pacote adequado - urle xurlvem à mente - que define uma \urlmacro "real".

Aliás, se desejar usar o agsmestilo bibliografia, você deverá carregar o har2natpacote, não o natbibpacote diretamente. Por que? O agsmestilo babador faz parte doHarvardpacote de gerenciamento de citações, que vem com alguns comandos especializados. O har2natpacote (a) carrega o natbibpacote e (b) "traduz" as harvardmacros específicas em macros reconhecidas pelo natbibpacote. Isto é especialmente útil se você deseja usar o hyperrefpacote no seu documento: hyperrefé totalmente compatível com o natbibpacote, mas nem tanto com o harvardpacote.

insira a descrição da imagem aqui

\documentclass[conference]{IEEEtran}

\begin{filecontents}[overwrite]{mybib.bib}
@online{vitz_history_2016,
    year = {2016},
    title = {History of the Periodic Table},
    url = {\url{https://chem.libretexts.org/Bookshelves/Ancillary_Materials/Exemplars_and_Case_Studies/Exemplars/Culture/History_of_the_Periodic_Table}},
    titleaddon = {Chemistry {LibreTexts}},
    author = {Vitz, Ed and Moore, John and Shorb, Justin and Prat-Resina, Xavier and Wendorff, Tim and Hahn, Adam},
    urldate = {2019-11-25},
    date = {2016-05-26},
    langid = {english},
    file = {fname}
}
\end{filecontents}

\usepackage{har2nat} % not 'natbib' directly
\bibliographystyle{agsm}
\usepackage{xurl}
\usepackage[colorlinks,allcolors=blue]{hyperref} 

\begin{document}
foo \citep{vitz_history_2016} % not "\citep(author)"

bar \citet{vitz_history_2016}
\bibliography{mybib}
\end{document}

informação relacionada