
Pale Moon 浏览器的调教
这篇文章也属于杏川铭心的折腾日记哦!我决定不再在标题前加那几个大字了
其实很久之前折腾诺基亚香蕉机的时候就听说过 Pale Moon 的名字,因为 KaiOS 基于 Firefox OS 嘛,需要用到老 Firefox,不过当时我只是用了 Firefox 52 这个老版本,并没有跑去用 Pale Moon。最近机缘巧合之下又想起了它,于是下载安装一气呵成,产生了这篇文章。
目录
什么是 Pale Moon,或者说它从哪里来
一次 Firefox 更新
曾经 Firefox 有着非常蓬勃的插件生态,这主要归功于 XUL 平台所提供的强大的可自定义性,几乎啥都能改,而且还有 NPAPI 这种基于二进制的接口,并由此催生出了一系列诸如 DownThemAll 之类的优秀插件。彼时的 Firefox 虽然慢,但胜在插件好用,还是收获了非常多的拥趸。
然后 Firefox 57 发布了。
Firefox 57 是 Mozilla 发布过的最重要的更新之一,被称之为 Firefox Quantum 的它奠定了现代 Firefox 的基础,多线程的设计也使得 Firefox 的速度终于赶上了 Chrome,也不会出现一个网站拖垮整个浏览器的现象。但随之而来的是对 XUL 的全面抛弃,转而采用和 Chrome 一样的 WebExtension。
这下部分用户不乐意了,我们用了那么久的 XUL 扩展,说砍就砍了?
彼时的 Pale Moon 还只是一个普普通通的 Firefox 24 的分叉版本,但在这次 Firefox 更新之后,Pale Moon 悄然担起了继续兼容 XUL 扩展的责任。
Goanna 和 UXP
如果简单了解过 Pale Moon 的话可能会听过 Goanna 这个名字,它就是 Pale Moon 所使用的引擎。不过如果只是很粗浅的了解过 Goanna 的话可能会先入为主的认为 Firefox 的老引擎就叫 Goanna,而新引擎叫 Gecko。其实这是不对的。Firefox 的引擎一直以来都叫 Gecko,包括重构后也是。
虽然这导致了此 Gecko 非彼 Gecko 的神奇场面,但不管怎么说,Goanna 并不是什么“老引擎”。恰恰相反,Goanna 到了今天也还是处于积极维护的状态,它更像是描绘了这样一种可能性,即如果当年 Mozilla 没有抛弃 XUL,那么 Firefox 发展到今天会变成什么样子。
至于 UXP,则是 Universal XUL Platform 的简写,Goanna 则是里面的一个组件。
下载和安装 Pale Moon
下载 Pale Moon
说了这么多,Pale Moon 还没下载呢,没下载的浏览器自然就是没什么用的浏览器,因此我们火速前往 Pale Moon downloads 下载。网站的设计很老土,主要是为了兼容非常旧的 IE 版本而特意为之,并不是因为年久失修哦!

不过 Pale Moon 的主战场目前看来还是 Windows 和 Linux,macOS 虽然也打了包,但至少我测试下来是不安装 Flash 和 Java 的,而 Windows 版是有的,因此这里我使用了 Windows 虚拟机进行安装,否则采用传统技术的浏览器不支持传统网站还是过于喜感了。

浏览器本身的设计也是极为复古,和网站本身一样,这都是故意的,毕竟怀旧用户的数量你想象不到。

然后到这个时候我才发现 Flash 什么的是需要另外下载的(汗),之前测试的时候装上就有的唯一原因是那台机器上已经被我装上了 Flash 和 Java。但能装跟压根没有还是不一样的,至少 Mac 的 Flash 是压根没有,Java 8 也是装上了浏览器里用不了。
下载 Flash
所以说我们再来下载 Flash,以防你不知道,有个叫做 Clean Flash 的项目,专门在 Flash 停止维护之后把国内的特供版去掉广告之后制作成安装包,虽然最后一次更新也是很久以前了,但版本依旧比国际版原版更新,而且下载起来也方便,就在 Releases · TCOTC/CleanFlash_Installer。
装的时候注意勾选 NPAPI 插件的选项,不然 Pale Moon 识别不到。

再次打开 Pale Moon,可以看到 Flash 已经安装成功了。

下载 Java
来都来了,那就顺便把 Java 也装上吧,到适用于所有操作系统的 Java 下载下载 Java 8。这里同样下载 32 位版,因为浏览器是 32 位的嘛。

然后 Pale Moon 里面就会出现 Java 的条目了!

