Simple Process with Mercurial Build-in Server

在putty里面用vim用够了,于是在远端机上弄了个Hg的版本库,平时在本机做开发,然后写完直接push到远端编译。不想折腾太多的东西,所以就用的是Hg自带的web服务器。首先在远端某个目录里面新建一个Hg版本库

hg init

然后就可以在远端开服务了,为了少惹麻烦,用了个3456的端口

hg serve -p3456

然后在本地就可以找个目录直接把那边的东西拷过来了

hg clone <host> <local_dir>

使用hg clone的好处是在目录的.hg/hgrc文件中已经存放有默认提交/连接的地址,以后在使用hg pull或者hg push时不需要额外提供地址了。

[paths]
default = <host>:<port>

在本地做过修改后,需要check in到版本库中才能成功的被push到远端。如果不加-m参数则会弹出一个编辑器让你输入log

hg ci <-m "log message">

在push的时候需要注意一个问题。为了安全起见,在默认情况下,Hg对于push是有一些限制的,首先需要SSL,其次需要提交改动的用户有权限。不过由于是自己使用嘛,所以可以在Hg的配置文件中把这两个限制取消,即在hgrc中加入以下几行

[web]
push_ssl = false
allow_push = *

根据自己的需求确定这几行加的位置(全局的配置还是某项目相关的配置)。添加过后即可在本地push改动到远端了。如果那个url已经添加到hgrc文件中,则不需要指定url参数(嗯,适合我这种懒人)。

hg push <url>

在远端此时只是把改动更新到版本库中,并没有把改动真正放到代码中,所以还要在远端运行一下更新命令

hg up

然后,就能编译了,于是一次简单的流程就完鸟。如果在远端有改动,在check in到版本库后,可以在本地使用pull命令把改动同步过来。

hg pull <url>

,

Mask Mouse on Linux

最近折腾个东西,需要把鼠标弄掉,一是不显示,二是对点击事件没有响应。在网上找了找,用了个比较ugly的方法:

不显示

一般的发行版都能找到一个叫unclutter的软件包,这玩意的功能就是在你idle多少秒后把鼠标从屏幕上抹掉,具体效果就像mplayer放电影里让鼠标不见的那样。如果把idle设成0(unclutter –idle 0),那么鼠标就会从屏幕上消失了,不过在移动的过程中,还是能偶尔看到那熟悉的白色箭头

屏蔽响应事件

虽然鼠标不显示了,但是点击事件还是没有屏蔽掉,就是说你去点鼠标,还会是和原来的情况一样。本来想找HAL去直接禁用这个设备,但是在乱逛的过程中找到了xmodmap这个东西,然后也顺便看到了怎么用它去折腾鼠标,就用了。

这个命令可以用来把鼠标的键重新映射到新的行为上去,在它自己的man page里面,可以看到使用 xmodmap -e "pointer = 3 2 1" 可以让鼠标左右键对调,其实就是让按左键的响应从1变成3,而右键的从3变成1。执行下面这条命令

xmodmap -e "pointer = 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1"

把前面的几个按键都给映射到高位上去,这样一般的程序就不会去处理这些个大的响应事件,于是乎就算是屏蔽了事件吧。

就这两条命令,具体的没的细究,有空再看吧。

, ,

2010计划

年头的时候先是被雪堵的没脾气了,再就是疯狂的赶工设计文档,所以这事就耽搁下来了。不过计划还是要列的,趁着今天有空,写点吧,算是对自己做出一份承诺,然后争取去实现~

读书计划

去年列下了5本非技术书的想法,虽然达成了,但是总感觉有些不务正业,于是乎今年列些技术的。其实不多,就两本
1. SICP,边学习这本书边用haskell去折腾之
2. 具体数学,高爷爷的书,当冷馒头啃都不行了,要当石头啃,试试吧。

以我的智商而言,估计这两本书都有难度,能看多少是多少吧,争取看完,然后再去复习复习算法导论。呵呵,看着这计划,自己都怕哇。至于非技术书嘛,找到就看吧,当休闲用。

码农基本功

