OberonCore https://forum.oberoncore.ru/ |
|
Module Characters https://forum.oberoncore.ru/viewtopic.php?f=130&t=5042 |
Страница 1 из 1 |
Автор: | Роман М. [ Среда, 26 Март, 2014 13:34 ] |
Заголовок сообщения: | Module Characters |
I'd like to continue topic about Unicode characters in BlackBox, started in "Coming soon: BlackBox Component Builder 1.7 CPC Edition": post p86643 and solution provided by user maliya, post p86899. Here is translation of annotation in module below: I.N.Goryachev 29.09.2006 Module support for Unicode by facilities of OS Код: (* И.Н.Горячев 29.09.2006 Модуль поддержки юникода средствами ОС *) MODULE HostUnicode; IMPORT SYSTEM, Kernel, WinApi; TYPE KernelHook = POINTER TO RECORD (Kernel.UnicodeHook) END; VAR khook : KernelHook; PROCEDURE (h : KernelHook) IsCap (ch : CHAR) : BOOLEAN; BEGIN RETURN WinApi.IsCharUpperW (ch) # 0 END IsCap; PROCEDURE (h : KernelHook) Cap (ch : CHAR) : CHAR; BEGIN RETURN SYSTEM.VAL(CHAR, WinApi.CharUpperW( SYSTEM.VAL(WinApi.PtrWSTR, ch ))); END Cap; PROCEDURE (h : KernelHook) Low (ch : CHAR) : CHAR; BEGIN RETURN SYSTEM.VAL(CHAR, WinApi.CharLowerW(SYSTEM.VAL(WinApi.PtrWSTR, ch))); END Low; PROCEDURE Install*; BEGIN IF khook = NIL THEN NEW(khook) END; Kernel.SetUnicodeHook (khook) END Install; BEGIN Install END HostUnicode. Personally I prefer approach proposed by Goryachev because his solution is complete, platform- and language-independent. The rest Oberon-specific code could remain in module Characters. See commit https://bitbucket.org/oberoncore/bb16ce ... 39b6ebb2ce for details |
Автор: | Димыч [ Среда, 26 Март, 2014 15:13 ] |
Заголовок сообщения: | Re: Module Characters |
Роман М. писал(а): Personally I prefer approach proposed by Goryachev because his solution is complete, platform- and language-independent. It is a good solution, but it is platform-dependent. Do you have an idea how to make it work on *nix? |
Автор: | Роман М. [ Среда, 26 Март, 2014 17:01 ] |
Заголовок сообщения: | Re: Module Characters |
Димыч писал(а): Роман М. писал(а): Personally I prefer approach proposed by Goryachev because his solution is complete, platform- and language-independent. It is a good solution, but it is platform-dependent. Do you have an idea how to make it work on *nix? |
Автор: | Zinn [ Среда, 26 Март, 2014 17:12 ] |
Заголовок сообщения: | Re: Module Characters |
Characters is temporary, dirty solution which is obsolete when Goryachev solution is running. So why should we do more work in something which we throw away? |
Автор: | Роман М. [ Среда, 26 Март, 2014 17:38 ] |
Заголовок сообщения: | Re: Module Characters |
Zinn писал(а): Characters is temporary, dirty solution which is obsolete when Goryachev solution is running. So why should we do more work in something which we throw away? Well, I didn't know about that. When you plan to throw Characters away?
|
Автор: | Zinn [ Среда, 26 Март, 2014 19:57 ] |
Заголовок сообщения: | Re: Module Characters |
Maybe I use the wrong words. I mean it is subject to change. First we need the solution to use Unicode inside the object file. This kind of change is very difficult. I won’t do it. I wait for someone else does this job. Before we have the right solution it makes no sense to do much more work in the wrong way. I mean this work in the wrong way will be throw away. Character does it aims – allow to translate Cyrillic characters – nothing more. The part Long & Short is temporary. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |