[sword-devel] Issues with German Umlaut characters in SWORD trunk?
Tobias Klein
contact at tklein.info
Sat Oct 3 13:29:06 EDT 2020
Yes, I'm building SWORD with ICU. The build procedure has not changed
recently.
This is the batch script that builds SWORD on Windows:
https://github.com/tobias-klein/sword-build-win32/blob/master/build_sword.bat
However, I just found some interesting warnings in the build output from
the most recent build:
-- SEARCHING FOR SYTEM PACKAGES
5089
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5089>--
Found the following ICU libraries:
5090
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5090>--
i18n (required)
5091
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5091>--
uc (required)
5092
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5092>--
The following ICU libraries were not found:
5093
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5093>--
data (required)
5094
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5094>--
io (required)
5095
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5095>--
Failed to find all ICU components (missing: _ICU_REQUIRED_LIBS_FOUND)
(found version "65.1")
5096
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5096>--
System regex.h: No
5097
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5097>--
5098
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5098>--
CONFIGURING SOURCE LIST
5099
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5099>--
ZLib: internal
5100
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5100>--
bzip2: system D:/a/sword-build-win32/sword-build-win32/dist/lib/libbz2.lib
5101
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5101>--
xz: system D:/a/sword-build-win32/sword-build-win32/dist/lib/liblzma.lib
5102
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5102>--
cURL: system
D:\a\sword-build-win32\sword-build-win32\dist\lib\libcurl_imp.lib and
D:/a/sword-build-win32/sword-build-win32/curl/include
5103
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5103>--
CLucene: no
5104
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5104>--
PkgConfig: no
5105
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5105>--
ICU: no
5106
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5106>--
Regex.h: internal
5107
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5107>--
Building Shared library.
5108
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5108>--
Building Static library.
5109
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5109>--
Setting SOVERSION to 1.8.900
5110
<https://github.com/tobias-klein/sword-build-win32/runs/1145121405?check_suite_focus=true#step:6:5110>--
Setting link libraries to
D:/a/sword-build-win32/sword-build-win32/dist/lib/libbz2.lib;D:/a/sword-build-win32/sword-build-win32/dist/lib/liblzma.lib;D:\a\sword-build-win32\sword-build-win32\dist\lib\libcurl_imp.lib
It says that certain ICU libraries were not found and then below under
"CONFIGURING SOURCE LIST" it says ICU: no.
I guess that could be the explanation. Unfortunately I don't have access
to the build logs from May any longer ... maybe I can reproduce it
anyway, I will keep looking.
Best regards,
Tobias
On 10/3/20 1:44 PM, Troy A. Griffitts wrote:
> Hi Tobias, generally SWORD defaults to always return UTF-8. Depending
> on what you do with the string returned from your function, in Windows
> you may or may not get nice results. Also, to check, we do have
> multiple locales for German. The de-utf8 locale is preferred if SWORD
> is compiled with a StringMgr which understands Unicode. How are you
> compiling SWORD on Windows? With ICU?
>
> On October 3, 2020 10:55:32 AM GMT+02:00, Tobias Klein
> <contact at tklein.info> wrote:
>
> Hi,
>
> In node-sword-interface I have a method getSwordTranslation which
> does the following:
>
> std::stringtranslation =
> std::string(this->_localeMgr->translate(originalString.c_str(),
> localeCode.c_str()));
>
> returntranslation;
>
> I have just found that this method does not do the right thing on
> Windows any longer.
>
> When invoking my wrapper nsi.getSwordTranslation('Matthew', 'de')
> I now get the following:
>
> Matth�us
>
> The expected result should be: Matthäus
>
> So the result is issues with German Umlaut characters. I only have
> this issue on Windows, though – the Umlaut’s are returned
> correctly on Linux.
>
> The last SWORD revision I’ve been using without this issue is SVN
> Rev. 3747 (from May 18th 2020).
>
> This would be a showstopper for me if it does turn out to be an
> issue in SWORD.
>
> Best regards,
> Tobias
>
>
> --
> Sent from my Android device with K-9 Mail. Please excuse my brevity.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://crosswire.org/pipermail/sword-devel/attachments/20201003/96c35f0e/attachment-0001.html>
More information about the sword-devel
mailing list