虽然单位的代码是C++的,但是说真的,实在不想折腾那玩意,太杀脑细胞了,所以今年的计划继续无视之,工作中学习吧(其实是偷懒的借口),嘿嘿。今年的计划也是差不多两个吧
1. 记账软件,大概是BS结构,大概会折腾Flex/Android。嗯,宏愿,做多少看食言的程度 –_-!!!
2. 找个用的人多的开源项目去掺和。类似的愿望在去年也有,只是最后只折腾了一些小patch,残念哇,期望的项目是 Python/CLI 相关的,不想做界面,太累~

游山玩水

这个,不确定性太多了哇,先列上两个吧,可实现度,呵呵,不知道了哇
1. 小五台金莲花
2. 8月份去青海湖看油菜花

差不多了吧,反正这些都够我喝几壶的。平时的工作习惯有太多需要改进的地方,如果改好了,上面的目标还有希望,如果不改或者没改好,呵呵,那就又要长胖了~

Set local dir as yum repo

新装的RH52,装软件的时候想用yum解决依赖关系,看帮助没找到zypper里面的ar,只好去改配置文件。

按着/etc/yum.repos.d下的一个.repo文件改了一下,其实也简单,只需要提供名字,baseurl,就差不多了,文件如下:

$ cat local.repo
[local repo]
name=Repository on lldev
baseurl=file:///XXX/YYY/ZZZ
enabled=1
gpgcheck=0

需要注意的是那个baseurl下需要有一个目录叫repodata,里面要有个文件repomd.xml,这样才能被yum认出,我用的是光盘目录下的Server目录。比较不爽的是这个baseurl只支持http/https/ftp/file,想用nfs啥的都没门,只好mount了~

Auth ssh with keys

每次配都要找一堆网页,最后郁闷了,所以在这记上一笔。环境是两台新装的机器,ssh客户端和服务器都安装上了,配置用的默认的。分为两台机器,C表示客户端,即发起ssh连接请求的机器,S自然是服务端了…

  1. S: mkdir ~/.ssh # create the directory for keys
  2. S: chmod 700 ~/.ssh # 必需滴,要不然不起作用
  3. C: ssh-keygen –d # generate dsa key, the type is changable
  4. C: cat ~/.ssh/id_dsa.pub | ssh user@host “cat – >>.ssh/authorized_keys” # copy the keys to remote host

好像就差不多了…

2010开年行之风雪夜归

2号在济南美美的睡了一觉,醒来就收到了北京大雪,高速封路的消息。出门后直奔火车站代售处,结果连晚上的站票都没了,只好无奈的走到了汽车站。

车站倒是没有太多的不安,门口咨询台处的小姐一口咬定说发车完全没问题,但是在问到是否安全到达里又完全没有语言了,不过那会得到的消息是高速没封路,心里也安稳了一些。既然准备好坐汽车回去,一行人便开始了囤积吃喝。在忐忑的心情中等到了1点45,终于坐上了回北京的大巴。

Read the rest of this entry »

,

2010开年行之徜徉济南

2号早上索道下山后,转大巴到了济南。本来在泰安还是阳光明媚,不知为何到了济南就变成了一股子阴冷,阴霾的天,冰冷的风,把刚从车上下来的我们冻了个哆嗦。

在济南长途总站想买3号回北京的票,被告知只有下午4点始发的,在我们的再三追问下才知晓,路南路北两个站的票不是联网卖的,于是去路北买到了1点40的车。在订的酒店折腾好行李,几个人开始随便乱转了。

Read the rest of this entry »

,

2010开年行之夜游东岳

终归还是闲不下来,加之一直对91年没看成日出耿耿于怀,于是义无反顾的报了元旦夜走泰山的队。

Read the rest of this entry »

,

继续数落我的2009

2010年的大门已然在慢慢的打开,身后渐行渐远的是2009年的欢声笑语及愁眉苦脸。进门前,回头看看吧,要不然就见不着了~

Read the rest of this entry »

2009,我的户外元年

又见年末,上次的柳沟行应该为09年的骑行划上了一个不是十分完美的句号,而在一周又一周的琐事中错过的一次又次的散步也早早的为我的户外划上了一堆——省略号,不过怎么说,09年也算是我慢慢开始成为新驴的一年吧,所以08算热身,09算开元,嘿嘿。也没废话了,开列吧~

Read the rest of this entry »

, ,