Texts written in Hindi are appearing Broken

Hello Everyone.

Today I was going through some texts which were written in Hindi. But when I tried to view them, they all are appearing distorted and broken.

image



I tried YaST-Language to add Hindi, but the process seems stuck:

and is not going further from 15 minutes since I started.




Where probably I am going wrong, and how should I proceed ?

You do not explain how you got the output you post (a major sin here). But I assumed it is created using Google Trnaslate. I tried the same here from LEAP 15.4:

As you see I get a different translation (namaskaar instead of hello), but the writing is correct. So something has broken your Devanagri text rendering.

I am using Firefox for this (another partner on your side you forgot to mention).

And no, I did not add the Hindi language because that has no use for this. This is about rendering these Devanagri characters (send to you in UTF-8) correct and has nothing to do with the language they may or may not try to express.

While I have no direct solution, this may help in cornering the origin of your problem.

1 Like

Do you mean this package?
<https://software.opensuse.org/package/yast2-trans-hi?search_term=yast2-trans-hi>

If that’s the package you mean then, it’s only relevant for the system’s administrators – not the users …

If, you have Hindi users on the system then, you’ll need the Hindi spelling packages:

  • aspell-hi
  • myspell-hi_IN

Please note that, as far as installed applications are concerned, provided the associated “-lang” packages are installed then, the systems users should be able to select Hindi as their Desktop language which, should also appear as the interface language for their applications.

  • Please note that, some applications such as those from Mozilla (Firefox & Co.) will often need extra user intervention to properly handle the user’s preferred application interface language.
1 Like

I am also using Firefox.

From as much I learned from both of your viewpoints, I guess the issue is either with Firefox Settings, or I need to re-generate locales, perhaps ?

Again, IMO, this has nothing to do with locales. A program wants to show certain Unicode characters. This is only possible if there is at least one font installed that has the glyphs for these characters.

I do not have any extra locales. I only installed long ago the package indic-fonts to provide the glyphs (and the rules on how to add the matras). Maybe you have a different font with errors in it?

I have no knowledge of any Firefox setting that would brake this. Why should something like that exist?

Firefox here is 102.11.0esr .

Trying to underline the fact that this about fonts (and not about locale), I once had “replacements characters” for the Khmer script. I only installed khmeros-fonts and FF showed them.

Also

boven:/home/henk/test/unicode # ls 
alles goed?  hello  öäüßÖÄÜ  Œé⁶  Χαίρετε  Здравствуйте  Лшадсщ  أهلا  नमस्ते
boven:/home/henk/test/unicode #

shows that even names can be in Unicode and no, I do not have all those different locales active at the same moment.

1 Like

Install following packages if they are not installed,

noto-sans-devanagari-fonts noto-serif-devanagari-fonts noto-sans-devanagari-ui-fonts

And make sure that under Firefox’s,

Settings => General => Fonts => Advanced => Fonts for Devanagari

are set to Noto Devanagari family.

1 Like

Do you have a fontconfig folder in your /home/user/.config?
Try renaming or removing it. You need to logout and login.

1 Like

Thanks for your advice. It seems that it worked :

image

Though, you can see that in the last word धन्यवाद, the line slightly distorted, but still it fixed up this problem.

Very-very thanks .
:grinning: :grinning: :grinning:

No it do not exists in the config folder.

Nice that it works OK now.

Strange thing (for me) is that I do not have any of those noto-devanagri font packages installed (only the indic-fonts) and that I do not see the problem.

A difference between LEAP and Tumbleweed or their different FF versions? That would point to a regression then.

1 Like

I see it in the image of Google Translate as displayed in FF, but I do not see it in your text (quoted above) on my FF.

1 Like

This folder is only mentioned if you invoke “fc-cache” – AFAICS, there’s no other documentation –

 > fc-cache --really-force --verbose
