SwitchHosts! 3

2015-12-20

2011年时写了一个切换hosts的小工具SwitchHosts!,2012年时发布了第二版,一转眼3年过去了,在2015年即将结束之时,终于抽空编写了它的第三个版本

 

Logo with title

Capture 1

我在日常开发过程中经常会用到SwitchHosts!,第二版虽然能满足大部分需求,但还是有一些不方便的地方,第三版在功能上主要有如下变化:

允许方案多选

我们日常开发过程中,有时会有很多公用的hosts希望总是生效,第二版的处理方法是提出一个单独的公共方案,但在一些复杂组合的情况下,单独的公共方案常会显得力不从心,于是,这一次索性将方案改为允许多选。自然,这样也就不再需要一个单独的公共方案了。

点击行号快速切换某一行的注释

有时我们只时临时想关闭/开启某一条hosts规则,如果单独将它作为一个方案就有点太重了,手动在行首加“#”进行注释又太麻烦,因此有了这个功能,帮助用户快速切换某一行的注释状态,从而达到关闭/开启某一行的效果。如下图:

click to comment

 

除此之外,第三版的一个很大的变化是技术上放弃了Python + wxPython的架构,采用了MacGap来构建。

之所以放弃wxPython,主要是因为这个UI框架更新比较慢,社区也相对不活跃,我遇到不少问题都无从下手,比如第二版在Retina屏下有一些问题,同时Mac版的编辑区无法使用中文输入法等。最终,我决定在新版本中采用Web技术来开发界面。

一开始,我尝试了Electron,并且做出了一个版本。但Electron生成的程序实在是太大了,无论Mac上还是Windows上都超过了100M。SwitchHosts!只是一个轻巧的小工具,虽然现在用户电脑的硬盘越来越大,但这么一个小工具要占用100M+的空间还是让我觉得不太合适,于是我转而尝试了MacGap。好处是现在的程序只有1M多点,坏处是第三版目前只适用于Mac了,Windows用户暂时只能继续使用第二版。

目前这个版本仍有不少可提升的地方,不过既然它已经是一个可用的版本,那就让我遵循MVP(minimum viable product)原则,先发布,再根据反馈进行迭代完善吧。

最后,贴一下项目主页:https://oldj.github.io/SwitchHosts/。欢迎下载试用反馈建议

知识共享许可协议
本作品采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可。
分类: 编程 标签: JavaScript SwitchHosts! MacGap
前一篇: HTML5塔防游戏小更新
后一篇: 涂鸦之意外

相关文章:

评论:

在 2015-12-29 10:10 写道:

求windows版本

回复
jacky
在 2015-12-31 11:51 写道:

楼主的美工功底很厉害,项目的主页视觉效果很好,期待Windows版本 v3.

回复
sunny
在 2016-01-14 10:06 写道:

有些时候开发,需要的host非常的多,而且一旦更换了。千行里找这一个真是让人奔溃啊。 发现软件里不能模糊搜索。 迫切希望楼主加上这个功能。

回复
oldj
在 2016-01-16 00:20 写道:

感谢反馈。试试 v3.1.1.3039 或更新版?

现在支持使用“*”或正则进行搜索了,比如:

通配符:go*le 可以匹配 google

正则:/go.*le/i 可以匹配 google ,等等。

回复
Samuel
在 2016-01-28 14:08 写道:

特别希望能加入到项目组里一起做,设计狗一枚。主页 dribbble.com/imSamuel

回复
mejustme
在 2016-02-08 23:52 写道:

给力!

回复
daly
在 2016-02-14 12:04 写道:

最近用hosts 方式翻墙,但是把那一堆host信息放进去后,现在switchhosts 界面无法显示了,手动把hosts信息清掉后,依然无法运行软件界面,问题不知道在哪里~~

回复
oldj
在 2016-02-14 17:44 写道:

用的是哪个版本呢?
如果是 Mac 的话,把 ~/.SwitchHosts/ 目录备份、移除,再启动下试试?

回复
daly
在 2016-02-15 16:53 写道:

win 10 系统 程序是0.2.2.1785

回复
hearme1991
在 2017-03-17 16:43 写道:

感谢软件作者,简单实用的小工具。只是如何解决 hosts缓存的问题?总希望 切换后 能立即生效。

回复
oldj
在 2017-03-17 20:40 写道:

这个问题曾经解决过,但是随着浏览器的升级又失效了,暂时还没找到新的方法...

目前在每次切换 hosts 方案后会执行类似 sudo killall -HUP mDNSResponder 这样的系统命令,但现在似乎没有效果了。如果你知道什么能在命令行里执行的清除 hosts 缓存的命令,也麻烦告知一下。:-)

回复
sss
在 2020-09-09 11:48 写道:

打不开下载链接,能不能给个国内能打开的

回复

发表评论:

电子邮件地址不会被公开。 必填项已用 * 标注。