Fixes
- The retry that runs when the browser rejects a file name ("illegal characters" in Firefox, "invalid filename" in Chromium) now replaces only the characters the browser refuses (
\ : * ? " < > |, plus%in Firefox, and; + = [ ]on Android), using the replacement configured for that character or the replacement character, instead of swapping all eleven replaceable characters for their fullwidth lookalikes (#2019, #2022). Removing the rows of the "characters replaced in file names" table now yields_, as the former JSON edit did, and+is no longer turned into+when another character caused the rejection.