在独立JavaScript (gjs)中定义源编码



[这是一个关于JavaScript不在web/HTML环境中的问题]

是否有一种方法来强制任何特定的(即UTF-8)编码源JavaScript文件在gjs?我面临的问题是,直接从命令行($ gjs test.js)运行的第一个文件被读取为UTF-8,但任何导入的模块都是一些单字节编码,这对于非英语用户来说几乎毫无用处。

我有一个简单的测试用例(字符串包括花哨的非ascii引号)。文件test.js:

print ("test “1”");
imports.searchPath.push ('.');
imports.test2.foo ();

File test2.js:

function foo () {
    print ("test “2”");
}

当测试用例作为$ gjs test.js运行时,它给出以下输出:

test “1”
test â2â

当您使用时,直接调用的文件test.js确实会产生正确的输出,而导入模块中的字符串会乱码。有没有办法使gjs解析导入模块为UTF-8?

实际上,这是gjs中的一个bug,最近已经修复了(可能还没有发布)。有了这个修复,它将工作,而不需要指定编码。

相关内容

  • 没有找到相关文章

最新更新