1.  插件推荐

FireFox的强大在于稳定的内核以及众多的扩展。http://wiki.mozcn.org/kb:firefox:extensions 给出了常用的扩展插件及简单功能说明。另外在Firefox 附加组件 收藏集还按照用途整理了常见的插件集合。

1.1  已使用的插件

  • Tab Utilities Fixed:火狐 42.0 之后,很多标签栏管理的插件都出问题了,这个版本还是能正常工作的。可以说几乎提供了标签栏管理所需要的一切~
    • Tab Mix Lite CE:Tab Mix Plus的社区简化版,覆盖了Tablib的功能,能够加强很多标签栏的功能,并且可以恢复以前浏览的所有页面,非常好用的插件;好像和SessionSaver和Tab Clicking Options冲突,造成某些标签页关闭不了。
    • SuperTabMode:增强标签管理的轻量级插件。在 Tab Mix Lite CE 迟迟不支持 Firefox 3.6 的情况下,就干脆用这个替代了,主要是要它控制标签打开位置、以及重新打开关闭的标签这两样功能。
  • BarTab:过一段时间不看能自动释放网页资源的插件。对于像我这样同时开着好几百个标签页的人是必备的,可以避免浏览器同时开启的页面太多而崩溃。
    • 后来 BarTab 的开发者加入了火狐官方,插件就不更新了,可以用BarTab Lite X来代替。
  • FlashGot:在Firefox中用Flashget打开链接下载的扩展;
  • Right Encoding:在右键菜单中选择当前页面编码的扩展;
  • SuperDragAndGo:可以通过拖动一个链接来打开一个网页。
    • 经常跟不上Firefox 3的版本更新速度,因此在Firefox 3下面暂时使用Easy DragToGo或者QuickDrag来代替。
  • downTHEMall:用来下载一个页面包含的全部链接,并且支持类型过滤等选择特性的插件。如果在Linux找不到适合与FlashGot插件搭配的下载管理器则推荐使用这个。
  • ScrapBook:帮助收集管理网页的插件,可能能完成跟Maxthon的页面组类似的功能。
    • 如果嫌ScrapBook更新太慢,可以考虑改用它的一个分支ScrapBook+
  • 跨浏览器书签同步:
    • Bookmark Sync and Sort:通过FTP或者WebDev界面同步收藏夹的插件。配合BookKit提供的服务,可以实现任意操作系统、任意浏览器之间的书签同步(在1.5.1之前的版本一直是使用Bookmarks Synchronizer 3)。
    • 配合Google Bookmarks服务的GMarks或者Firefox Google Marks,分别使用侧边栏和FireFox功能菜单的界面进行组织,IE则可以配合最新版本的Google Toolbar访问同一服务。
    • 配合del.icio.us服务的Foxylicious,采取直接与Firefox书签同步的方法。
  • MAF:使FireFox可以像IE保存网页为MHT那样将网页保存成一个独立文件。(插件官方更新比较停滞,但可以参考这里的办法解决与Firefox高版本的兼容性问题)
  • Mouse Gestures:使FireFox支持鼠标手势的插件。
  • IE Tab:将IE作为FireFox中的一个浏览标签嵌入进来使用,在某些时候会显得较为方便。
  • Fireinput:以Firefox插件形式实现的中文输入法,功能还比较全面。在有时候系统输入法不能正常工作的时候挺有用~
  • Download Statusbar:在浏览器底部显示一个状态栏,可以方便地查看和管理下载项。
  • gladder:对指定列表中的站点自动使用代理访问,因而利用这个插件可以正常访问Google网页快照等。当然也可以考虑用Firefox上的Tor插件来完成类似的功能。不过Tor与gladder都谈不上100%稳定,因此也许二者混用也是不错的做法。如果gladder使用过程中碰到问题,可以参考这里的置顶信息。
  • Flashblock:默认不执行页面上的Flash,而是留一个占位方框,点击后可执行显示Flash,能够显著降低cpu占用率。
  • Adblock Plus:智能屏蔽广告,能够显著降低cpu占用率及内存。初次使用要订阅过滤规则列表,可以在这里找到适合所在国家的规则发布点。(曾经是Adblock的分支,现在反倒是Adblock的作者没时间更新,只剩下Adblock Plus还在积极发展。)
  • Greasemonkey:允许额外载入一些定制的Javascript来扩展网站的功能,可以认为是一种开发超轻量FireFox插件的办法。以下是一些我比较感兴趣的插件:
    • GoogleTagCloudMaker:自动在Google搜索结果的右边生成标签云(tagcloud,覆盖了原来的赞助商广告),鼠标停留在某个标签上,就会把含有此标签的搜索结果显示在最前面。不过似乎有问题,在我这儿总是在标签云的位置什么都不显示。
    • Linkify ting:自动把一个 URL 地址变成可以点击的链接。
    • Textarea Backup:文本框备份。你每按下十个按键、每十秒、文本框失去焦点(就是一闪一闪的竖线状光标在文本框中消失的时候),该 addon 会自动备份一次。当文本成功提交到服务器时,保存的文字会自动删除。会自动还原的哦。总之就是用来防止浏览器崩溃丢失编辑内容的,个人体会似乎FireFox 3.0以后其自身已经带有这个功能了,要么就是上面的某个插件的效果。
    • Google MP3:调用Google的Flash播放器来放网页上的mp3(本来这个播放器是在Gmail中用来播放mp3附件的)。
    • Full entry content in Google Reader (in firefox):给 Google Reader 增加全文模式的脚本集。这样如果 RSS 自身没提供文章全文,Google Reader 可以去预取过来。
  • Screengrab:Firefox的网页截图插件,可以直接存为图片文件,也可以复制到剪贴板。能够保存整个网页,也可以仅保存当前显示的部分。
  • MM3-ProxySwitch:方便地切换代理的插件,我通常用它配合SSH Tunnel来使用。
    • AutoProxy:比手工切换而且影响全局的 ProxySwitch 更方便,可以设置规则自动在需要使用代理的时候使用而不影响其他页面。更棒的是,插件还可以自动下载整理好的代理规则列表。
    • FoxyProxy Standard:AutoProxy 后来不大更新了,应用了代理规则的网页需要刷新好几遍才能显示出来,而且 https 协议的页面也响应特别慢。FoxyProxy 就没有这些问题。
  • Ease Link:解码迅雷、快车、纳米盘等等专有协议链接的插件,解码以后应该就可以利用通用下载软件来下载了。
    • 不过注意!这个插件很吃 CPU 。。

