LuaLatex: Bahasa 'Pashto' tidak tersedia untuk font (fontspec) 'Amiri-Regular' dengan skrip 'Arabic'

Nov 30 2020

Sebagai tindak lanjut dari pertanyaan saya untuk Urdusekarang saya memiliki pertanyaan untuk bahasa lain seperti Pashtodan Persian. Saya mengikuti sampel dan dokumen dan memiliki MWE berikut:

\documentclass{article}
\usepackage{fontspec}
\usepackage[shorthands=off,bidi=basic,english, ngerman]{babel}
\babelprovide[import=ur,mapdigits]{urdu}
\babelfont[urdu]{rm}[Renderer=HarfBuzz]{Amiri}
\babelprovide[import=ps]{pashto}
\babelfont[pashto]{rm}[Renderer=HarfBuzz]{Amiri}
\babelprovide[import=fa]{persian}
\babelfont[persian]{rm}[Renderer=HarfBuzz]{Amiri}

\begin{document}
My urdu test
\selectlanguage{urdu}

    یہ ایک جملہ ہے
{\selectlanguage{pashto}رآورد نفوس کشورد هېواد د و ګړو اټکل1398 [}Estimated Population of Afghanistan 1398 (2019/2020)],     
{\selectlanguage{persian} رآورد نفوس کشورد هېواد د و ګړو اټکل1398 [}Estimated Population of Afghanistan 2020], 

\end{document}

saya menggunakan

This is LuaHBTeX, Version 1.12.0 (TeX Live 2020/TeX Live for SUSE Linux)  (format=lualatex 2020.11.26) 

dan dapatkan peringatan berikut:

Language 'Pashto' not available for font(fontspec) 'Amiri-Regular' with script 'Arabic'.
Language 'Persian' not available for font(fontspec) 'Amiri-Regular' with script 'Arabic'.

Karena ini berfungsi dengan baik karena Urdusaya tidak tahu bagaimana menghindari peringatan ini? Atau bagaimana cara membuat penyiapan yang lebih baik? Ada petunjuk?

Jawaban

2 Davislor Nov 30 2020 at 15:13

Peringatan ini tidak berbahaya, tetapi Anda dapat menekannya dengan memuat font Language=Default, mis

\documentclass{article}
\usepackage[bidi=basic, nil]{babel}
\usepackage{fontspec}

\defaultfontfeatures{ Renderer=HarfBuzz, 
                      Scale=MatchUppercase, 
                      Ligatures=TeX }

\babelfont{rm}
          [Ligatures=Common, Scale=1.0]{Libertinus Serif}    
\babelprovide[import=ur, mapdigits, main]{urdu}
\babelfont[urdu]{rm}
          {Amiri}
\babelprovide[import=ps]{pashto}
\babelfont[pashto]{rm}
          [Language=Default]{Amiri}
\babelprovide[import=fa]{persian}
\babelfont[persian]{rm}
          [Language=Default]{Amiri}

\babeltags{pashto=pashto}
\babeltags{persian=persian}
\babeltags{urdu=urdu}

Mungkin ada baiknya mendeklarasikan bahasa Inggris untuk teks LTR, seperti "Population of Afghanistan". The \babeltagsdeklarasi membiarkan Anda menulis \textpashto{...}bukan {\selectlanguage{pashto}...}.