文本文件不包含字符编码信息,因此Firefox无法知道哪个是正确的。通过菜单View→ Text encoding我可以选择适当的编码。我发现每次打开文本文件时都会这样做,因为默认情况下似乎总是将其设置为Western,但是我的文本文件始终是Unicode(UTF-8)。有什么方法可以将默认编码设置为Unicode而不是Western?
文本文件不包含字符编码信息,因此Firefox无法知道哪个是正确的。通过菜单View→ Text encoding我可以选择适当的编码。我发现每次打开文本文件时都会这样做,因为默认情况下似乎总是将其设置为Western,但是我的文本文件始终是Unicode(UTF-8)。有什么方法可以将默认编码设置为Unicode而不是Western?
Answers:
如果更改所有脱机文件(不仅是文本文件)的默认编码也对您有用,那么现在(我不确定自何时起,但它在Firefox 59.0中可以使用)现在可以选择将默认编码更改为UTF -8 in about:config
:将值设置intl.charset.fallback.utf8_for_file
为true。
顺便说一句:防止为在线文件设置默认编码的目的之一是避免指纹。
另请参见关于stackoverflow的类似问题(此处使用实际答案)和unix.stackexchange(对一些基本原理进行有趣的讨论)。
我看不到从更改Firefox 54.0中默认编码的方法about:config
,但是您每次查看页面时都可以从视图菜单中手动更改默认编码(我知道这并不理想)。我也没有看到任何扩展允许您这样做(尽管我确定有人可以做到)。这可能是一项艰巨的任务,但是您始终可以尝试编辑Firefox源代码以允许这样做,然后再对其进行编译。
您可能对此感兴趣,因此您选择的文本编辑器(支持Unicode的文本编辑器)将打开页面源(或txt文件),而不是Firefox来打开页面源(您可以使用control + u打开一个txt文件,显示在当前标签中,或者如果它不是txt文件,则会在您喜欢的文本编辑器中打开网页的HTML源代码。要做到这一点,
about:config
在网址栏中打开。view_source.editor.external
(将其更改为true)和view_source.editor.path
(将其更改为文本编辑器的路径;确保它是完整路径)。然后,它将在文本编辑器中启动带有页面源文本的临时文件(对于文本文件,它是实际的文本文件)。我测试了它,而且效果很好。
明显的问题是,如果您正在查看HTML源代码(如果您习惯单击脚本文件的链接),则无法单击打开源代码中引用的脚本。
似乎另一个版本的Firefox可以一次设置默认编码,但是在Xubuntu的54.0中不存在。
a2ps
或都更喜欢其打印选项vim
,所以也许我的问题是XY问题。