In my thesis I would like to have a list of my own publications in
addition to the bibliography. The data for both the list of my own
publications and the bibliography should be taken from the same bibtex
file. I would like to use the IEEEtran style for both lists, but in the
list of publications no numbering of the entries (like [1], [2]...)
should be done:
List of publications
Myself, "Title of my own publication", Journal, Volume, Year.
...
Bibliography
[1] Somebody else, "Title of the article", Journal...
...
In a first attempt I have used the chapterbib and the bibentry packages
which worked well. Each chapter has got its own bibliography, and the
list of publications is just a chapter, in which bibentry is utilized to
extract the publication entries without the numbering.
However, I would prefer to have a common bibliography for all chapters.
I have tried to use the multibib package, using a global bibliography,
and a second one for my "list of own publications", but it looks like I
can't get bibentry to work with multibib. So how could I get rid of the
[1], [2]... numbering?
Do you have any advices how this could be done?
Thanks in advance,
Christian
Hi Christian
I have had a similar problem when inserting in my CV the list of
publications. I needed to have this list printed in reverse order of
the publication date. I managed to do that creating my own
bibliography style with custom-bib
http://groups.google.com/group/comp.text.tex/browse_thread/thread/f35b75a7057a48a4?hl=en
regards
Bogdan
Given the number of theses you'll have to write, why not just do it partly
manually? Or even completely? Have an entirely separate document in which
you produce your list of publications, insert the bbl file into your
thesis file, and edit as required (e.g., get rid of the \bibitem since
they're no longer in a bibliography environment). If there are extra
publication at the last moment, or when revising, just insert them by
hand, and format manually.
--
Timo Nieminen - Home page: http://www.physics.uq.edu.au/people/nieminen/
E-prints: http://eprint.uq.edu.au/view/person/Nieminen,_Timo_A..html
Shrine to Spirits: http://www.users.bigpond.com/timo_nieminen/spirits.html
> However, I would prefer to have a common bibliography for all chapters.
> I have tried to use the multibib package, using a global bibliography,
> and a second one for my "list of own publications", but it looks like I
> can't get bibentry to work with multibib. So how could I get rid of the
> [1], [2]... numbering?
Christian,
Using multibib without bibentry, use \nocite to get the entries into
the author publications bibliography without creating in-text labels:
\newcites{apubs}{Author Publications}
\nociteapubs{my1,my2 ...}
Then, try this code to disable the numbering only for the author
publications bibliography:
\begingroup
\labelsep 0pt % set left indentation
\makeatletter
\def\@biblabel#1{\relax} % turn off biblabels
\makeatother
\bibliographystyleapubs{IEEEtran}
\bibliographyapubs{../IEEEfull,../test,../IEEEexample.bib}
\endgroup
Cheers,
Mike Shell
Hi Mike,
This is exactly what I was looking for!
Since I put my "global" bibliography after the "author publications",
the labels in the global bibliography started with [3]. Now I am using
IEEEtranN for the author publications, and numbering starts with [1] in
the global bibliography. Of course another way would be to use
multibib's resetlabels option, but I guess this would make it impossible
to use additional bibliographies without confusing the reader by having
more than one publications with the same label.
\documentclass{article}
\usepackage{multibib}
\newcites{apubs}{Author Publications}
\begin{document}
\cite{pub1,pub2,pub3}
\nociteapubs{apub1,apub2}
% author publications
\begingroup
\labelsep 0pt % set left indentation
\makeatletter
\def\@biblabel#1{\relax} % turn off biblabels
\makeatother
\bibliographystyleapubs{IEEEtranN}
\bibliographyapubs{mybibfile}
\endgroup
% "global" bibliography
\bibliographystyle{IEEEtran}
\bibliography{mybibfile}
\end{document}
Thanks a lot,
Christian
> Since I put my "global" bibliography after the "author publications",
> the labels in the global bibliography started with [3]. Now I am using
> IEEEtranN for the author publications, and numbering starts with [1] in
> the global bibliography. Of course another way would be to use
> multibib's resetlabels option, but I guess this would make it impossible
> to use additional bibliographies without confusing the reader by having
> more than one publications with the same label.
Christian,
If I understand the problem correctly, I think you can selectively
reset multibib's (or LaTeX's for that matter) counter once just at
the start of the bibliography after the author publications:
\begingroup
\continuouslabelsfalse
% "global" bibliography
\bibliographystyle{IEEEtran}
\bibliography{mybibfile}
\endgroup
I have run across this issue before. There sometimes is a need to
selectively reset the counter on a bibliography-by-bibliography
basis. Although, as you mentioned, one has to ensure that there
is no confusion as far as uniqueness of labels goes.
Cheers,
Mike
Hi Timo,
You are right, and I am quite glad that I have to write only one Ph.D.
thesis :-D But I would like to create some kind of a framework for my
fellow students in our group for writing their theses, something
convenient to start with.
I seems that the suggestion in Michael Shell's posting offers the most
comfortable way, and I will use it, but in the meantime I have written a
little piece of perl code to obtain the list of publications from the
bbl file of a seperate document like described by you.
I do not know much about perl programming, so I guess this is not the
best solution or even false, and may not work for everybody, but it did
for me.
#! /usr/bin/perl
print '\begin{itemize}';
# wait for the first \bibitem{..} and substitute by \item
while(<>) {
if (s/\\bibitem\{.*\}/\\item/) {
print;
last;
}
}
# substitute \bibitem{...} by \item until \end{bibliography}
while(<>) {
if (/^\\end\{thebibliography\}/) {
last;
}
s/\\bibitem\{.*\}/\\item/;
print;
}
print '\end{itemize}';
Cheers,
Christian
> Timo Nieminen wrote:
>
> > Given the number of theses you'll have to write, why not just do it partly
> > manually? Or even completely? Have an entirely separate document in which
> > you produce your list of publications, insert the bbl file into your
> > thesis file, and edit as required (e.g., get rid of the \bibitem since
> > they're no longer in a bibliography environment)
Actually, this is the approach I used for my own dissertation. LOL.
The idea is to use a separate document whose .bbl is then \input
into a local group with a hacked \thebibliography which is just a
normal list and, among other things, redefines \bibitem to be a normal
list \item, etc. This way, no manual editing is required, but one has
to remember to rebuild the authorpubs .bbl file if the list of author
publications ever changes.
Cheers,
Mike
Yes, that's it! Works perfectly!
Thanks again,
Christian
> Have an entirely separate document in which you produce your list of
> publications, insert the bbl file into your thesis file ...
For the record, here is an example of how to do this:
\makeatletter
\newcommand{\mybogusbibitem}[2][1]{\item}
\newenvironment{mythebibliographyunlabeled}[1]
{\list{\relax}%
{\labelsep 0pt
\settowidth\labelwidth{\relax}\relax
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\parsep 0pt\relax
\topsep 8pt plus 2pt minus 4pt\relax
\itemsep 0.5\baselineskip plus 0.2\baselineskip minus 0.1\baselineskip
}\relax
\let\bibitem\mybogusbibitem
\sloppy
\interlinepenalty500
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m}
{\endlist}
\newenvironment{mythebibliographyenumerate}[1]
{\settowidth{\labelwidth}{#1}\relax
\setlength{\leftmargini}{\labelwidth}\relax
\addtolength{\leftmargini}{\labelsep}\relax
\def\@listi{\leftmargin\leftmargini
\parsep 0pt\relax
\topsep 8pt plus 2pt minus 4pt\relax
\itemsep 0.5\baselineskip plus 0.2\baselineskip minus 0.1\baselineskip
}\relax
\let\bibitem\mybogusbibitem
\sloppy
\interlinepenalty500
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m
\enumerate}
{\endenumerate}
\makeatother
.
.
.
\chapter*{Author Publications}
% insert into the table of contents
\addcontentsline{toc}{chapter}{Author Publications}
\markboth{Author Publications}{Author Publications}
\begingroup
% select either no label or enumerated
%
\def\thebibliography#1{\mythebibliographyunlabeled{#1}}
\def\endthebibliography{\endmythebibliographyunlabeled}
%
%\def\thebibliography#1{\mythebibliographyenumerate{#1}}
%\def\endthebibliography{\endmythebibliographyenumerate}
%
\input{mypubs.bbl}
\endgroup
Of course, it can be further refined such as allowing
a star form to select between the two types. Also, some
theses may require attention be given to \baselinestretch
issues.
Cheers,
Mike