@paregistrase
ShowHtmlDialog is a standard Spider Monkey Panel utils function. I don't think I have much control over it. According to the docs :
Displays an html dialog, rendered by IE engine.
Utilizes the latest non-Edge IE that you have on your system.
May be TheQwertiest can help with your wine issue.
Options is avoidable since most common settings are on the menu. Other settings are still accessible through panel properties (panel settings) or biography.cfg (server settings [all panel]). Although biography.cfg isn't designed to be user edited, it can be opened in a text editor & carefully changed.
Música seems to be an odd exotic character handling issue. Essentially the combination of saving with .cfg extension and saving without BOM seems to result in utils.ReadTextFile garbling the character. If BOM is used or the extension is .txt (or .json) then it works fine.
Maybe this needs an adjustment within Spider Monkey Panel. However, it can be worked around.
If you're inclined you can change the following.
$.save(this.bio, JSON.stringify($.sortKeys(this.cfg), null, 3), false);
to
$.save(this.bio, JSON.stringify($.sortKeys(this.cfg), null, 3), true);
There are two instances in the settings file:
lines 144 & 414.
This will set BOM to true.
You may need to re-enter Música in biography.cfg to remove the garbled version.
I'll add a fix to the next version if it isn't changed within Spider Monkey Panel.
Test code that demonstrates the issue:
"use strict";
const fso = new ActiveXObject('Scripting.FileSystemObject');
function save(fn, text, bom) {
try {
utils.WriteTextFile(fn, text, bom)
} catch (e) {
console.log('error saving: ' + fn);
}
}
function file(f) {
return fso.FileExists(f);
}
function open(f) {
return file(f) ? utils.ReadTextFile(f) : '';
}
const bio = 'Música';
console.log('TEXT: ', bio);
console.log('Save file using utils.WriteTextFile. Save with or without BOM and with different extensions. Then use utils.ReadTextFile to read the file.');
console.log('RESULT: the combination of extension being cfg & and saving without BOM causes bad handling');
save('z:\\testBio.cfg', bio, false);
console.log('SAVE: BOM false; EXT: cfg; FILENAME: z:\\testBio.cfg; READ TEXT: ', open('z:\\testBio.cfg'));
save('z:\\testBio.cfg', bio, true);
console.log('SAVE: BOM true; EXT: cfg; FILENAME: z:\\testBio.cfg; READ TEXT: ', open('z:\\testBio.cfg'));
save('z:\\testBio.txt', bio, false);
console.log('SAVE: BOM false; EXT: cfg; FILENAME: z:\\testBio.txt; READ TEXT: ', open('z:\\testBio.txt'));
save('z:\\testBio.txt', bio, true);
console.log('SAVE: BOM true; EXT: cfg; FILENAME: z:\\testBio.txt; READ TEXT: ', open('z:\\testBio.txt'));
save('z:\\testBio.json', bio, false);
console.log('SAVE: BOM false; EXT: cfg; FILENAME: z:\\testBio.json; READ TEXT: ', open('z:\\testBio.json'));
save('z:\\testBio.json', bio, true);
console.log('SAVE: BOM true; EXT: cfg; FILENAME: z:\\testBio.json; READ TEXT: ', open('z:\\testBio.json'));