平均能量损失

平均能量损失

我正在使用 overleaf 来编写我的文档,我需要在 minted 环境中列出一些包含波斯语单词的 python 代码,如下所示:

\begin{minted}[bgcolor=bg]{python}
>>> farsi_tagged_sents = nltk.corpus.multext_east.tagged_sents("oana-fa.xml", tagset='universal')
>>> farsi_tagged_sents[0]
[('یکی', 'NUM'),
 ('از', 'ADP'),
 ('روزهايِ', 'NOUN'),
 ('بسيار', 'ADV'),
 ('سردِ', 'ADJ'),
 ('ماهِ', 'NOUN'),
 ('آوريل', 'NOUN'),
 ('بود', 'VERB'),
 ('و', 'CONJ'),
 ('ساعتها', 'NOUN'),
 ('سيزده', 'NUM'),
 ('ضربه', 'NOUN'),
 ('مينواختند', 'VERB'),
 ('.', '')]
\end{minted}

但是,当我编译上述代码时,引号之间什么都没有显示。我尝试了babelpackage 和\FR{}command,但没有成功。有什么方法可以突出显示我的代码,同时在其中包含波斯语吗?

答案1

我认为唯一现实的方法是使用babellualatex

坏消息是你说你正在使用 Overleaf。几乎可以肯定的是,Overleaf 上的版本babel太旧了,无法运行此功能,因此你需要在本地运行最新的 TeXLive 安装。

平均能量损失

使用以下命令进行编译:lualatex --shell-escape filename

mapfont=direction选项允许babel自动将 RTL 字符切换为波斯字体。这意味着无需在环境中标记文本minted

\documentclass{article}
\usepackage[bidi=basic]{babel}
\babelprovide[import,main,language=Default]{english}
\babelprovide[import,mapfont=direction,language=Default]{persian}
\babelfont{rm}{Latin Modern Roman}
\babelfont{sf}{Latin Modern Sans}
\babelfont{tt}{Latin Modern Mono}
\babelfont[persian]{tt}{FreeMono}
\usepackage{xcolor}
\usepackage{minted}
\begin{document}
\begin{minted}[fontsize=\footnotesize]{python}
>>> farsi_tagged_sents = nltk.corpus.multext_east.tagged_sents("oana-fa.xml", tagset='universal')
>>> farsi_tagged_sents[0]
[('یکی', 'NUM'),
 ('از', 'ADP'),
 ('روزهايِ', 'NOUN'),
 ('بسيار', 'ADV'),
 ('سردِ', 'ADJ'),
 ('ماهِ', 'NOUN'),
 ('آوريل', 'NOUN'),
 ('بود', 'VERB'),
 ('و', 'CONJ'),
 ('ساعتها', 'NOUN'),
 ('سيزده', 'NUM'),
 ('ضربه', 'NOUN'),
 ('مينواختند', 'VERB'),
 ('.', '')]
\end{minted}
\end{document}

MWE 输出

相关内容