* wmlxgettext: Support extracting all textdomains at once
- -o now expects a folder.
- --domain is now treated as an optional filter.
* wmltools/gui/wmlxgettext: Update input handling
- Fix --initialdomain
- Textdomain is no longer mandatory.
- Accept output dir rather than output file.
* wmlxgettext: Improve parser resiliency for malformed files
- WML files with no translatable strings will no longer
crash the script on unbalanced tags (but translatable will).
- .cfg files belonging to man(1) will no longer crash the script.
* Remove stray quotes from textdomain declarations
These are not recognized by the wmlxgettext parser.
* wmlxgettext: Error out on unused #po, #po-override directives
* wmlxgettext: Ignore out of domain #po, #po-override comments
* wmlxgettext: Properly clear pending #po, #po-override on textdomain switch
* Fix misplaced #po comments in DiD, SoF, TSG, Editor
Some of these ugly relocations can be reverted in or after #7570.
* wmltools3: Make the CrossRef class iterable
Removes generator() method.
* wmltools3: Check for warn level on lack of wmlscope: set export
* wmltools3: Support passing a list of file paths to initialize CrossRef
* wmltools3: Track lineno_end for Reference
* wmltools3: Track default values for macro optional parameters
optional_args is no longer a list, but a dict.
* wmltools3: Track macro bodies as Reference.body
* wmltools3: Register quoted macro arguments verbatim
* wmltools3: Improve parse_macroref
- Support parsing nested macro calls.
- Remove excessive need of parens around macro calls/arguments.
- Support escaping quotes.
- Other compliance improvements.
This uses tabs instead of spaces, because although that's not our coding
standard, it is only a few lines of changes.
The alternative of running wmlindent on these files changes 4700 lines.