Reading the documentation reveals that characters are classified in “ALchars” and ”JAchars” and that Cyrillic is assigned to “JAchars”.
Just reassign:
\ltjsetparameter{jacharrange={-1, -2, +3, -4, -5, +6, +7, +8}}
(the standard declaration has +2
, see section 4.1 of the documentation).
Of course you have to use a font that supports Cyrillic, which TeX Gyre Pagella doesn't.
\documentclass[a4paper]{ltjsarticle}
\usepackage{luatexja-fontspec}
\setmainjfont{Hiragino Mincho Pro}
\setsansjfont{Hiragino Sans GB}
\setmainfont[Ligatures=TeX]{Linux Libertine O}
\setsansfont[Ligatures=TeX]{Linux Biolinum O}
\ltjsetparameter{jacharrange={-1, -2, +3, -4, -5, +6, +7, +8}}
\usepackage{array}
\usepackage{booktabs}
\usepackage[russian]{babel}
\usepackage{multicol}
\begin{document}
此れは日本語の試験です。表示されるようです。
\begin{table}\centering
\begin{tabular}{|c|c|c|c|c|} \toprule
あ&い&う&え&お\\ \hline
か&き&く&け&こ\\ \hline
さ&し&す&せ&そ\\ \midrule
\dots&\dots&\dots&\dots&\dots\\ \midrule
わ&ゐ&ん&ゑ&を\\ \bottomrule
\end{tabular}\caption{You must to see [表] before table number, \textbf{not} [Table] or [Таблица]}
\end{table}
Теперь русский. The letters is too wide, isn't it?
\begin{multicols}{3}
Now the hyphenation test. There are no the [-] symbol, isn't it? Тест переносов. Так как осуществляется набор в три колонки, то и вероятность того, что произойдёт перенос слова, значительно возрастает.
\end{multicols}
\begin{table}[ht!]\centering
\begin{tabular}{|c|c|c|c|c|} \toprule
あ&い&う&え&お\\ \hline
か&き&く&け&こ\\ \hline
さ&し&す&せ&そ\\ \midrule
\dots&\dots&\dots&\dots&\dots\\ \midrule
わ&ゐ&ん&ゑ&を\\ \bottomrule
\end{tabular}\caption{You must to see [表] before table number, \textbf{not} [Table] or [Таблица]}
\end{table}
\end{document}

There is no real integration of luatexja
with babel
, so doing \usepackage[russian]{babel}
overrides all settings. As far as I can see, only Japanese and English are supported.
You can correct this by doing \usepackage[russian,english]{babel}
. If you need longer passages in Russian, with correct hyphenation, use
\begin{otherlanguage*}{russian}
...
\end{otherlanguage*}
For shorter parts \foreignlanguage{russian}{...}
can be used (or nothing at all for a single word, that however won't be hyphenated).
I provide some fixes for babel
in luatexja
, but be prepared to find other places where something can go wrong.
\documentclass[a4paper]{ltjsarticle}
\usepackage{luatexja-fontspec}
\setmainjfont{Hiragino Mincho Pro}
\setsansjfont{Hiragino Sans GB}
\setmainfont[Ligatures=TeX]{Linux Libertine O}
\setsansfont[Ligatures=TeX]{Linux Biolinum O}
\ltjsetparameter{jacharrange={-1, -2, +3, -4, -5, +6, +7, +8}}
\usepackage{array}
\usepackage{booktabs}
\usepackage[russian,english]{babel}
\usepackage{multicol}
\makeatletter
\renewcommand\captionsenglish{%
\renewcommand{\prepartname}{\if@english Part~\else 第\fi}%
\renewcommand{\postpartname}{\if@english\else 部\fi}%
\renewcommand{\presectionname}{}% 第
\renewcommand{\postsectionname}{}% 節
\renewcommand{\contentsname}{\if@english Contents\else 目次\fi}%
\renewcommand{\listfigurename}{\if@english List of Figures\else 図目次\fi}%
\renewcommand{\listtablename}{\if@english List of Tables\else 表目次\fi}%
\renewcommand{\refname}{\if@english References\else 参考文献\fi}%
\renewcommand{\bibname}{\if@english Bibliography\else 参考文献\fi}%
\renewcommand{\indexname}{\if@english Index\else 索引\fi}%
\renewcommand{\figurename}{\if@english Fig.~\else 図\fi}%
\renewcommand{\tablename}{\if@english Table~\else 表\fi}%
\renewcommand{\appendixname}{\if@english \else 付録\fi}%
\renewcommand{\abstractname}{\if@english Abstract\else 概要\fi}%
}
\makeatother
\begin{document}
此れは日本語の試験です。表示されるようです。
\begin{table}\centering
\begin{tabular}{|c|c|c|c|c|} \toprule
あ&い&う&え&お\\ \hline
か&き&く&け&こ\\ \hline
さ&し&す&せ&そ\\ \midrule
\dots&\dots&\dots&\dots&\dots\\ \midrule
わ&ゐ&ん&ゑ&を\\ \bottomrule
\end{tabular}\caption{You must to see [表] before table number, \textbf{not} [Table] or [Таблица]}
\end{table}
Теперь русский. The letters is too wide, isn't it?
\begin{multicols}{3}
Now the hyphenation test. There are no the [-] symbol, isn't it? Тест переносов. Так как осуществляется набор в три колонки, то и вероятность того, что произойдёт перенос слова, значительно возрастает.
\end{multicols}
\begin{table}[ht!]\centering
\begin{tabular}{|c|c|c|c|c|} \toprule
あ&い&う&え&お\\ \hline
か&き&く&け&こ\\ \hline
さ&し&す&せ&そ\\ \midrule
\dots&\dots&\dots&\dots&\dots\\ \midrule
わ&ゐ&ん&ゑ&を\\ \bottomrule
\end{tabular}\caption{You must to see [表] before table number, \textbf{not} [Table] or [Таблица]}
\end{table}
\end{document}

babel
(for sure) andpolyglossia
(I think) support Japanese.