pentadactyl学习笔记之代理切换

来源:互联网 发布:js怎么训练 编辑:程序博客网 时间:2024/05/17 05:58


使用vimperator有一定时间了,对于基本操作都没有问题。但是有时候浏览网页需要使用鼠标切换代理,于是想自己定义一下命令如何切换。

首先是想到是否代理扩展有内置的函数提供修改? 修改火狐的about:config值切换?

查阅一下别人是如何做的

参考一:

toggleproxy

查看源码发现使用的方法便是修改network.proxy.type

toggleproxy.penta 文件是设置快捷键的

about:config中搜索proxy时发现, 当值为0时是关闭代理,值为1时是开启代理1,值为2时开启代理2。

了解到这一点就好办了

参考二:

Pentadactyl[vimperator分枝]使用心得,期待交流

发现分享的配置有如下内容

    " 开启和关闭javascript或图片

    command! jstoggle -js (function() { var p = "javascript.enabled"; prefs.set(p, !prefs.get(p)); dactyl.echo(p+" is now set to "+prefs.get(p)+"\n") })()    command! imgtoggle -js (function() { var p = "permissions.default.image"; prefs.set(p, prefs.get(p)==1 ? 2 : 1); dactyl.echo(p+" is now set to "+prefs.get(p)+"\n") })()


自己在_pentadactyl文件里设置

    command! proxyon1 -d "设置代理为1" -js (function() { var p = "network.proxy.type"; prefs.set(p, 1); dactyl.echo(p+" is now set to "+prefs.get(p)+"\n") })();

问题基本上解决

对于问题的后续查阅:

配合鼠标手势切换about:config的值

var pref="browser.download.useDownloadDir";var PS = Components.classes['@mozilla.org/preferences-service;1'] .getService(Components.interfaces.nsIPrefBranch);PS.setBoolPref(pref,!PS.getBoolPref(pref));if (PS.getBoolPref(pref) == true){alert('Set to true');}else{alert('Set to false');}

函数很简单但是不知道有什么用

然后在官网上查阅到

nsIPrefBranch:This interface is used to manipulate the preferences data

别人的笔记:nsIPrefBranch 读写配置文件

我复制过来备用吧

//booleanvar ffPreferences = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);var isFirstTime    = ffPreferences.getBoolPref("browser.startup.isFirstTime");var ffPreferences = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);ffPreferences.setBoolPref("browser.startup.isFirstTime", false);//stringvar ffPreferences = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);var ceDefaultHomePage = ffPreferences.getCharPref("browser.startup.defaultHomePage");ffPreferences.setCharPref("foxTab.general.orientation", document.getElementById("foxTab_rdb_orientation").selectedItem.id);//number    var ffPreferences = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch);    ffPreferences.setIntPref("browser.startup.page",1);    var choice = ffPreferences.getIntPref("browser.startup.page"); 




0 0
原创粉丝点击