Another Java Geek

其实我不是geek,我和你一样,我是凡客

正在浏览 Firefox 里的文章

我的浏览器(Firefox)划词翻译词典插件是在StarDict提供的网页插件基础上封装的一个GreaseMonkey脚本,这个小小的划词翻译工具我已经使用两年多了,毕竟是自己封装的自己用,还算方便。最近不知为何,http://www.stardict.cn/一直不能访问(难道被墙了?!),我的划词翻译插件也就相应地不再work了。浏览网页时看到不认识的单词,要想查看它的意思变得困难重重,同时,浏览器加载网页的速度也被大大拖慢,这给我的使用带来不小的困扰。痛定思痛,决定利用金山词霸(金山总该不会被墙吧……)的开放API 重新编写一个浏览器划词翻译工具。 话说知易行难,经过这两天抽空折腾,好歹完工了。这个小工具同样也是一个GreaseMonkey脚本,封装了接口调用和交互逻辑,同任一款网页(浏览器)划词翻译工具一样,使用起来也很简便(个人看法)。 现发布于此,供有需要的人安装使用。 什么?你不会安装?那还是请你自行google吧。 附上一个截图以观其效:

User Agent Switcher是一款Firefox扩展,如其名称所示,它的作用是改变浏览器的User Agent设置。User Agent(简称UA)是当浏览器(或其它任意客户端)访问web上的URL时,向服务器发送的自身识别串,告知服务器自身的类型和版本以及操作系统信息。如我机器上Firefox的UA默认值为 Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5 因为网站服务器会根据UA串识别客户端类型从而返回最适合该终端的内容,比如在PC上用Firefox和在手机上访问google,所得到的页面是不一样的(访问本站点也是如此),所以通过改变UA可以得到不同的体验。此外,对开发者来说,改变UA对于开发测试非常有用,有时必不可少(由于工作关系,于我本人是这样)。 欲了解更多User Agent相关信息,请参阅HTTP协议或自行google。 使用User Agent Switcher切换Firefox的UA非常简便,随时点选,即刻生效。导入功能很实用,从网上下载一个UA列表导入之后,就有了一批UA串可随时切换使用。 重启浏览器之后,UA会恢复Firefox默认值,以前的UA选择会丢失。对我这样的重度用户,每次打开浏览器之后都要重新设置UA实在太麻烦,尽管只是一次点选。我希望User Agent Switcher能够记住我的选择,以便重启浏览器之后,UA能够保持上一次的设置。奇怪的是,在该扩展的Options对话框里,唯独没有这项设置。或许是有这种需求的人实在太少,所以作者没有加入这个选项。 而事实上,该扩展原生支持保存设置这一特性。要开启这个特性,请按如下操作: 在Firefox地址栏,输入about:config回车,找到名为useragentswitcher.reset.onclose的首选项(若没有可自行创建),将其值改为false。 这样,一旦用User Agent Switcher切换一次UA,以后每次打开Firefox,UA就一直保存不变,除非再次切换。

2012将至,气候变化无常。在一天里有雨有雾又有风的情况下,掌握天气预报情况就显得很有必要,虽然预报经常不准。不过像我这样工作时基本不开QQ又不收看天气预报的人,时刻了解天气变化多少有些困难。由于高度依赖浏览器,使用Firefox天气预报插件就是很自然的选择。网上有不少这类插件,不过我自己做了一个简易天气预报,主要是为了熟悉Firefox的插件开发,以便能够编写一些好玩的小工具。 在Mozilla开发者中心,对插件(Pluggin)和扩展(Extension)的定义有明确的区别。其实我采用的是扩展,只是经常习惯于说插件罢了。Firefox扩展使用Mozilla首创的XUL(类似于HTML)和Javascript来编写。XUL是一套基于XML的标记语言,类似于HTML,非常适合于编写桌面应用程序的UI(HTML用来编写WEB应用的UI),包含丰富的界面元素和组件,实际上Firefox浏览器本身的界面也是由一个XUL文档(chrome://browser/content/browser.xul)来描述的。一个扩展的界面是用XUL来编写,并通过Javascript来实现交互和功能逻辑,而这对我来说是驾轻就熟(自我感觉良好中)。 我的简易天气预报界面很简单,只有状态栏上一个panel用于显示天气情况,还有工具菜单下的一个菜单项用于设置城市。实现的功能是:初次安装时提示用户设置城市,扩展在此会尝试检测用户的属地(通过XMLHttpRequest去一个IP归属地网站访问一下即可),设定好城市后,扩展会从中央气象局的官网(weather.com.cn)上获取指定城市的天气预报情况(其实就是访问该城市的天气预报页面,再从页面HTML中解析出天气数据),然后在状态栏上显示出来,目前只是以文字形式显示今天、明天和后天的天气条件和高低温度。 扩展编写好之后,以zip格式打包,并将后缀改为xpi,在wordpress后台上传至服务器,通过虚拟主机的cpanel控制面板添加MIME类型:将xpi后缀映射为application/x-xpinstall,这样就可以提供下载安装了。 这个扩展相当简陋,并且只能在简体中文环境下使用,对得起简易二字了,非商业应用,只是出于个人兴趣所做。另外Forecastfox Enhanced这款天气扩展我也在使用,它可以实时展示天气和温度的变化,支持国际化,的确不错,比我这个好多了。