I've found this answer and I also referred to the links I posted in a previous question.
What I came up with is the following:
\documentclass{book}
\usepackage{luatexja-fontspec}
\usepackage{iftex}
\usepackage{fontspec}
\defaultfontfeatures{Ligatures={TeX}}
\setmainfont{Noto Serif}
\setsansfont{Noto Sans}
\setmonofont{Noto Sans Mono}
\usepackage[english, russian]{babel}
\begin{document}
\begin{tabular}{lll}
鮫 & 私が見た & 魚\\
акула & видела & рыбу\\
scùàlò & vìde & péscè\\
\end{tabular}
\end{document}
which has a relatively ugly rendering of cyrillic (I have no idea how nice the japanese is rendered, though),
which would be good if I didn't include the luatexja-fontspec
package, at the expense of not showing japanese characters at all,
Quite funny, while I write the question, I see the browser has a better clearer idea of the fonts (except that it doesn't render the japanese characters as monospace; but this is not what I'm trying to do):
babel
package has a commands\babelfont
and\foreignlanguage
that let you select a particular font for a particular language. See babel docs, pages 4 and 5. But I do not know how it would work, in your case.babel
the following:\babelprovide[onchar=ids fonts]{japanese}
\babelfont[japanese]{rm}{IPAexMincho}
, and delete\usepackage{luatexja-fontspec}
. However, I wonder if there is a way to render correctly with the latter the Russian text without the CJK full width spacing.