/usr/share/fonts: caching, new cache contents: 0 fonts, 12 dirs
/usr/share/fonts/100dpi: caching, new cache contents: 398 fonts, 0 dirs
/usr/share/fonts/75dpi: caching, new cache contents: 398 fonts, 0 dirs
/usr/share/fonts/Type1: caching, new cache contents: 29 fonts, 0 dirs
/usr/share/fonts/baekmuk: caching, new cache contents: 0 fonts, 0 dirs
/usr/share/fonts/cyrillic: caching, new cache contents: 0 fonts, 0 dirs
/usr/share/fonts/encodings: caching, new cache contents: 0 fonts, 1 dirs
/usr/share/fonts/encodings/large: caching, new cache contents: 0 fonts, 0 dirs
/usr/share/fonts/ghostscript: caching, new cache contents: 52 fonts, 0 dirs
/usr/share/fonts/misc: caching, new cache contents: 168 fonts, 0 dirs
/usr/share/fonts/texlive-lm: caching, new cache contents: 164 fonts, 0 dirs
/usr/share/fonts/truetype: caching, new cache contents: 519 fonts, 0 dirs
/usr/share/fonts/uni: caching, new cache contents: 1 fonts, 0 dirs
/usr/share/fonts/xscreensaver: caching, new cache contents: 5 fonts, 0 dirs
 . 
 . 
 . 
/var/cache/fontconfig: not cleaning unwritable cache directory
/home/???/.cache/fontconfig: cleaning cache directory
/home/???/.fontconfig: cleaning cache directory
fc-cache: succeeded
 >

Please note the following when you execute “fc-cache” –

  1. Only the user “root” or, an administrator with suitable privileges, can clean up system-wide cache directories such as ‘/var/cache/fontconfig’ …
  2. fc-cache” will sometimes warn about “looped directory detected” – don’t worry, be happy – this is a compatibility issue between the tool and the system – maybe, sometime, somone will address this issue …
1 Like

Yes, that’s only appearing on Firefox. But copying those texts to anywhere else looks good…
And the Firefox version is 113.02.

From this I remembered that, is it possible to remove the package cache which might be remaining back despite that package has been removed by me ? Also, if we will update our system frequently, then also the cache of previous updates are stored, so can they be removed ?

firefox_settings

# fc-match serif
LiberationSerif-Regular.ttf: "Liberation Serif" "Regular"

# fc-match sans-serif
LiberationSans-Regular.ttf: "Liberation Sans" "Regular"

# fc-match monospace
SourceCodePro-Regular.otf: "Source Code Pro" "Regular"

# rpm -qa |grep -i fonts
google-carlito-fonts-1.1.03.beta1-1.22.noarch
google-droid-fonts-20121204-3.3.1.noarch
patterns-fonts-fonts-20190130-1.15.x86_64
fonts-config-20200609+git0.42e2b1b-4.7.1.noarch
cantarell-fonts-0.303.1-150400.1.6.noarch
mkfontscale-1.1.2-1.23.x86_64
dejavu-fonts-2.37-1.21.noarch
xorg-x11-fonts-core-7.6-13.6.1.noarch
google-caladea-fonts-1.002-1.22.noarch
ghostscript-fonts-std-9.06-14.3.1.noarch
xorg-x11-fonts-7.6-13.6.1.noarch
liberation-fonts-1.07.4-2.13.noarch
google-opensans-fonts-1.0-1.21.noarch
adobe-sourcecodepro-fonts-2.030-1.30.noarch
1 Like

Ich habe keine Idee was du möchtest. Das hier ist aber das Englische Teil des openSUSE Forums. Wir haben ein separates Teil für Deutschsprachigen.

1 Like

It often pays to occasionally execute, either with the user “root” or a system administrator account, the following:

# fc-cache --really-force --system-only

Alternatively, with the user “root”, simply remove everything in ‘ /var/cache/fontconfig’ and then execute “fc-cache” …

1 Like

मैं खुश हूँ की मैं आपकी मदद कर सका |

1 Like

एतस्याः समस्यायाः विषये मम साहाय्यं कृत्वा धन्यवादः

You know the Sanskrit too :+1:

I’m totally impressed :100:

1 Like

Not much, just some basics which I learned in school, though I must say writing this on paper feels painful…
:rofl:

Yup, Devanagari can be a difficult script to write.

एतस्याः समस्यायाः विषये मम साहाय्यं कृत्वा धन्यवादः

The above is perfect. Not at all bad for someone who learned it at a basic level in school. Either your teacher was a genius or you were an exceptional learner.