[Tex/LaTex] How to modify apalike.bst to have a colon (:) instead of period (.) after “author (year)”

apa-stylebibtex

I already modified apalike.bst to some of my needs, but I can't find this one — which part do I have to change to have it include a colon after "author (year)" instead of a period .?

(I am using bibtex but not biblatex.)

Best Answer

apalike.bst adds a period before outputting \newblock. So a way can be changing the function output.year.check into

FUNCTION {output.year.check}
{ year empty$
    { "empty year in " cite$ * warning$ }
    { write$
      " (" year * extra.label * ")\addcolonandeatperiod" *
      mid.sentence 'output.state :=
    }
  if$
}

along with

\makeatletter
\newcommand{\addcolonandeatperiod}{\@ifnextchar.{:\@gobble}\relax}
\makeatother

in your document preamble. There may be more efficient ways.