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 ///