Author Archive for harry

推荐一个Vim插件 vim-addon-manager

vim-addon-manager 是一个非常有用的插件,至少对我来说是这样的,看名字就知道是用来管理vim插件的,用它可以在vim里快速的安装其他插件,就像在linux里通过软件包管理工具安装软件那样方便。

不过我用这玩意的最大原因不是因为可以方便的安装插件,而是它可以让你把vim的每一个插件都放在一个独立的目录下,这样就不会和其他插件的文件混在一起了。

想想以前,要装个新vim插件,就是下载下来解压后往.vim目录里一扔,然后所有插件都混在一起,什么plugin了,autoload了,ftplugin了等各个目录里混杂着各种插件的文件,时间久了到底装了多少插件都不知道,想干净的删除一个插件要费老大力,因为删除plugin目录里的文件后可能在其他目录还有一些文件。

现在有了这个工具,我删掉了用了多年的.vim目录,重新整理了一下,每个插件一个单独目录,添加删除非常方便,哈哈。

这是以前的.vim目录,所有东西都混在一起

现在的,多干净,哈哈

所有插件都放在addons目录里,每个插件单独放在一个子目录中,这个addons目录的位置是可以配置在vimrc里的,这样再多插件也不会混乱啦,哈哈。

插件地址  http://www.vim.org/scripts/script.php?script_id=2905

具体如何配置使用可以看这个地址 http://github.com/MarcWeber/vim-addon-manager/blob/master/doc/vim-addon-manager.txt

一个git管理的小应用 (希望有人来一起开发..)

git是一个非常不错的版本控制软件,如果需要一个可以远程push代码的地方,开源软件可以选择像github这样的网站,如果是自己的私有代码,也可用利用一台比如linux的服务器,几乎不用什么配置,只需要支持ssh就能往上面push代码。

但是如果是一个小型团队,可能就要涉及到一些权限的控制,还有考虑版本库建立还有查看的易用性。

之前我用过gitosis,这是个不错的git管理工具,有基本的权限控制,不过所有的操作都是需要登录到服务器后使用命令行进行,对于一个人的东西当然没什么问题,但是如果这个服务器服务于多人,那么其他人想建立一个仓库的时候就必需联系管理员或自己登录上去操作,这样对命令行不熟悉的人不太方便,如果可以像github那样通过web界面来操作的话那就很方便了。

于是我就基于django框架写了一个小小的应用,可以通过web界面来建立git仓库,并且有一些很简陋的权限设置。
Continue reading ‘一个git管理的小应用 (希望有人来一起开发..)’

我用过的浏览器

最近在twitter上看到有人说起GOSURF浏览器,我一看突然想到这不就是我用过的多标签浏览器么,然后就想到了我用过的所有浏览器,说起来还真是折腾阿。

IE6

接触电脑比较晚,买的第一台电脑一开始居然装了个windows me,自然也就用上了这个邪恶的东西。。。

GOSURF

之后不久就接触到了只开一个窗口,然后在里面用多个标签来浏览不同网页的浏览器,用的第一个就是GOSURF,用起来挺不错,很轻巧速度也很快。

GreenBrowser

自从用上GB后,浏览器的功能对我来说就不再是单一的用于浏览网页了,换用这玩意正是因为GB有着丰富的功能,什么天气预报,下载flash等一堆乱七八糟的小工具按钮,点下就能完成一些常用任务,还真挺方便的。

The World

换用这个浏览器好像是因为在学校的时候看了某电脑杂志里面介绍了The World开发团队,然后试用了下感觉不错,就用了段时间,其实那时候tw和gb都差不多,tw的界面稍微豪华些,似乎毕业后工作了还在用,一个目录打包就能带走,到其他电脑上解压就可以用了。

Firefox

这个应该是我目前用过时间最久的一个浏览器了,其实在学校就知道这东西了,当时试用下来感觉也不错,不过似乎速度比较慢,后来换了电脑配置好了些,就逐步的开始用FF了,各种插件真是让我捣腾了不少时间,随着后来转到linux内核的系统下学习,更是完全放弃了基于ie的浏览器。

Google Chrome

chrome刚出来的时候我认为基本对我没啥诱惑,我感觉我今后都会一直用ff了,不过随着chrome插件机制的引入,并且安装卸载插件都不需要重启,当然各方面的速度更是完全超越了ff,于是今年的早些时候我又把主浏览器换成了chrome,开ff基本上就是为了用firebug。

——————

这几个是我在一段时间内用过的主浏览器,目前用着chrome,真是太折腾了 哈哈,不知道以后还会有什么革命性的浏览器出来让我再换换。

今天逛了下Apple Store

哈哈 下午在外面想起来今天正好是apple store在上海开张,就去逛了下,果然不错阿,人真是非常多,进去还要排队一批一批的放行,赶上s. b.会了 – -

不过我其实很想进去看看试用下传说中的ipad和iphone4,不过都没看到,这个有点失望阿。

玩了下imac和mbp,magic mouse我似乎用的还不怎么习惯,新的mbp真是非常爽, 触摸板的设计非常人性化,基本可以忘记鼠标了,真想抱一台回去阿,不过实在太穷了,只能看看就好。

由于没带相机,就用手机拍了一些*图片*,基本还是能看清里面是啥东西。。。。


店员非常兴奋,只要有人买了东西出来,他们就会抓狂似的欢呼。。。


基本每台机器上都有ps和一些adobe的软件,不过我都不会玩,想找flash没找到,我想就上adobe去下个cs5,顺便看看网速咋样,flash cs5的mac版是1.6G,一开始下载速度达到了1m多每秒,后拉就慢下来了,我就不等了放着让他下载就走了,不知道这算不算恶搞- -

其他所有图片

利用GAE来发送git push的通知

如果想要在git push后自动通知团队中的其他成员,可以利用git的hook脚本,git源代码里 contrib/hooks/post-receive-email 就可以直接用来发送邮件通知。

如果觉得邮件还不够即时,可以试试利用gae发送通知到gtalk上,google提供了很方便的api,可以通过部署在gae上的程序发送xmpp协议的即时消息。

我无聊写了个这样的小程序,放在github上了,用的是Python版的GAE SDK。

使用方法:

下载后,先把gae目录中的程序部署到gae上,然后可以访问 domain/sendim/invite 向所需通知的用户发一个邀请,然后可以访问 domain/sendim/demo 测试下消息是否能够正常发送。

接着将scripts目录中的post-receive-im链接到git服务器里指定仓库的hooks目录中,名为post-receive,post-receive-im这个是我直接在post-receive-email里改的 – -

最后修改git服务器仓库目录里的config文件加入下面的内容

[hooks]
    # 要通知到的用户的gmail,如果有多个用空格分开
    jids = xxx1@gmail.com xxx2@gmail.com

    # 就是刚才部署的那个gae的地址
    imurl = http://xxxx.appspot.com/sendim

这样弄完,push后应该就会收到消息了, svn hg等应该都可以用类似的方法实现一个通知,利用gae真的是可以玩出很多花样阿,哈哈。

目前只弄了一点点,如果谁有兴趣,欢迎加入一起改进阿 :)