@EvgenyVenalainen ,
Is it way to fix it?
For the end user? Sorry, no, there isn’t.
With a change to the program? That’s a more involved answer:
UDL has never been great at characters outside the ASCII range. As you say, for keywords, it works for those in “ANSI” and UTF-8, but not with other encodings. This is because of the fundamental design choices made decades ago in the UDL lexer, and it does not look like an easy code fix. (I once wanted to try to get it so that non-ASCII characters would work right in both operator lists, but discovered at that point how fundamentally “wrong” and internally inconsistent the UDL-lexer’s treatment is of characters vs bytes vs encodings, and I could never sort out the mess. Someday, I might revisit, but I haven’t found the mental fortitude to dig in deep enough to figure it all out yet).
There are bunches of Issues in the official issue tracker, asking for various improvements to make UDL better at handling non-Western characters and character sets, but there have been no significant improvements to UDL in over a decade.
So technically, with a rewrite or at least significant debugging, it might be done. But there’s been no volunteer to do it in more than a decade, and the Developer focuses his energies on other components of the application, having deemed UDL sufficient for his needs.