
There are cases (deprecation.cpp for one) where string_utils.hpp is included first, which causes the VGETTEXT/VNGETTEXT definition to use the textdomain-less (a.k.a. forced wesnoth-lib textdomain) overloads of vgettext() and vngettext(), because GETTEXT_DOMAIN has not yet been defined by anything. This again results in strings being looked up in catalogues where xgettext is not adding them. This is a companion for PR #2711 I should've noticed sooner. Without it, there were still cases where interpolated strings would not be translated due to vgettext() using the wrong textdomain for them. I ran a quick scan on the codebase to make sure there aren't any files including formula/string_utils.hpp before defining their own GETTEXT_DOMAIN instead of the gettext.hpp default.
About
The Battle for Wesnoth is an Open Source, turn-based tactical strategy game with a high fantasy theme, featuring both singleplayer and online/hotseat multiplayer combat. Fight a desperate battle to reclaim the throne of Wesnoth, or take hand in any number of other adventures.
License
Please see the wiki for information regarding The Battle for Wesnoth's licensing:
https://wiki.wesnoth.org/Wesnoth:Copyrights
Installing
See INSTALL for instructions on how to build the game from source code.
More Information
For extensive documentation about all aspects of the game, see the official Battle for Wesnoth web site.
A (translated) description of how to play the game can be found in doc/manual/manual.*.html, or online at:
https://wiki.wesnoth.org/WesnothManual
The official Battle for Wesnoth Forums (with over 400,000 posts from more than 20,000 registered members) can be found at: