2

According to the rules of my university, if an article from some journal was used, it should be separated with //.

Example: Lyness J. N. and Jespersen D. Moderate degree symmetric quadrature rules for the triangle//J. Inst. Math. Appl.

How should I do this? Do I have to change something in *.bst file?

2 Answers2

6

I think that you need to hack plain.bst. Replacing the article function in plain.bst with the following seems to do the trick:

FUNCTION {article}
{ output.bibitem
  format.authors "author" output.check
  new.block
  format.title "title" output.check
  %new.block
  "//" *
  crossref missing$
    { journal emphasize *
      format.vol.num.pages output
      format.date "year" output.check
    }
    { format.article.crossref output.nonnull
      format.pages output
    }
  if$
  new.block
  note output
  fin.entry
}

Personally, I find the bst syntax to be quite painful, but you can read all about it in Patashnik's Designing BibteX files.

All that I have done above is to comment out the new.block line, added "\\" * to put your slashes after the title and then hacked the output of the journal's name so that no punctuation is added. I am sure that there are better ways to do this...

1

The dirty hack

This doesn't involve changing any .bst files, but will most certainly mess with the rest of your bibliography. If we look at the .bbl file created by bibtex we find

\newblock {\em The Journal of Narrative Technique}, ...

Hence we could redefine \em to expand to // em.

% arara: pdflatex
% arara: bibtex
% arara: pdflatex
% arara: pdflatex
\documentclass{article}
\begin{document}
\cite{doody}
{\em Emphasized text}
\let\oldem=\em % save \em
\def\em{//\space\oldem}
\bibliographystyle{plain}
\bibliography{biblatex-examples.bib}
\let\em=\oldem % restore \em
{\em Emphasized text}
\end{document}

enter image description here

Using biblatex

With biblatex everything is easier. We use

\renewbibmacro{in:}{...}

to suppress "In:" before the journal title and

\DeclareFieldFormat[article]{journaltitle}{// \emph{#1}}

to get the two slashes.

% arara: pdflatex
% arara: biber
% arara: pdflatex
% arara: pdflatex
\documentclass{article}
\usepackage{biblatex}
\renewbibmacro{in:}{\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}
\DeclareFieldFormat[article]{journaltitle}{// \emph{#1}}
\addbibresource{biblatex-examples.bib}
\begin{document}
\cite{doody}
\printbibliography
\end{document}

(biblatex displays more fields than bibtex by default.)

enter image description here

Henri Menke
  • 109,596