2

I need to remove the dots after the names of the journals in the references of my paper. I am using the vancouver style file.

My minimum working example (MWE) looks like this:

\documentclass[10pt,a4paper, titlepage]{scrartcl}
\usepackage[comma, super]{natbib}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@article{baum2014,
Author = {Baum, KT and Desai, A and Field, J and Miller, LE and Rausch, J and Beebe, DW},
Journal = {J Child Psychol Psychiatry},
Number = {2},
Pages = {180--190},
Title = {Sleep restriction worsens mood and emotion regulation in adolescents},
Year = {2014}}
\end{filecontents*}

\begin{document}

And here, I am citing the article \cite{baum2014}.

\bibliographystyle{vancouver}

\makeatletter
\renewcommand\@biblabel[1]{#1.}
\makeatother

\bibliography{my_bibliography}

\end{document}

My output looks like this:

enter image description here

I want to get rid of the dot after the journal name.

I think, I can do this by modifying the vancouver.bst file. However, I am not very familiar with the style file codes. Any help will be appreciated.

| improve this question | | | | |
  • Welcome to TeX.SX! Please help us to help you and add a minimal working example (MWE) that illustrates your problem. It will be much easier for us to reproduce your situation and find out what the issue is when we see compilable code, starting with \documentclass{...} and ending with \end{document}. – cfr Feb 14 '15 at 3:45
  • Thanks a lot! I have just edited my entry by adding one. – lyolya Feb 14 '15 at 6:57
  • @lyolya: vancouver1.bst or vancouver.bst? – Werner Feb 14 '15 at 7:12
  • @Werner: I copied and renamed the file to introduce modifications and not mess with the original file. – lyolya Feb 14 '15 at 7:42
2

I was struggling with this same problem and couldn't find the modifications mentioned in the comments above, so I'm posting the solution that I eventually arrived at after some trial and error.

Here's the original code block from vancouver.bst being modified:

% urlbst
FUNCTION {output.nonnull.original}
{ 's :=
  output.state mid.sentence =
    { ". " * write$ }
    { output.state after.block =
        { add.period$ write$
          newline$
          "\newblock " write$
        }
        { output.state before.all =
            'write$
            { add.period$ " " * write$ }
          if$
        }
      if$
      mid.sentence 'output.state :=
    }
  if$
  s
}

I replaced the second add.period$ with add.blank, and then moved the declaration of add.blank up from its original location at lines 251-253 to precede this function. The final version looks like this:

FUNCTION {add.blank}  % moved up from below
{  " " * before.all 'output.state :=
}

% urlbst
FUNCTION {output.nonnull.original}
{ 's :=
  output.state mid.sentence =
    { ". " * write$ }
    { output.state after.block =
        { add.period$ write$
          newline$
          "\newblock " write$
        }
        { output.state before.all =
            'write$
            { add.blank " " * write$ }  % replaced add.period$
          if$
        }
      if$
      mid.sentence 'output.state :=
    }
  if$
  s
}
| improve this answer | | | | |
  • Welcome, remember not to modify the original file, but a copy with a different name. And the changes clearly marked within the file. – Johannes_B Mar 19 '18 at 15:04
  • Edited above to mark changes. I did make a copy with a different name as per license, thanks. – Art Poon Mar 19 '18 at 15:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.