Treat "editor^The overlays '^Uf' and '^Ufi' are deprecated because ..."
as a having translation hint "editor", and show "The overlays ..." to the
user. This disallows using carets inside the translation hint itself.
Code already reviewed in the discussion in #4359.
boost::locale::generator::add_messages_domain() interprets the slash
specially, interpreting everything after it as an encoding name.
It's not clear to me why providing a textdomain with an erroneous name
like this causes Boost.Locale to throw a boost::locale::conv exception
(invalid_charset_error, apparently) when handling t_strings bound to
completely different textdomain, but if we can avoid the issue
altogether then that's good enough.
Made the legacy implementation skip and warn about these names too even
if bindtextdomain(3) says nothing about slashes having a meaning.
it seems like sometimes libintl.h is needed for LC_MESSAGES so we need
to move that last code that uses LV_MESSAGES out of language.cpp into
gettext.cpp
This includuces an alternative implementation of gettext.cpp. Libintl gettext doesn't seem to support utf8 filenames on windows. Also it causes problems when changign the language on my msvc build. That why i want to use boost locale gettext at least for our windows builds.
This requires boost locale which is introduced in boost 1.48 (That's why i still hesitate to make it the default on all systems).
in 99% of cases the returned value was moved into a std::string anyway. We do this becasue the boost gettext functions also return std::string so it makes replacing them easier.
We want to put all dependencies of linintl.h to getttext.cpp so we can easily replace gettext/libintl with boost locale gettext by replacing that file.
* Wesnoth is distributed under the terms of the GPL version 2, made
that more explicit
* updated the copyright range to 2007
* updated Dave's email adress
* Made serialized data be saved as untranslated. To achieve this, added the
t_string class, which encapsulates a translatable string.
* Completely rewrote the (text) WML parser, making it use a tokenizer / parser
architecture. The parser is now much more strict and validates a WML grammar.
- Change to the WML syntax: pluses are now ignored, spaces are now forbidden
in WML keys
* Rewrote the way the variables are interpolated. There is no more default
interpolation, however, the vconfig class was added, which provides a
variable-interpolating proxy to config objects.
* There is still an important known bug: this is impossible to load textmode
save games now, because the statistics module saves some WML with spaces in
keys, which the parser refuses. I am commiting anyway to respect the string
freeze; the fix for this bug will come tomorrow
Hoping I do not break everything...