tags:

views:

478

answers:

4

I'm using LaTeX and BibTeX for an article, and I want to able to cite the title of an article I reference. What is the command to do this?

I'm using \bibliographystyle{chicago} and it does not appear to be \citeT{}, \citetitle{} or \citeTitle{}

Thanks!

+5  A: 

Just type in the title. Even natbib, the most powerful widespread BibTeX package, is not powerful enough to do what you want out of the box. Trying to get BibTeX to extract the title for you, by means of a LateX command, is possible, but it would require that you

  1. Design a new format for bibliography items that is incompatible with existing formats.
  2. Write your own custom .bst file, using the very strange postfix language that is used only by BibTeX, to be compatible with your new format.
  3. Write a new LaTeX command to pull the title information out of the new format.

Speaking as someone who has written several custom bst files as well as a replacement for BibTeX, it's just not worth fooling with. After all, if you are citing the paper, you probably know the title anyway.


EDIT: If you have to do this with multiple papers, I would try to cheat. Extend the bst file so that it writes into the bbl file a command that writes into the aux file the title associated with each bibkey. You can model the bbl command on \label and the actual title-citing command on \ref.

Norman Ramsey
Thanks Norman - it's true, I do know the title, but I am trying to generate a specific type of document where I can refer to the titles (and there are currently 20 references). I did find a .bst file-maker here: http://www.andy-roberts.net/misc/latex/latextutorial3.html
celenius
@celenius: In this case, I don't see that you have any choice but to code up something yourself. (The bst maker is good work, but that particular set of functions has pretty much been superseded by `natbib`.) You could start from bibtex, which is painful, or you could start from nbibtex, which is also painful, but in different ways.
Norman Ramsey
I don't quite follow what you mean by 'extending the bst file'. I think I'm out of my depth with regard to coding this, so will just copy/paste the titles. Thanks for your advice.
celenius
My one experience hacking bst files (to let me use bibtext to generate lists of references for my CV) was surprisingly painful given the very minor ways I needed to modify an existing style.
dmckee
@dmckee: Amen, brother!
Norman Ramsey
Maybe biblatex will make this possible?
Damien Pollet
+2  A: 

@Norman, and the various commenters, are correct in that it would be difficult to do this with bibtex and other tools. But, there is an alternative. Biblatex does allow this through the command \citetitle. Also, if you really want to, the formatting drivers in biblatex are easily readable and modifiable, but only if you feel the need. Unfortunately, it is not part of any distribution, yet, so it has to be downloaded and installed.

rcollyer
Great - thanks!
celenius
A: 

This is how I solve the title issue for cited papers:

In the preamble

include Natbib:

\usepackage[sort&compress]{natbib}

If you want to cite a TITLE instead of an author in the text you define the title like this in the preamble:

\defcitealias{Weiser1996designingcalm}{Designing Calm Technology}

Note: You need to have a bibtex item (for the title ''Designing Calm Technology'') with the key {Weiser1996designingcalm}.

In the paper where you want to write the cited paper's title

\citetalias{Weiser1996designingcalm}

this results in => Designing Calm Technology (i.e. the text you specified with the \defcitealias command above)

or

\citepalias{Weiser1996designingcalm}

that results in => (Designing Calm Technology) (i.e. title with parenthesis)

Anders
A: 

Thanks to Anders for the hint. \defcitealias seems to be the way to go.

Bibtex produces a .bbl file which contains the bibliography entries. something like that

\bibitem[\protect\citeauthoryear{Andrienko
  {\itshape{et~al.}}}{2003}]{Andrienko2003}
Andrienko, G., Andrienko, N., and Voss, H., 2003. {GIS for Everyone: The
  CommonGIS Project and Beyond}. {\itshape {In}}: {\itshape {Maps and the
  Internet}}.,  131--146  Elsevier.

I use Eclipse, which is free and that you may already have to apply regular expressions in this file when needed. '\R' acts as platform independent line delimiter. Here is an example of multi-line search:

search:

\\bibitem.*(\R.*)?\R?\{([^{]*)\}\R^[^\\].*\d\d\d\d\.\s([^\.]*\R?[^\.]*)\R?.*\R?.*

and replace:

\\defcitealias{$2}{$3}

(For myself I use \\bibitem.*(\R.*)?\R?\{([^{]*)\}$\R^([^\\].*[^\}]$\R.*$\R.*) to get all the item text)

Et produces a series of \defcitealias that can be copypasted elsewhere:

\defcitealias{Andrienko2003}{{GIS for Everyone: The
  CommonGIS Project and Beyond}}

Finally, this can be used to build a custom command such as:

\newcommand{\MyCite}[1]{\citet*{#1}. \citetalias{#1}.}

Used as \MyCite{Andrienko2003} and producing: Andrienko et al. (2003). GIS for Everyone: The CommonGIS Project and Beyond.

Vladtn