使用 biblatex 查找阿拉伯语书目

使用 biblatex 查找阿拉伯语书目

biblatex我没有发现任何关于插入用阿拉伯文字(在本例中为阿拉伯文)写的参考书目条目的可能性的提及。

有什么办法吗?

答案1

我不太清楚你的问题是什么。你想要一个完全阿拉伯语的 PDF,还是一个英语的 PDF,可以选择引用阿拉伯语文献没有音译书目信息?

无论如何:这里有一个例子表明它biblatex可以使用和排版阿拉伯语参考biber

这个答案远非完美。许多事情需要调整才能完美,例如:

  1. 使用的逗号是阿拉伯语文本中的错误逗号
  2. 一般来说,语法需要调整
  3. 也许你想让阿拉伯语脚注右对齐(这是可能的,但我不知道如何
  4. 一个阿拉伯数字就footnotemark很好了(容易实现!)
  5. 您需要用阿拉伯语表达“编辑”等等。
  6. ...

但这一切都是可能的。

后续问题:是否有可能仅有的阿拉伯语脚注右对齐,英文脚注左对齐?

工作示例:

% !TEX TS-program = lualatexmk
\documentclass[12pt, a4paper, DIV=calc]{scrartcl}

\usepackage{fontspec}
    \setmainfont[Ligatures=TeX]{Times New Roman}
    \newfontfamily\arabicfont[Script=Arabic,Scale=1.3]{Arabic Typesetting}

\usepackage[style=verbose,backend=biber]{biblatex}
    \DeclareFieldFormat{postnote}{#1}% postnotes without p. and pp.

\newcommand{\arabtext}[1]   % Arabic inside LTR
    {\bgroup\luatextextdir TRT\arabicfont #1\egroup}
\newcommand{\arabnr}[1]     % for digits inside Arabic text
    {\bgroup\luatextextdir TLT #1\egroup}
\newcommand{\afootnote}[1]  % Arabic footnotes
    {\footnote{\arabtext{#1}}}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
    @book{ibnsina:shifa:physics:ar,
    author = {\arabtext{ابن سينا}},
    year = {\arabnr{١٤١٧}},
    title = {\arabtext{السماع الطبيعى من كتاب الشفاء}},
    publisher = {\arabtext{دار المناهل}},
    location = {\arabtext{بيروت}},
        }
    @book{ibnsina:shifa:physics:en,
    author = {Avicenna},
    year = {1996},
    title = {Al-Samāʿ al-ṭabīʿī min Kitāb al-Šifāʾ},
    publisher = {Dār al-Manāhil},
    location = {Beirut}}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

\noindent Text with an English reference in the footnote.\footnote{\cite[12]{ibnsina:shifa:physics:en}.}

\noindent Text with an Arabic reference in the footnote.\afootnote{\cite[\arabnr{١٢}]{ibnsina:shifa:physics:ar}.}

\printbibliography

\end{document}

答案2

我解决这个确切问题的方法(在 XeLaTeX 下polyglossiabiblatexXeLaTeX 下均可使用)是使用\textarabic。我确信这是目前最好的解决方案。如果它对您不起作用,请告诉我原因,我会尝试调整我的答案。

由于您抱怨我使用了另一个答案中的示例,下面是我自己的一个示例,放入 MWS 中以展示如何使用它:

\documentclass{scrartcl}
\usepackage{polyglossia}
\setmainlanguage{english}
\setotherlanguage{arabic}
\newfontfamily\arabicfont[Script=Arabic,Scale=1.2]{Arabic Typesetting}
% redefine \textarabic{} to never be italic
\let\oldtextarabic\textarabic
\renewcommand{\textarabic}{\upshape\oldtextarabic}
\usepackage[backend=biber,style=mla]{biblatex}

\begin{filecontents}{example.bib}
@book{Jamii2005,
  location = {\textarabic{بيروت}},
  title = {\textarabic{قاموس الفصاحة العمانية - ما حفظته الدارجة العمانية لللغة العربية}},
  volumes = {2},
  publisher = {\textarabic{‏‏دار أحياء التراث العربي}},
  author = {\textarabic{الجامعي}, \textarabic{أبو قاسم محمود بن حميد}},
  date = {2005},
  langid = {arabic}
}
\end{filecontents}

\addbibresource{example.bib}

\begin{document}
  \section{Example}
  Lorem ipsum dolor sit amet \parencite[p. 123]{Jamii2005} consectetur.
  \printbibliography
\end{document}

编译文件

@Werner:感谢您的格式化帮助!

答案3

您可以使用 解决此问题Persian-bib,请前往 CTAN 并下载Persian-bib,将其放在您的工作目录中,然后按照以下几个步骤操作:

  • 将这些代码行复制并粘贴到你的序言中:

    \usepackage{xepersian}
    \settextfont[Scale=1]{XB Zar}%{XB Niloofar}
    \setlatintextfont[Scale=1]{Linux Libertine}
    \defpersianfont\Sayeh[Scale=1]{XB Kayhan Sayeh}
    
  • 转到文档的相应部分并插入以下内容:

    \bibliographystyle{asa-fa}%{chicago-fa}%{plainnat-fa}%
    \bibliography{MyReferences}
    

{asa-fa}= 适用于 RTL 语言的文件,{MyReferences}= 是您的.bib文件

*请不要忘记添加必要的字体

相关内容