Mutiple locales on system, CJK fallbacks

I am currently learning Japanese and trying to fix my fonts. I am following this guide, but it is written for Distros that use locale-gen. The guide advises the following:

You should have ja_JP.UTF-8 as one of your locales. If not, uncomment the line #ja_JP.UTF-8 UTF-8 in /etc/locale.gen and run:

sudo locale-gen

I do not know how to translate this to fedora. I also want to ensure that the system shows Japanese versions of CJK characters, instead of simplified Chinese by default. I can do this in Firefox with font.cjk_pref_fallback_order, but I want to apply this system-wide.

EDIT: Changing the interface language is not an option, I am only learning Japanese

Changing the language in GNOME Settings should enable the locale automatically for you.

I don’t want to change the interface language, I’m just learning Japanese

I see. At the moment there is no UI to set system wide display language preference order.

The locale should already exist though, you can confirm that by running

locale -a|grep ja_JP

There is another thread about the same topic and there are some tips:

  1. You can create a ~/.fonts.conf.d/05-language-fallback.conf file to customize the preferred language fallback used by fontconfig.
  2. Or you can set the PANGO_LANGUAGE=ja environment variable in a file ~/.config/environment.d/pango-language.conf to control how most GTK applications will render the glyphs.

I think GNOME interface font defaults to “Noto Sans.” You can change it to “Noto Sans CJK JP” to display Japanese glyph instead.

It seems to have been solved by fiddling with fontconfig (53-cjk) using this template at $XDG_CONFIG_HOME/fontconfig/conf.d/53-cjk.conf

Thanks a lot for helping. I wouldn’t have figured it out otherwise. It is shame though, that Fedora does not yet support setting multiple language in order of preference like Windows, which would help multilingual users like me immensely. Please let me know if any effort is underway to bring such a feature to GNOME/Fedora; I would like to help.