Monthly Archives: January 2011

在bash的Here Document中禁用变量替换

Here Document是很有用也挺好玩的一个东西,当系统中没有编辑器的时候,当在脚本中生成配置文件的时候或者在犯懒不想调用编辑器而快速写入一段文本的时候都能用到。

Here Document最基本的用法就是

gery@eguan-dell:~$ cat > testfile <<EOF
> this is a test
> EOF
gery@eguan-dell:~$ cat testfile
this is a test
gery@eguan-dell:~$

但是之前遇到个问题,就是当要输入的文本中有变量存在的时候,here document会把变量作替换,这样得到的结果就跟预期不同了。在下面的例子中,$PWD被自动替换成了当前路径。

gery@eguan-dell:~$ cat > testfile <<EOF
> current dir is $PWD
> EOF
gery@eguan-dell:~$ cat testfile
current dir is /home/gery
gery@eguan-dell:~$

之前犯懒,没去解决这个问题,而是直接打开vi了。今天有一个同事也问我同样的问题,就顺便搜索了下,发现解决方法还是很简单的。一看就明白

gery@eguan-dell:~$ cat > testfile <<'EOF'
> current dir is $PWD
> EOF
gery@eguan-dell:~$ cat testfile
current dir is $PWD
gery@eguan-dell:~$

也就是在EOF两边加上引号,双引号ms也是可以的。这里还可以看到更多here document有趣的例子。

初步修正n900上maemo-mapper导航偏移问题

上一篇文章中算是基本解决了google map的定位偏移问题,但是看到好多人留言说导航还是有偏移的。因为我还没用到那么高深的功能,所以没注意到这个问题……虽然我不怎么用,但还是试着解决下吧。这里要提醒的是,这个修正要跟上一篇文章中对定位的修正一起使用,也就是把google的tile类型选成XYZ_OFFSET,具体的看那篇文章吧,留言里有人归纳了使用方法。

修正这个问题可没有想象中的简单。首先是浏览代码中与route相关的部分,看看那条路径的线是怎么画出来的,那么在划线之前把数据给修正了就好了。但是后来发现,每移动一次屏幕都要重新划线,这样每次调用那个函数都给增加一次偏移,所以就每动一次屏幕那条线就多偏移一次……很炯。

后来想到还是在得到这些数据之后马上就修正,这样无论什么时候划线使用的都是经过一次偏移修正的数据。经过搜索代码,最后发现google的route功能是通过一个plugin实现的,在plugin/google.[ch]中,那么看来需要修改的文件就是这个了。

又经过3天晚上的努力,给google router增加了一个开关,叫做China offset,选上这个开关就对得到的路径数据进行修正。简单测试的效果还是不错的,路径很准确。但为什么说是“初步”修正呢,因为还有不少bug的。目前已知问题有:

  1. 只有第一条路径是准确的,在不清除当前路径的情况下,再搜索第二条路径,那么得到的结果就是跟没修正是一样的。
  2. 在星图下无论是否修正,结果都是偏移的,也就是目前只修正了google地图下的导航偏移,在google星图和OpenStreet中画出来的导航路线还是不准的(导航本身都是准确的,只是显示的时候没有对上而已)。
  3. 搜索一条线路后,不清除,关闭mapper,重新打开mapper,线路会恢复到不准确的状态
  4. 我不知道它在实际导航时候的效果,也许会有错误。

虽然有这些问题,但目前已经够我用了,等以后有需求的时候再折腾吧。

要使用这个修正,需要在搜索路线的时候,打开Options,勾选最下边的“China offset”,保存设置才可以。算了,这次上两个图吧

在Google router options里把China offset选上

导航路线还是挺准的,至少都在路上走了……

deb包可以在这里下载。我没遇到过有人说的包不兼容的情况,我都是终端下dpkg -i 直接装的,所以如果有“不兼容”的情况我也没办法。

娱乐活动研究中心2011年首次活动:凳子同学生日

(为了吸引更多同学来北京向组织靠拢,决定中心每次活动都记录下来,留作诱饵)

虽然距离2010年最后一次活动还很近,但是我们还是迫不及待的开始了2011年活动,凳子同学的生日不等人啊。

首先对活动基本信息做简单介绍:

人员:中心全体成员
地点:畅春园食街(吾乐会活动室)
时间:2011-1-8 12:00PM ~ 21:30PM
活动:聚餐,台球,唱歌,再聚餐

其实这次活动是预谋已久的,并得到了凳子同学和灵犀同学的大力支持,或提前串休或请假不去加班(顺便谴责下某hw公司,加班还要请假……),这里表示感谢!本次活动跟之前的有些不同,因为这个地方能够提供多种娱乐方式,比如桌游、台球、唱歌。

第一项活动,吃蛋糕。这是风同学盼望已久的,自从蛋糕拿出来之后风同学的眼睛就没离开过。由于蛋糕是凳子同学自己买的,所以写上了“祝我生日快乐”

“祝我生日快乐”的蛋糕

第二项活动,台球。蛋糕、披萨等午饭下肚后,需要进行些身体运动了。之前中心的活动台球很少,所以大家基本都靠蒙(除了王同学和灵犀同学,男女No. 1啊),也由此发生了很多很欢乐的事。比如金鱼同学神奇的“飞球”,典型的“让台球飞一会儿”,黑8竟然能从中袋飞出来最后落进底袋……再比如还是金鱼同学的母球一个漂亮的跳球,飞过目标直接进袋……再再比如我的使用各种方法让母球进袋……总之,台球对我们来说,是一项很欢乐的活动。

王同学的台球现场教学(王同学直接从公司的会议出来参加活动,所以还是正装,精神可嘉!)

第三项活动,唱歌。唱歌作为中心成员喜闻乐见的活动形式,这次依旧给力。卢同学的经典曲目《浮夸》直接把大家带入了状态,不过这次没有出现大家所期盼的金鱼和卢同学夫妇互飙陈奕迅,飙到抢话筒乃至暴力事件的火爆场面。

第四项活动,聚餐聊天。晚饭是麻辣香锅。香锅味道还不错,但最给力的是饭后长达两个小时的聊天活动,大致回忆了我们的高中生活,探讨下今年中心扩招的问题(需要各种家属加入)。晚上9:30我们在服务员幽怨的眼神中离开了(占两个小时座位,不消费……)。

娱乐活动研究中心2011年有了一个好的开始,希望以后能够延续本次活动打下的基调,有更多更新鲜好玩欢乐的活动。也欢迎其他城市的落单的同学们向北京靠拢。

十年

好朋友的婚礼让我开始怀旧,今天晚上又翻了翻这十年间的一些照片,看到那些熟悉的笑脸,忽然发现好朋友们从未远去。

果然,好朋友是一辈子的。

Monthly Pic 2010 12

12月的工作很忙,两个errata都让我很头疼,尤其后一个,到现在还没成功PUSH。12月玩的也不错,但基本都集中在月末。12月依然没学多少,工作中很多东西都没有时间深入研究,时间利用的也不够好。年终总结一会儿再写吧。先上12月的照片。

公司的新pantry,还有两个同事 :)

娱乐活动研究中心2010年的最后一次活动,感谢大家

李雪霏同学的婚礼,婚礼头天晚上的“彩排”