Ich möchte zwischen dem Titel und dem Inhalt der Bibliografie einen Text schreiben.
Ich habe versucht, mit zu lösendiese Lösungaber es funktioniert nicht mit dem Multibib-Paket. Danke.
% arara: xelatex
% arara: bibtex: { files: [ main, B , A ] }
% arara: xelatex
% arara: xelatex
% arara: clean1
\documentclass{report}
\usepackage{etoolbox}
\newcommand{\bibpreface}[1]{\patchcmd{\thebibliography}{\list}{#1\list}{}{}}
\usepackage[resetlabels,labeled]{multibib}
\usepackage{xepersian}
\settextfont{XB Niloofar}
\newcommand{\ReferenceDocuments}{\rl{مستندات مرجع}}
\newcommand{\RelevantDocumentation}{\rl{مستندات ذیربط}}
\newcites{A,B}{\ReferenceDocuments%
,
\RelevantDocumentation}
\begin{document}
یک استناد به مستندات مرجع
\cite{bb}
یک استناد به مستندات ذیربط
\citeA{aa}
یک استناد به مراجع اصلی
\citeA{cc}
یک استناد دیگر
\citeB{dd}
\renewcommand{\refname}{\rl{مراجع}}
\bibpreface{مقداری متن قبل از محتویات\\}
\bibliographystyle{plain-fa}
\bibliography{lit}
\bibliographystyleA{plain}
\bibliographyA{lit}
\bibliographystyleB{plain}
\bibliographyB{lit}
\end{document}
Und lit.bib
:
@Article{aa,
author = {Author, A.},
title = {Title},
journal = {Journal},
year = 2000
}
@ARTICLE{bb,
AUTHOR = {واحدی, مصطفی},
TITLE = {درختان پوشای کمینه دورنگی مسطح},
JOURNAL = {مجله فارسی نمونه},
VOLUME = {1},
YEAR = {1387},
NUMBER = {2},
MONTH = {آبان},
PAGES = {22-30},
LANGUAGE = {Persian}
}
@ARTICLE{dd,
AUTHOR = {بهبودیفام, حسین},
TITLE = {یک عنوان درست و درمون},
JOURNAL = {مجله فارسی نمونه},
VOLUME = {1},
YEAR = {1387},
NUMBER = {2},
MONTH = {آبان},
PAGES = {22-30},
LANGUAGE = {Persian}
}
@ARTICLE{cc,
AUTHOR = {بهبودی, احمد},
TITLE = {یک عنوان درست و درمون},
JOURNAL = {مجله فارسی نمونه},
VOLUME = {1},
YEAR = {1387},
NUMBER = {2},
MONTH = {آبان},
PAGES = {22-30},
LANGUAGE = {Persian}
}
Antwort1
Eine Möglichkeit besteht darin, die „Interna“ von Biblatex zu verwenden:
\documentclass{report}
\usepackage{hyperref}
% \usepackage{xepersian}
% \settextfont{XB Niloofar}
% bibliography
\usepackage[natbib = true, % true allows usage of citet, citep etc. commands
style = authoryear, % numeric, % trad-plain: use old bibtex plain style
backend = biber, %
hyperref = true, %
giveninits = true, % first names are reduced to initials
maxbibnames = 8, maxcitenames = 2, %
uniquename = init,
uniquelist = minyear,
doi = false, url = false, isbn = false, eprint = false] % supress all id numbers
{biblatex} %
\addbibresource{lit.bib}
% categories
\DeclareBibliographyCategory{published}
\DeclareBibliographyCategory{conf}
% add papers to categories
\addtocategory{published}{aa}
\addtocategory{published}{dd}
\addtocategory{conf}{bb}
\addtocategory{conf}{cc}
%
\defbibfilter{pub}{category=published}
\defbibfilter{conf}{category=conf}
\begin{document}
\nocite{*}
\defbibnote{A}{During the course of this thesis my research has contributed to the following publications:}
\defbibnote{B}{Conference papers}
\printbibliography[
title = {Peer-reviewed journals},
heading=subbibliography,
filter = pub,
prenote = A
]
\printbibliography[
title = {Conference contributions},
heading=subbibliography,
filter = conf,
prenote = B
]
\end{document}
Sie müssen dies mit biber statt mit bibtex kompilieren, vorzugsweise mit bibtex, latexmk
das sich auch um die Kompilierung des Dokuments kümmert, so oft wie nötig (und Sie müssen sich nicht darum kümmern, wie biber aufgerufen wird). Der Befehl lautet einfachlatexmk -pdf -xelatex <yourfile>
Es tut mir leid, aber ich musste die Bibliographie ändern, da mir die persischen Schriftarten fehlen:
@Article{aa,
author = {Author, A.},
title = {Title A},
journal = {Journal},
year = 2000
}
@ARTICLE{bb,
AUTHOR = {Author, B.},
TITLE = {Title B},
JOURNAL = {Journal B},
VOLUME = {1},
YEAR = {1387},
NUMBER = {2},
MONTH = {آبان},
PAGES = {22-30},
LANGUAGE = {Persian}
}
@ARTICLE{dd,
AUTHOR = {Author, C.},
TITLE = {Title C},
JOURNAL = {Journal C},
VOLUME = {1},
YEAR = {1387},
NUMBER = {2},
MONTH = {آبان},
PAGES = {22-30},
LANGUAGE = {Persian}
}
@ARTICLE{cc,
AUTHOR = {Author, D.},
TITLE = {Title D},
JOURNAL = {Journal D},
VOLUME = {1},
YEAR = {1387},
NUMBER = {2},
MONTH = {آبان},
PAGES = {22-30},
LANGUAGE = {Persian}
}
Bearbeiten: Verwenden von Bibtex und Multibib (beachten Sie, dass sich das wie ein grausamer Hack anfühlt und es wahrscheinlich auch ist ...):
\documentclass{report}
\usepackage{hyperref}
% \usepackage{xepersian}
% \settextfont{XB Niloofar}
\usepackage[resetlabels,labeled]{multibib}
\newcites{A,B}
{{BibTitle A\newline\vspace{2ex}\newline\mdseries\normalsize Description text for this bibliography A},%
{BibTitle B\newline\vspace{2ex}\newline\mdseries\normalsize Description text for this bibliography B}%
}
\begin{document}
\nociteA{aa,cc}
\bibliographystyleA{plain}
\bibliographyA{lit}
\nociteB{bb,dd}
\bibliographystyleB{plain}
\bibliographyB{lit}
\end{document}
Man kann mit dem vertikalen Abstand zwischen Überschrift und Text experimentieren. Ich habe im Multibib-Handbuch jedoch keine Lösung gefunden. Es scheint, dass nur Überschriften vorgesehen sind, kein Einführungstext.
Die Ausgabe (nur für Bib A, da die andere in der Berichtsklasse auf eine neue Seite gesetzt ist):
Antwort2
Eine andere Möglichkeit (meiner Meinung nach eine einfachere) besteht darin, Header mit dieser Technik zu entfernen:Multibib ohne zusätzlichen Titel verwenden
Fügen Sie dann bei Bedarf manuell Titel hinzu.