* frontend: Added support for message context to localisations.
* frontend: Added string_view versions of the message lookup functions.
* frontend: Added a few more folder options to the internal UI.
* emu/softlist.cpp: Use more appropriate containers.
* Switched to Python 3 by default - this will become a requirement.
* Updated msgfmt.py for message context support.
* frontend: Show all software item info in the internal UI.
* frontend: Search alternate titles in software selection menu.
* 3rdparty/utf8proc: Updated to v2.6.1 (has several fixes).
* frontend: Added software filters for common info fields.
* frontend: Allow UI manager to hold onto persistent session data.
* frontend: Cache software lists for eight machines.
* frontend: Added support for loading localised system names.
* frontend: Add UI for selecting localised system names.
This effectively reverts b380514764 and
c24473ddff, restoring the state at
598cd52272.
Before pushing, please check that what you're about to push is sane.
Check your local commit log and ensure there isn't anything out-of-place
before pushing to mainline. When things like this happen, it wastes
everyone's time. I really don't need this in a week when real work™ is
busting my balls and I'm behind where I want to be with preparing for
MAME release.
* Change makefile rules to treat mame.pot as a target so rules can depend on it
* Put mame.pot inside the build directory so it will get cleaned
* Couldn't get xgettext to scrape lua and C++ in the same command and still remove stale strings
* Use larger strings and format specifiers to fix some localisation issues
- Issue with "None" lacking context in Russian and Turkish translations
- Issue with "Not implemented" changing depending on the noun in Serbian
- Issues with lua plugins not allowing for languages with different grammar/punctuation
Strings that need to be translated after this change - most of these are existing text that's been made into larger chunks or reworded slightly:
"Mechanical Machine\tYes\n"
"Mechanical Machine\tNo\n"
"Requires Artwork\tYes\n"
"Requires Artwork\tNo\n"
"Requires Clickable Artwork\tYes\n"
"Requires Clickable Artwork\tNo\n"
"Support Cocktail\tYes\n"
"Support Cocktail\tNo\n"
"Driver is BIOS\tYes\n"
"Driver is BIOS\tNo\n"
"Support Save\tYes\n"
"Support Save\tNo\n"
"Screen Orientation\tVertical\n"
"Screen Orientation\tHorizontal\n"
"Requires CHD\tYes\n"
"Requires CHD\tNo\n"
"ROM Audit Result\tOK\n"
"ROM Audit Result\tBAD\n"
"Samples Audit Result\tNone Needed\n"
"Samples Audit Result\tOK\n"
"Samples Audit Result\tBAD\n"
"ROM Audit Disabled\t\n"
"Samples Audit Disabled\t\n"
"Activated: %s = %s"
"Activated: %s"
"Enabled: %s"
"Disabled: %s"
"%s added"
"Default name is %s"
"Cheat written to %s and added to cheat.simple"
"Unable to write file\n"
"Ensure that cheatpath folder exists"
Note that to run make translation you need to patch GNU gettext to support C++14 digit grouping.
See the attached patch here: https://savannah.gnu.org/bugs/?50117