1.2  还未使用的插件

  • It's All Text!:可以非常方便地调用外部编辑器(比如 Vim)来编辑浏览器文本框中的内容,对浏览器上的大量文本写作非常有帮助。
  • Google Browser Sync:Google提供的同步FireFox浏览器之间的所有设置(收藏夹、保存的密码、开启的Tab等)的插件。
  • Prefbar:强力插件,在一个文本工具条上提供众多的功能;
  • Single Window:单窗口使用Firefox。全部的链接都使用Tab打开;似乎高版本的FireFox或者其他某个插件已经提供了这个功能,所以这个插件也不再更新了。
  • SessionSaver:保存关闭时的所有打开页面状态,再次启动时恢复所有打开的页面,对保存网页的浏览状态非常有用(比如关机时事情没做完或者FireFox不幸崩溃了)。
  • FireFTP:给予FireFox实现的FTP客户端,我在试用。
  • Tab Clicking Options:提供关闭全部标签等与浏览器标签页有关操作的扩展。
  • Tablib:可以让新打开的标签页显示在当前标签页后面而不是所有标签最后的扩展,可惜这个插件的下载地址找不到了。
  • Tabbrowser Extensions:提供很多控制浏览标签的功能的插件,比如拖动来调整标签的位置等。
  • Fasterfox:通过调整Firefox一些内部设置,更好地适应主机当前的配置和网络环境情况,从而提升Firefox网页浏览体验。
  • CHM Reader:阅读CHM文件的Firefox插件,能够将在阅读的CHM添加到Firefox书签。
  • Pearl Crescent Page Saver Basic:能够自动滚动窗口保存整个网页或仅仅保存网页可见部分为图片的插件,并支持缩放。
  • NoScript:默认禁用所有网页脚本,使浏览器更快更安全。
  • User Agent Switcher:能够比较容易地修改浏览器的用户标识,这样可以伪装成别的浏览器,或者伪装为搜索引擎查看一些论坛的内容。
  • Ghostery:用于保护用户隐私,发现追踪我们上网行为的公司用的插件(原理是插件可以发现和关闭特定行为追踪公司的记录)。

