在Firefox +行为的源代码中,有6个选项卡的硬编码限制:CtrlTab
/**
* Ctrl-Tab panel
*/
var ctrlTab = {
maxTabPreviews: 6,
//...
for (let i = 0; i < this.maxTabPreviews; i++) {
previewsContainer.appendChild(this.makePreview(false));
}
//...
不是很多 除了从源代码进行完整构建以改变此行为之外,还有其他方法吗?
我不是要寻找一种解决方法或附加组件,例如,它可以显示选项卡的替代列表,我真的很想找出是否存在一种与放置效果基本相同的方法,maxTabPreviews = 10
而不必编译自定义版本的火狐浏览器。就像userchrom.css一样,它可以覆盖某些样式元素,但随后可以覆盖某些代码。
据我所知,下面介绍的警告解决方案对我来说没有任何缺陷,但是YMMV请自担风险。
谢谢harrymc给我的帮助。您的评论说该字符串在Firefox中不存在,使我认为确实不可能将源中的所有.js文件都放在firefox.exe中,因为这样做的目的是缩小该文件的大小。因此,我在应用程序目录中查找了它们的位置,发现它们被压缩在一个omni.ja文件中。使用解压缩文件
unzip omni.ja -d omni
给出了一个目录结构,其中包含所有JavaScript / HTML / CSS等omni/chrome/browser/content/browser/browser-ctrlTab.js
。耶!所以我将文件编辑为使用8而不是6,然后按照使用说明再次压缩
cd omni
zip -qr9XD omni.ja *
但是,生成的文件比原始文件小约2.5倍,因此我认为firefox如今并没有9
用作压缩级别0
。确实
zip -qr0XD omni.ja *
产生的文件大小几乎与原始文件大小相同。使用7zip测试原始omni.ja时会说“警告:有效负载数据结束后还有一些数据”,因此可能是罪魁祸首。
firefox -p
为了安全起见,Anwyay用新的omni.ja替换了原来的omni.ja,为了安全起见,我用它来启动新的配置文件,我很高兴看到现在确实有8个选项卡。使用12个选项卡再次重复相同的操作,截图:
缺点很明显:每次更新后都可能需要重复此过程。但是,除非附加组件可以访问所有内部组件(这是接下来要研究的内容),否则它可能是唯一的方法。改进将是呈现多行而不是一行。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句