Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I am using natbib for referencing. My current format is "Author, Title, Journal, Vol-pp, Year". What change should I make to bring year right after the author as in "Author, Year, Title, Journal, Vol-pp"?

share|improve this question
2  
What \bibliographystyle do you use, and what (if any) natbib package options? –  lockstep Aug 30 '11 at 11:21
    
I use this \bibliographystyle{unsrtnat} and \usepackage[square,numbers,comma,sort&compress]{natbib} –  gamahuri Aug 30 '11 at 13:39
add comment

2 Answers

up vote 1 down vote accepted

After some pondering, I don't think I'll succeed in hacking natbib internals. As an alternative, you could switch to biblatex. In the following example, I have disabled sorting, combined the numeric-comp citestyle with the authoryear bibstyle, added a label to this bibstyle and changed some other settings to mimic the natbib output. (This may need further tweaking.)

\documentclass{article}

\usepackage[sorting=none,citestyle=numeric-comp,bibstyle=authoryear]{biblatex}

\DeclareFieldFormat{bibentrysetcount}{\mkbibparens{\mknumalph{#1}}}
\DeclareFieldFormat{labelnumberwidth}{\mkbibbrackets{#1}}

\defbibenvironment{bibliography}
  {\list
     {\printtext[labelnumberwidth]{%
    \printfield{prefixnumber}%
    \printfield{labelnumber}}}
     {\setlength{\labelwidth}{\labelnumberwidth}%
      \setlength{\leftmargin}{\labelwidth}%
      \setlength{\labelsep}{\biblabelsep}%
      \addtolength{\leftmargin}{\labelsep}%
      \setlength{\itemsep}{\bibitemsep}%
      \setlength{\parsep}{\bibparsep}}%
      \renewcommand*{\makelabel}[1]{\hss##1}}
  {\endlist}
  {\item}

\renewbibmacro{in:}{%
  \ifentrytype{article}{}{%
  \printtext{\bibstring{in}\intitlepunct}}}

\renewcommand*{\newunitpunct}{\addcomma\space}

% The following hack only works for some values of the "mergedate" option
\renewbibmacro*{date+extrayear}{%
  \iffieldundef{year}{%
    }{%
    \addcomma\space
    \printtext{\printdateextra}%
  }%
}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@article{Bli74,
  author = {Blinder, Alan S.},
  year = {1974},
  title = {The economics of brushing teeth},
  journaltitle = {Journal of Political Economy},
  volume = {82},
  number = {4},
  pages = {887--891},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

\textcite{Bli74}

\printbibliography

\end{document}
share|improve this answer
add comment

The bibliography style you describe is fairly common in economics and finance journals. I recommend you check out the style file jf.bst (short for "Journal of Finance") located at http://www.ivo-welch.info/computers/bstfiles/. (Professor Welch lists many more bst files on this site.) If all else fails, you could always run the program makebst.tex through LaTeX to build your own bst file interactively. If the file makebst.tex isn't already on your computer system, you can obtain the latest version of this file from http://www.ctan.org/tex-archive/macros/latex/contrib/custom-bib/.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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