1.3  辅助网页开发的插件

  • Web Developer:会给 Firefox 增加一个新菜单,提供很多方便的开关调整浏览器缓存、 Cookie 等,并且可以非常方便地查看页面元素列表、源码等。 Web 开发必备。
  • Firebug:帮助实时调试 CSS、HTML、JavaScript ,Web 开发必备。
  • HostAdmin:切换 hosts 设置的插件,前端调试时经常要切换线上主机和开发测试机,用这个插件折腾非常方便~
  • Tamper Data:记录并修改HTTP、HTTPS的Header、GET、POST请求等信息的插件,可以用来帮助分析网站页面的参数接口。
  • HttpFox:HTTP协议的嗅探器,记录浏览器所有的HTTP输入输出请求,同样可以用来帮助分析Web界面的参数接口。
  • DOM Inspector:这是Firefox默认自带的一个插件,能够动态显示当前页面的DOM结构,在编写操控页面内容的Javascript代码是非常有用。
  • JavaScript Debugger:Firefox中用来调试Javascript的插件。
  • SQLite Manager:提供完整的SQLite数据库管理界面,挺有意思的插件。

1.4  比较古怪的插件

  • SamePlace:在侧边栏提供一个窗口供使用即时消息的扩展,支持Gtalk、Jabber、MSN、AIM等等。
  • ChatZilla:在Firefox上实现的插件形式的IRC客户端,貌似相当成熟了。
  • diigo配合相关Firefox插件,能够实现向网页特定段落添加注释,并且还可以把这个注释共享出去。因此diigo不仅仅是一个网页书签共享工具、不仅仅是一个网页评论工具,而且还是一个互联网社区。

1.5  其他插件推荐文章

2.  技巧集锦

小技巧:

  • 在后退按钮上点右键就有在当前 Tab 里头打开过的网页的列表(也即多步后退选择列表)。
  • 如果想在新的tab页里面打开网页链接(避免出现太多的浏览器窗口),除了右键菜单选择打开方式之外,还可以:Ctrl+左键点击,或者中键点击链接都可以。
  • 比官方帮助更详细的FireFox快捷键列表
  • 在Firefox中可以设置软件显示的DPI,使得页面显示的字体大小等有所变化。如果与系统设置的参数不同,则可能有些网站的显示内容会乱掉,比如163.com的Web界面邮箱。如果将DPI设置为“系统设置”,则浏览器对网页的兼容性会大大体高。

3.  已知问题

3.1  内存泄露问题

网上有人反映2.x及2.x以前的版本在一些情况下会无故占用大量内存。已知的是旧版本的Firefox以未压缩的形式在内存中缓存所有Tab中的图片,于是在访问网络图库的时候有时甚至会把系统中所有内存吃光造成假死状态。。据说3.x对这一点有所改进。

在其他情况下如果出现内存泄露问题,很可能与不完善的插件有关,建议禁用大部分插件或者试试Firefox的安全模式看看是否仍然出现同样的情况。

3.2  高CPU占用问题

如果开启的Tab中包含了太多的Flash,则这些不停播放的Flash会占用大量CPU。可以考虑用Flashblock插件使得Firefox默认不显示Flash而是显示一个占位符,只有点击占位符的时候才显示Flash的具体内容。

其他Firefox本身占用过多CPU的现象似乎主要多见于3.0正式版推出之前的版本中。

3.3  降低CPU和内存占用率的其他办法

如果屏蔽了Flash甚至JavaScript以后对CPU占用率和内存占用情况仍然不满意,还有以下办法可以用(适用于Firefox3):

  1. 在地址栏输入about:config,进入内部参数调整界面
  2. Urlclassifier.updatecachemax项的值改为104857600(Mac和Linux下默认值是-1,这一项的意思是反钓鱼网站功能的url地址库本地缓存大小,-1表示无限大,104857600则是100M左右。默认设置为无限大时就可能因为这个本地缓存数据库太大而占用过多CPU和内存),经试验,这个方法有一定改善效果。
  3. 有人还建议将browser.cache.memory.enable项改成false,不过经我试验改完以后几乎没什么改善,而且这个是浏览器的内存缓存,禁用的话就有可能使浏览器多发出一些本来没有必要的http请求。

3.4  Firefox 4 在 OSX 10.5 下有时启动崩溃的问题

在命令行下启动火狐4会看到错误提示: dyld: unknown required load command 0x80000022 starting Firefox 可参考dyld: unknown required load command 0x80000022 starting Firefox (and others) on Mac OS X 10.5这篇文章的说明来解决。

另外火狐4的 Profile Manager 可以直接用来实现苹果上的多实例启动,具体方法参考Profile Manager

结合以上两条,那么我的火狐多实例启动脚本就变成了下面这样:

 arch -i386 /Applications/Firefox.app/Contents/MacOS/firefox-bin -profilemanager

4.  插件开发界面

有个项目叫pyxpcom,正在和Mozilla集成,用这个将来可以就可以用Python写FireFox插件了^_^

GlossyBlue theme adapted by David Gilbert
Powered by PmWiki