调教 Pale Moon
Pale Moon 的默认样式不仅丑,而且还全是英文,默认首页风格也非常格格不入。特别是这个首页,不知道和国内哪家浏览器厂商学的。当然也有可能是跟 Edge 学的,总之我是受不了:

汉化浏览器
Pale Moon 是支持安装中文语言包的,这里我们到 Pale Moon Add-ons – Chinese (Simplified) 下载简体中文语言包。
点击页面最下方的 Install Now,然后在弹窗里点击 Install Now。

不过这还没完,由于 Pale Moon 本身的问题,安装了语言包后不能直接在设置里修改,而是要打开 about:config,并且将 general.useragent.locale 的值修改为 zh-CN 才可以。

改完之后浏览器就变成中文啦,这下看着舒服多了。

另外要提一嘴,Pale Moon 的孪生项目 Basilisk 是没有语言包的,这就是为什么虽然 Basilisk 对现代网站的兼容性更好但我也没打算折腾的原因。
替换默认主页
接下来我们来替换掉默认的主页,选择左上角 Pale Moon 菜单,点击选项。

然后直接把“主页”那一行清空就行了,这样打开的就是浏览器内置的干净主页。

看看效果,世界清净了。

我的话还会把新建标签页也改成这个页面,方法是把新建标签页的动作改成我的主页。注意不是 Pale Moon 起始页,那个用的还是原来眼花缭乱的主页。

美化 Pale Moon
终于到了最激动人心的时刻……好吧或许有点夸张,但这次操作完我们就可以和 Firefox 24 的旧版样式说拜拜了。
还记得我们之前说的吗,没错,XUL 扩展是非常强大的,强大到可以直接替换掉整个浏览器的样式。当年就有很多人喜欢安装各种各样的全局主题,好让自己的 Firefox 显得与众不同。
不过呢 Pale Moon 所提供的大部分主题和默认主题都差不多,也都非常复古;但有一个主题,叫做 Photonic,它可以把 Pale Moon 变成和 Firefox 57-88 差不多的 Photon 样式。

不过因为 Photon 和 Strata 主题差异过大,所以需要进行非常多的修改。
移动标签页到顶部
虽然只是一个不起眼的小改动,但这其实是现代浏览器和传统浏览器之间差异最大的一个设计。在 Chrome 提出这个设计之前几乎所有的浏览器都会把标签页放在下面,比如老 IE 啦、老 Safari 啦,当然也包括老 Firefox。Pale Moon 默认也是标签页位于书签栏下方的,好在我们可以手动改成上方。
右键标签页栏,勾选标签页置顶。

可以看见感觉马上就不一样了。虽然界面没变,但我们的 Pale Moon 已经悄然带上了一丝现代感。

安装 Photonic
其实做完这个改动之后就已经可以安装 Photonic 并且取得不错的效果了,那还等什么呢,赶紧安装吧。
链接:Photonic
安装全局主题需要重启浏览器,Pale Moon 会自己弹出提示让我们重启,点立即重启就行了。

然后你会惊叹这真的是同一个浏览器吗。

很遗憾(遗憾在哪),这就是同一个浏览器。XUL 神力我的宝贝。
安装 Home Styler
不过这样的话会有一个问题,那就是我们的主页,仍然采用的是复古风格的样式。Photonic 主题其实自带了首页样式,但如果不安装插件的话,主题是没办法修改首页的,这就需要我们安装一个叫做 Home Styler 的插件。

链接:Home Styler
装完之后就可以看见首页也变成了现代的样式,除了那个雷霆搜索图标,很遗憾这是个 Bug,很快我们就会安装另一个插件来解决这个问题。

安装 Toolbarize Menu Button
到目前为止我们的菜单栏还是在左上角 Strata 风格的位置,如果不解决掉它的话那么我们的浏览器就只能用上 Strata 风味的 Photon 主题,总归是不太顺手,好在 Toolbarize Menu Button 可以解决这个问题,它的功能是把菜单按钮变成和现代 Firefox 一样的独立按钮。
装这个插件的话不需要重启,装上就有效果。

安装 Stylem
Stylem 是一个兼容用户样式的插件,但除了能给网站添加样式外,它还支持给浏览器本身添加样式,而 Photonic 主题就有好多这样的能和 Stylem 搭配使用的样式,如果不安装 Stylem,那么主题就还是差点意思;而装了 Stylem,那么就能以假乱真。
链接:Stylem
接下来我们回到 Photonic 的主页,会发现主题给出了五个 Stylem 样式,注意这五个样式不是都要安装,这里我们至少要安装这个样式:Toolbarize Menu Button Integration;那么顾名思义它的作用就是把 Toolbarize Menu Button 那个比较丑的菜单图标替换成 Photon 样式的现代图标。

