Mathias Michaelis wrote:
> >> + Another possibility is to use the gnuwin32 port of gettext. This is
> >> + recommended especially if you use already gnuwin32 tools to gunzip,
> >> bunzip,
> >> + patch etc. these files. You find the gnuwin32 version of gettext here:
> >> +
> >> + http://gnuwin32.sourceforge.net/packages/gettext.htm
> >> +
> >> + Yet another very strait forward way is to get the sources of gettext from
> >> +
> >> + http://www.gnu.org/software/gettext/gettext.html
> >> +
> >> + and build your own version of these tools. The documentation states that
> >> this
> >> + should be possible with MSVC4.0, MSVC5.0, MSVC6.0 or MSVC7.0, but you can
> >> + build it even successfully with MSVC8.0.
> >>
> > Did you try these versions? I recall there were problems with some
> > ported versions of gettext and tools, but perhaps these are fixed by
> > now.
>
> Yes. I do all my work with gnuwin32. I once compiled gettext with
> the Visual C++ Toolkit, and yet it works well. With the new Visual
> 2005 Express Edition (VCEE) you must handle the .manifest files in a
> similar way as in one of my patches of gvimext.dll. But I didn't
> make expensive tests with the gettext package compiled by VCEE.
OK, I'll include it then.
> The gnuwin32 version as well as the version I once compiled with VC
> Toolkit of the msgfmt tool has one little problem: I can
> successfully compile all po files of Vim to mo files -- with one
> exception:
>
> msgfmt -o "vim\vim70\src\po\ja.sjis\LC_MESSAGES\vim.mo" \
> "vim\vim70\src\po\ja.sjis.po"
>
> says:
>
> vim\vim70\src\po\ja.sjis.po:61:23: invalid control sequence
> vim\vim70\src\po\ja.sjis.po:208:18: invalid control sequence
> [...]
> vim\vim70\src\po\ja.sjis.po:1544:34: invalid control sequence
> vim\vim70\src\po\ja.sjis.po:1566:20: invalid control sequence
> msgfmt: too many errors, aborting
>
> But since the official vim70lang.zip file also doesn't contain a
> ja.sjis language I thought this behaviour of msgfmt is normal. When
> I run the Vim version compiled myself on a German computer, all
> menus and messages are German.
There is an encoding, and I think it's sjis, that may use the backslash
in the second byte of a double-byte character. How this is handled
inside a C string is ambiguous. The meaning of the string may actually
change when using a different environment while compiling. When used as
the format string for printf() this may cause a crash. Very annoying
and totally unexpected for western people.
In my opinion the string should be handled as-is, thus the backslashes
need to be doubled to avoid their special meaning, but in some C
standard this changed (so that people using this encoding can type their
characters directly). That's a convenience issue against possible
crashes...
--
Close your shells, or I'll kill -9 you
Tomorrow I'll quota you
Remember the disks'll always be full
And then while I'm away
I'll write ~ everyday
And I'll send-pr all my buggings to you.
[ CVS log "Beatles style" for FreeBSD ports/INDEX, Satoshi Asami ]
/// Bram Moolenaar -- [EMAIL PROTECTED] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ download, build and distribute -- http://www.A-A-P.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///