Stevertus/mcscript

Byte order mark causes compilation error

Nixinova opened this issue · 2 comments

Any scripts that have a byte order mark accidentally added will not compile, with the following error message being produced:

 [Error] Can't handle character: "" (0:0) in file .//data/mb/scripts/map/countdown.mcscript

 .//data/mb/scripts/map/countdown.mcscript was not compiled!

BOM can be removed using something like the following:

.replace(/^\uFEFF|^\u00BB\u00BF/,"");

I can issue a PR doing so later.

@Nixinova I like your idea of replacing the added BOM as per #39 as a 'work-around' to keep things running, so to speak. But I wonder what causes the Any scripts that have a byte order mark accidentally added part in the first place? Maybe someone should look into fixing whatever is the 'cause' that is adding it?

whatever is the 'cause' that is adding it?

It's just a different file encoding type in my editor. Vscode has encoding types e.g. utf8, utf16, utf8+bom etc.