然后是一个重量级样式:Protonic Pack,这个就要安装个人喜好来决定是否要安装了,它的功能是把主题进一步修改成 Proton 的样子,没错就是 Firefox 刚刚换下去的那个 Proton,我的话是故意没有安装,因为我觉得 Photon 更好看,但如果你更喜欢 Proton,那么一定要安装这个样式。

然后此时我们会发现首页的搜索按钮还是很雷霆的样子,好在搭配 Home Styler 和 Stylem 后,我们可以很轻松的编写一个用户样式来修复这个问题。
/* ==UserStyle==
@name Fix Search Icon
@namespace fix-search-icon
@version 1.0.0
@description Fix search icon on about:home
@author Meishin
==/UserStyle== */
@-moz-document url("about:home") {
#searchLogoContainer > * {
margin: 7px -52px 7px 26px !important;
}
#searchEngineLogo {
width: 28px !important;
min-width: 28px !important;
}
}这时我们刷新首页,搜索图标就恢复了。以及不要问我为啥上面的代码没有语法高亮,问就是没装 CSS 语法解析器。

安装常用插件
到这个阶段,虽然浏览器长得是好看了,但苦于 Pale Moon 本身只兼容 XUL 插件,不支持现代的 WebExtension 插件,直接打开 Mozilla 的插件市场肯定是不行的。不过有两款常用的插件 Pale Moon 官方已经帮我们做好了适配,那就是 uBlock Origin 和 Greasemonkey。
uBlock Origin
其实 uBlock Origin 官方直到一年前还在维护老的 XUL 版本,这让我是有点意外的。另一方面,Pale Moon 的引擎因为经过大改,对原来的旧 Firefox 插件兼容性不一定有那么好,因此这里我们要安装官方推荐的适配版本。
链接:Releases · UCyborg/uBlock-for-firefox-legacy
装上就能用,也不需要重启。

Greasemonkey
Tampermonkey 的话因为本身不开源所以没办法适配(最后一个开源版是 2.9)。
链接:Releases · SecondCityOsD/greasemonkey-for-UXP-browsers

Palefill
这是一个给 Pale Moon 添加 Polyfil 的插件,可以在一定程度上改善 Pale Moon 的兼容性。
Classic Add-ons Archive
一个专门收集经典 XUL Firefox 插件的仓库,可以作为插件安装到 Pale Moon 上。
链接:Releases · JustOff/ca-archive
这里有必要说明的是 Pale Moon 的应用程序 ID 和 Firefox 是不一样的,理论上 Firefox 的经典插件不能直接装到 Pale Moon 里面,但是 Pale Moon 对代码进行了一些修改,只要识别到 Firefox 扩展那么就会对该扩展启用兼容模式并且向扩展报告自己是 Firefox。虽然这样能让扩展运行起来,但不一定能 100% 兼容,所以最好还是在官网上寻找原生适配 Pale Moon 的插件使用。比如 DownThemAll! 插件就不推荐使用,如果需要其功能的可以换用针对 Pale Moon 维护的 GetEmAll!。

所以 Pale Moon 的兼容性到底怎么样?
比较意外的是 Pale Moon 的兼容性还可以,特别是国外网站,反倒是国内网站兼容性不太好,特别是 B 站,用 Pale Moon 打开的话会直接告诉你浏览器太老不能打开。不过也能理解,毕竟是外国人维护的嘛,优先针对外国网站优化也情有可原。可惜这意味着目前我还没办法把 Pale Moon 替换为主力,只能用 Flash 和 Java 来怀旧。
截图我就不放了,以下是我测试过的所有网站:
- Google:界面有小 Bug,但可以正常使用。
- Bing:几乎完美。
- 百度:几乎完美。
- Reddit:几乎完美。
- Discord:几乎完美。
- 知乎:几乎完美。
- GitHub:代码页存在比较严重的问题,无法正常使用。其余页面相对正常。
- B 站:打不开,提示浏览器过旧。
- YouTube:有 Bug,右下角小窗无法完全关闭,但可以正常使用。
- Discourse:提示浏览器过旧,只能打开纯 HTML 页面。
- WordPress:登录界面有 Bug,但可以正常使用。
- Writefreely:几乎完美。
可以看到兼容性还是不错的,但终归比不上现代浏览器。在 html5test.co 里运行测试,得到了 478/588 的分数,和 iOS 10 的兼容性差不多。

只能说还是看 Pale Moon 维护者还能把这款浏览器玩出什么花吧,目前阶段下,用来怀旧可以,在国内当作主力是略有吃力的。
