Да, если локаль en _US.utf8 (например ), обе строки кажутся равными:
$ printf "%s\n" "いあ" "あい" "いあ" "あい"
いあ
あい
いあ
あい
$ LC_COLLATE=en_US.utf8 bash -c '
printf "%s\n" "いあ" "あい" "いあ" "あい" |
sort |
uniq '
いあ
Однако, если язык изменить на ja _JP, все работает правильно:
$ LC_COLLATE=ja_JP.utf8 bash -c '
printf "%s\n" "いあ" "あい" "いあ" "あい" |
sort |
uniq '
あい
いあ
Интересно отметить, что (в этом случае )локаль C также работает:
$ LC_COLLATE=C bash -c '
printf "%s\n" "いあ" "あい" "いあ" "あい" |
sort |
uniq '
あい
いあ
Это только показывает, что en _US отсутствует порядок сортировки для некоторых кодовых точек.
Добавьте в файл следующий XML-файл ~/.config/fontconfig/fonts.conf
, он внесет в черный список все шрифты, специфичные для языка ното:
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<selectfont>
<rejectfont>
<glob>/usr/share/fonts/truetype/noto/NotoKufi*</glob>
<glob>/usr/share/fonts/truetype/noto/NotoNaskh*</glob>
<glob>/usr/share/fonts/truetype/noto/NotoNastaliq*</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSans*</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSerif*</glob>
</rejectfont>
<acceptfont>
<glob>/usr/share/fonts/truetype/noto/NotoSans-Regular.ttf</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSans-Bold.ttf</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSans-BoldItalic.ttf</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSans-Italic.ttf</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSerif-Regular.ttf</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSerif-Bold.ttf</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSerif-BoldItalic.ttf</glob>
<glob>/usr/share/fonts/truetype/noto/NotoSerif-Italic.ttf</glob>
<glob>/usr/share/fonts/noto/NotoSans-*</glob>
<glob>/usr/share/fonts/noto/NotoSerif-*</glob>
</acceptfont>
</selectfont>
и перестройте кэш шрифтов :fc-cache -f -v
.
После этого количество шрифтов Noto, перечисленных в Writer, уменьшится с сотен до 17.