Linux - DesktopThis forum is for the discussion of all Linux Software used in a desktop context.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I need to change all symbols (for example "ё", i know its unicode) to another (for example "ö", i also know its unicode) befor output to XWindow's screen.
Should I patch freetype2, cairo, pango or Xft2?
Or is enough to add some lines to /etc/fonts/fonts.conf?
How can I replace char code before rendering in font's subsystem?
Distribution: openSuSE Tumbleweed-KDE, Mint 21, MX-21, Manjaro
Posts: 4,629
Rep:
As I understand it there is no need for patching. You can install linux with a cyrillic character set from the beginning or you can change that later. "Localization" is what I mean.
You don't understand me right.
There is russian localisation already at my computer.
There are russian symbols at my screen now.
But I want to change russian symbols to latin's.
What you want to do would require more than system changes, as they go beyond locale changes and font definitions.
The `ё' character is never used except in dictionaries. It is a pronunciation guide. So the 'e' would be the same printed character, that you want to sometimes print as 'e' and sometimes as 'ö' depending on the word.
Many characters would be translated to character sequences on latin. ц->ts щ->chsh ш->sh ч->ch.
You would literally be inventing your own language, and need to translate the documents and patch the text in programs.
About the best you could do, AFAIK, is create your own .po files for applications that use gettext to translate text at runtime.
Code:
eg: from
msgid "\tUsers allowed:\n"
msgstr "\tРазрешенные пользователи:\n"
to:
msgid "\tUsers allowed:\n"
msgstr "\tRazreshenye polzovateli\n"
If there was a main .po file of set phrases that programs used, this might be practical, but you would need to do this for each program. This assumes that the program isn't built for a particular domain and the .po files are located in the source. E.G. for the VLC project, the "previous" menu item in the /po/ru.po file:
I don't want to change any localizations. I don't need to correct some ".po".
I NEED TO CHANGE THE VIEW OF ALL OUTPUT CHARS.
I need to remap font system so that glyphs of russian charset will chenged to latin's glyphs.
The result will be new view of all cyrillic symbols (other glyphs) in all programs, for example, in each page on browser.
There isn't a one to one correlation between russian and latin glyphs.
It would be easier to learn the latin alphabet than invent your own locale and code pages, resulting in partially transliterated gibberish.
For partial transliterated encoding changes, perhaps read /usr/share/X11/doc/fonts/fonts.pdf.
There is a short paragraph on adhoc encoding changes, which points out a file which does it. This maps a character to a different glyph.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.