マルチビブパッケージを使用した参考文献のタイトルとコンテンツ間のテキスト

マルチビブパッケージを使用した参考文献のタイトルとコンテンツ間のテキスト

参考文献のタイトルと内容の間にテキストを書きたいです。

私は解決しようとしたこの解決策ただし、multibib パッケージでは動作しません。 ありがとうございます。

% 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}

そして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}
}

答え1

1 つのオプションは、 biblatex の「内部」を使用することです。

\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}

これをコンパイルするには、bibtexではなくbiberを使用する必要があります。biberはlatexmk必要に応じてドキュメントのコンパイルも行うので、biberの呼び出し方法を気にする必要はありません。コマンドは単純です。latexmk -pdf -xelatex <yourfile>

申し訳ありませんが、ペルシャ語のフォントがないため、参考文献を変更する必要がありました。

@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}
}

出力: ここに画像の説明を入力してください


編集: bibtex と multibib を使用します (これは残酷なハックのように感じますが、おそらくそうでしょう...):

\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}

見出しとテキストの間に追加される垂直距離の量を調整することができます。ただし、マルチビブのマニュアルでは解決策が見つかりませんでした。見出しのみが意図されており、導入テキストは意図されていないようです。
出力 (Bib A のみ、もう 1 つはレポート クラスで新しいページに設定されている) は次のとおりです。

ここに画像の説明を入力してください

答え2

別の方法 (私の意見ではより軽量) は、次のテクニックを使用してヘッダーを削除することです。追加のタイトルなしでマルチビブを使用する

次に、適切な場所にタイトルを手動で追加します。

関連情報